Software 42717 Published by

AM 6.6.3.1 has been released. This update includes small improvements to the security of apps and AM, such as the addition of a feature to secure scripts that "delete" AM and the apps it installs. This will add a command to the second line of such scripts to prohibit them from being used by non-privileged users in APP-MANAGER.



"AM" 6.6.3.1

Some minor improvements to the security of apps and AM itself

Added a function to secure scripts "remove" of AM and the apps installed with it, this will add a command to the second line of such scripts to prevent their use by non-privileged users, in  APP-MANAGER. This is what you, "AM" users, will find in your remove scripts at first use of this release:

if [ -z "$SUDO_COMMAND" ]; then echo "Permission denied"; exit 1; fi

a remove script will look like this:

#!/bin/sh
if [ -z "$SUDO_COMMAND" ]; then echo "Permission denied"; exit 1; fi
rm -R -f /usr/share/applications/AM-anydesk.desktop /opt/anydesk /usr/local/bin/anydesk

The "-i" option will also automatically add this to new installed apps, using this function:

if [ $AMCLI == am ] 2>/dev/null; then
	$SUDOCOMMAND sed -i '1 a if [ -z "$SUDO_COMMAND" ]; then echo "Permission denied"; exit 1; fi' $APPSPATH/$(cd $APPSPATH && ls -td * | head -1)/remove 2> /dev/null
	$SUDOCOMMAND chown -R $currentuser $APPSPATH/$(cd $APPSPATH && ls -td * | head -1) 2> /dev/null
fi

and as you can see I also repositioned the already existing "chown" reference so that it doesn't affect "AppMan" anymore.

For more detail about commits, see  #521

PS: I normally reserve this space for the release notes, but since over 200 commits have been made from version  6.6.2 to this strange 6.6.3.1, it is my duty to give you some explanation on what happened and why this version is not called 6.6.3.


What happened to "AM" 6.6.3?The choice to assign four digits to the number of this release arose from the need to distinguish it from release 6.6.3 which was instead cancelled, following numerous problems that arose with permissions on installed applications. These choices I made were strongly influenced by the need of some members of the development team to associate "AM" with any package manager, which could therefore be managed by multiple system administrators. But that's not the way I wanted to conceive it:since always, the first user to install "AM" is the owner of "AM" (i.e. "$currentuser"); using "AM" with accounts other than the one that have installed "AM" will always result in command reading/writing errors, due to permissions. Starting from this issue , this is what version 6.6.3 was supposed to solve, but instead of bringing improvements, it only caused problems for many users (see #512), and especially for users of Fedora 40 (released at the same time), who, not knowing about the choice of the Fedora team of the transition from "wget" to "wget2" (which approaches the github API in a completely different way) have associated the impossibility of downloading modules and applications to "AM" 6.6.3 (see #496), thus magnifying both my faults and those of that release "cursed".The only positive note in this misadventure is @Samueru-sama 's incredible work in correcting all the installation scripts to adapt them to the new installation mode available from version 6.6.2, which is what I think is the best of all.What happened certainly went unnoticed in the eyes of AppMan users, who will have instead noticed a strange transition from version 6.6.2 to 6.6.3 and again to version 6.6.2. About "AM", the downgrade of APP-MANAGER and all the modules necessary to make "AM" work was an obvious choice (see #515).If you still have problems due to "AM" 6.6.3, I recommend removing "AM":
sudo /opt/am/remove
and reinstall it. Do the same with all installed apps:
sudo /opt/$APP/remove
or
am -R $APP
Conclusions

From the beginning I dreamed of transforming "AM" into a community project, and since I have had collaborators, all very good, the project has improved and grown, above all thanks to their advice.

Nonetheless, community choices are not always the right ones, and after this sad experience, as the creator and owner of this repository... I take note of it.

From now on the choices I make will be mine, without external influences on the guidelines:

  • I will accept all suggestions and collaborations necessary to improve existing features
  • I will accept to develop new extensions aimed at satisfying more requests
  • I will accept to implement more features with the collaboration of more users
  • any attempt to distort the core of this project will be denied
  • the involvement of other system files other than those already involved in the "AM" installation script will be denied

I've always had an idea about what "AM" should be, I won't change my mind so easily in the future.

You all have learned to love "AM" for what it is. I will not change your habits.

I use GNU/Linux since 2009, I will not repeat the same mistakes that led me to hate GNOME, Ubuntu, and many other projects that I once considered good. Because of them, I know what it means to have disappointments, so I will always be ready to listen to the requests of those who choose "AM", "AppMan" and other of my solutions available in my repositories over other similar solutions.

Once again, I apologize for the inconvenience caused.

Thanks again to everyone who support and appreciates the work I'm doing here.

See you next. Ivan


Full Changelog 6.6.2...6.6.3.1

Release "AM" 6.6.3.1 · ivan-hc/AM