This commit deprecates profile management from the activation script.
The profile management is instead the responsibility of the driving
software, for example, the `home-manager` tool in the case of
standalone installs.
The legacy behavior is still available for backwards compatibility but
may be removed in the future.
The new behavior resolves (or moves us closer to resolving) a number
of long standing open issues:
- `home-manager switch --rollback`, which performs a rollback to the
previous Home Manager generation before activating. While it was
previously possible to accomplish this by activating an old
generation, it did always create a new profile generation.
This option has been implemented as part of this commit.
- `home-manager switch --test`, which activates the configuration but
does not create a new profile generation.
This option has _not_ been implemented here since it relies on the
current configuration being activated on login, which we do not
currently do.
- When using the "Home Manager as a NixOS module" installation method
we previously created an odd `home-manager` per-user "shadow
profile" for the user. This is no longer necessary.
This has been implemented as part of this commit.
Fixes#3450
Currently translated at 100.0% (37 of 37 strings)
Co-authored-by: TANIGUCHI Kohei <a.d.xvii.kal.mai@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ja/
Translation: Home Manager/Home Manager CLI
Currently translated at 94.5% (35 of 37 strings)
Co-authored-by: Narazaki Shuji <shujinarazaki@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ja/
Translation: Home Manager/Home Manager CLI
Currently translated at 100.0% (37 of 37 strings)
Co-authored-by: Michael Thomas <michaelhthomas@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/fr/
Translation: Home Manager/Home Manager CLI
Specifically, avoid duplicate remove duplicate slashes in the
`news-read-ids` file path.
Also quote the use of `newsReadIdsFile` to reduce problems with
potential spaces.
Currently translated at 13.5% (5 of 37 strings)
Add translation using Weblate (Icelandic)
Co-authored-by: Bjarki Gunnarsson <bjarkihg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/is/
Translation: Home Manager/Home Manager CLI
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
Instead of an error
line 958: $1: unbound variable
we now emit an error such as
missing argument for --cores
Note, this is not perfect. In many cases you still get sub-optimal
error messages.
Currently translated at 100.0% (36 of 36 strings)
Co-authored-by: Petr Portnov | PROgrm_JARvis <mrJARVIScraft@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ru/
Translation: Home Manager/Home Manager CLI
Currently translated at 5.5% (1 of 18 strings)
Translate using Weblate (Vietnamese)
Currently translated at 33.3% (12 of 36 strings)
Translate using Weblate (Vietnamese)
Currently translated at 11.1% (4 of 36 strings)
Co-authored-by: Nguyen Khanh <nguynkhan479@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/vi/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/vi/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
Currently translated at 8.3% (3 of 36 strings)
Co-authored-by: RepentantKnight121 <repentantknight121@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/vi/
Translation: Home Manager/Home Manager CLI
Currently translated at 100.0% (36 of 36 strings)
Co-authored-by: Alexis Rossfelder <rossfelderalexis@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/fr/
Translation: Home Manager/Home Manager CLI
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
When using the `init` sub-command, it is now possible to set the Home
Manager and Nixpkgs input URLs. Note, for now these options are
considered experimental.
This adds a Boolean option `uninstall`. When enabled this option will
reset side-effecting configurations to their "empty" state. The intent
is that this will cause the activation script to remove all managed
files and packages.
Doing it this way should hopefully be more robust than the previous
solution. It also allows a somewhat more convenient uninstall process
when using Flakes; put `uninstall = true` in your existing
configuration and then do a switch.
Also add simple uninstall test in CI test job.