Hi ! First, drop sudo, guix can be run by unprivileged users once installed, and will only affect them. Great for shared environments !
anguriamelone--- via <[email protected]> writes: > Hi to everyone. > > I am a novice in GNU Guix, so far I used Trisquel GN-Linux 9.0.2 (i686), but > at the end of April the support for the i686 version has been discontinued. > Nevertheless I want to continue using free (as in freedom) software and, > getting set to install the iso image, if I don't ask for too muchas an > abosulte beginner, I would like to know what are the basic command lines > corresponding to those of Trisquel GNU-Linux below: > > sudo apt update > guix pull > sudo apt upgrade > For the system: sudo guix system reconfigure /etc/config.scm For your user packages guix package --upgrade > sudo apt install (package name) > guix install <package-name> > > sudo apt remove --purge (package name) > guix remove <package-name> Subtle differences with '--purge'. The package will be removed from your profile, but still be available in the store, and local conf (typically in ~/.conf/...) will still be there, and need to be removed manually. But it would have been put manually by you if it exists there, so guix is consistent. > sudo apt search (package name) > Don't use sudo for apt search. guix search <keywords>... > sudo apt autoremove > > sudo apt purge > > sudo apt autoclean > > sudo apt clean > Guix is very different from apt, there is no direct mapping for those last four. To reclaim disk space, run guix gc more or less aggressively. Here is the doc: https://guix.gnu.org/manual/en/guix.html#Invoking-guix-gc Here are some notes on very aggressively reclaiming disk space: See how much space the store uses : du -h -d0 /gnu/store : 26G /gnu/store See all the roots that you have : guix gc --list-roots | sort : ... a lot of generations from my different profiles : guix gc --list-roots | wc -l : 107 Delete previous generations, you may be more or less aggresive with the options. Giving no options deletes all generations but the 0th one and the current one. Do this for every profile. List all existing profiles : guix gc --list-roots | sed 's/-[0-9]*-link$//' | sort | uniq Delete the maximum amount of generations from all the profiles : for profile in $(guix gc --list-roots | sed 's/-[0-9]*-link$//' | sort | uniq) : do : echo deleting generations in "$profile"; : guix package --profile="$profile" --delete-generations; : done WARNING: you may want to keep all the genrations from =current-guix= (see [[sec:default-profiles]]), because they don't take up much space, and they will allow you to rebuild the packages from a previously installed and known-good version of guix, instead of having to bisect your way to a working version with =guix time-machine= as we did in [[sec:bisect]]. You can also delete the profiles you are no longer interested in. Delete with =rm= the =guix_profile= (or whatever you called it) link and the =guix_profile-NN-link= that guix added. These will no longer appear in the roots, and therefore the packages they were referencing will be deleteable by the garbage collector. Then, run =guix pull=, and update the packages in all your profiles: : for profile in $(guix gc --list-roots | sed 's/-[0-9]*-link$//' | sort | uniq); do echo upgrading packages in "$profile"; guix package --profile="$profile" --upgrade; done This will allow all common packages between your profiles to be de-duplicated in the store, because they will be at the same exact version, whereas if one was more recent than the other, both versions would be kept in the store, using up disk space. FIXME(ref the section that explain the store and the deduplication). Once all of this is done, the garbage collector can now be launched: : guix gc : du -h -d0 /gnu/store : 6,6G /gnu/store There are also some directories in .cache that you can remove manually. Hope that helps. Cheers, Edouard. > Thanks for the attention and kind regards. > > Piriponzolo > >
