Hi, I am sorry, I mixed up two questions. I was already one thought ahead.
1. Question about activating all profiles at login time 2. Question updating all profiles at once. 1. to avtivate all profiles at once You wrote that it would be better to have only one package in one profil. So I would have to use each package in a separate profil Musescore version 4.0.2 and Musescore version 3.6.2 are in different profiles, so I guess it shouldn’t be a problem What do you say? 2. To update all profiles at once this is a different question, which I have to deal as well. Is there a way to do it? Is there a way to exclude the profile "Musik" because this profile I have to upgrade with: guix package -p /home/gfp/Projekte/Musik/guix-profil -m /home/gfp/Projekte/Musik/musik.scm or put Musescore 3.6.2 in a separate profil,but still the question remains, that this profil should then not be included in the update process.
Kind regards Gottfried Am 07.04.23 um 15:02 schrieb Gottfried:
Hi, thanks a lot for sharing. This helps a lot. Without help of you and other hackers I would be lost. ............................................................ Those profiles I have got at the moment gfp@Tuxedo ~$ guix package --list-profiles /home/gfp/Projekte/Calibre/guix-profil with one package Calibre /home/gfp/Projekte/EmacsManifest/guix-profil with one package Emacs /home/gfp/Projekte/GNUCash/guix-profil, with 2 packages: Gnucash homebank /home/gfp/Projekte/Lilypond/guix-profil with many packages: lilypond, mercurial, timidity, frescobaldi, audio-to-midi, libsmf, ctrlr, muse-sequencer, fluidsynth, fluida-lv2, qsynth /home/gfp/Projekte/Musescore/guix-profil with one package Musescore 4.0.2 (current version) /home/gfp/Projekte/Musik/guix-profil with many packages: ardour, audacious, audacity, obs, vlc Musescore 3.6.2 (old version) /home/gfp/Projekte/Photoflare/guix-profil with 2 packages photoflare imagemagick (later converseen, which is now in a own profile: prefabricated by Csepp) /home/gfp/Projekte/Scribus/guix-profil with 2 packages: scribus, xournal /home/gfp/.config/guix/current /home/gfp/.guix-profile -----------------------------------------------------------Note that this maylead to unpredictable behavior if you have the same package installed into multiple profiles that are all activated simultaneously. My recommendation is that you install each package into only one profile when using this approach.Now I have several problems with your approach. 1. I have more packages in one profile 2. Musescore has got an own profile, but Musescore 3.6.2 (old version) is in the profile "Musik" together with other packages, which should be upgraded. But Musescore 3.6.2 should not be upgraded. .................................................................. What can I now do, that I can activate multiple profiles at login time?Is there a way to exclude the profile "Musik" because this profile I have to upgrade with:guix package -p /home/gfp/Projekte/Musik/guix-profil -m /home/gfp/Projekte/Musik/musik.scmor to add it in the script .................................................................... Kind regards Gottfried Am 21.03.23 um 15:42 schrieb Gary Johnson:Gottfried <gottfr...@posteo.de> writes:I have got now 3 profiles: EmacsManifest, Musescore, Musik in: home/gfp/Projekte/ Now I want them to be activated at login time. I still am not sure how to do that.To activate multiple profiles at login time, I created a shell scriptcalled `~/sys/scripts/activate-profiles.sh`, containing the following code:``` #!/bin/sh GUIX_PROFILES=/home/gjohnson/sys/guix/profiles for dir in $GUIX_PROFILES/* do name=$(basename "$dir") profile=$dir/$name if [ -f "$profile"/etc/profile ] then GUIX_PROFILE="$profile" . "$GUIX_PROFILE"/etc/profile export MANPATH="$GUIX_PROFILE/share/man${MANPATH:+:}$MANPATH"export INFOPATH="$GUIX_PROFILE/share/info${INFOPATH:+:}$INFOPATH"fi unset profile unset name done ``` Next, I added a `source` line to my `~/.bash_profile` file, which loads the `activate-profiles.sh` script when I enter a login shell. This script is also run when you log in to your graphical desktop session in Guix. ``` # Activate all of my Guix profiles source ~/sys/scripts/activate-profiles.sh ``` For you to use this approach, you should do the following: 1. Replace `GUIX_PROFILES=/home/gjohnson/sys/guix/profiles` in my `activate-profiles.sh` script with your profile directory, which seems to be this: `GUIX_PROFILES=/home/gfp/Projekte` 2. Place the `activate-profiles.sh` script somewhere in your home directory. 3. Replace `~/sys/scripts/activate-profiles.sh` in `~/.bash_profile` with the path to `activate-profiles.sh` on your system. If you use `guix home`, you can certainly add the `source` line to `~/.bash_profile` that way.2. after that, could I uninstall the package emacs in my main profile? Will my Emacs-manifest profile still be usable/is it independent, or it will suffer through uninstalling emacs in my main profile?With this code in place, whenever you log in to your machine, you will have access to all the packages in your main user profile as well as all the packages in your /home/gfp/Projekte profiles. Note that this may lead to unpredictable behavior if you have the same package installed into multiple profiles that are all activated simultaneously. My recommendation is that you install each package into only one profile when using this approach.My aim was to uninstall packages in my main profile and put them in separate profiles, so in updating my main profile with less packages it doesn’t take so much time.Yes, that is precisely the purpose of this approach. Happy hacking! Gary
OpenPGP_0x61FAF349C9FB7F94.asc
Description: OpenPGP public key
OpenPGP_signature
Description: OpenPGP digital signature