Feature testing flakes / nix-command is more robust over configuration
sniffing. Ultimately, the deciding factor should be if flakes work --
not if the config looks like they will / won't work.
This alternative test both asserts that the `nix` command is enabled,
and that flakes are enabled, without depending on whether or not
flakes are emitted as an experimental feature.
This is both repairing support for Determinate Nix 3, and prepares for
a potential future where Nix itself considers Flakes stable.
Closes#6702
The current way to define a news entry in Home-Manager is error prone
(since you need to type the date manually) and also it is common cause
of conflicts after merges because all entries are defined in the same
file.
This commit fixes this: we can now create individual news entries for
each new entry. A script `create-news-entry.sh` also helps to create it
in the correct format (with the correct filenames and structure).
* nixos: remove with lib
* nix-darwin: remove with lib
* home-manager: remove with lib
* modules/accounts: remove with lib
* modules/config: remove with lib
* modules/i18n: remove with lib
* modules/misc: remove with lib
* modules: remove with lib
* modules/targets: remove with lib
* tests/modules/firefox: remove with lib
* tests/modules/services: remove with lib
Currently translated at 100.0% (37 of 37 strings)
Add translation using Weblate (Bulgarian)
Co-authored-by: Kiril Pan <eccyboo@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/bg/
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
Currently translated at 100.0% (37 of 37 strings)
Add translation using Weblate (Tamil)
Co-authored-by: தமிழ்நேரம் <anishprabu.t@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ta/
Translation: Home Manager/Home Manager CLI
This commit separates profile management (setting profile and creating
GC root) from file management (removing and adding managed files
within the user's home directory).
This is a step towards deprecating profile management within the
activation script, instead relying on the caller of the activation
script managing the profile.
Currently translated at 100.0% (37 of 37 strings)
Co-authored-by: David Chocholatý <chocholaty.david0@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/cs/
Translation: Home Manager/Home Manager CLI
The home manager script fails when $USER contains special characters.
For example, my work PC is managed by company's LDAP and username is <COMPANY>\<user>). When running home-manager switch I get the following error:
```
error: flake 'path:/home/<COMPANY>/<user>/.config/home-manager' does not provide attribute 'packages.x86_64-linux.homeConfigurations."<COMPANY>\<user>".activationPackage', 'legacyPackages.x86_64-linux.homeConfigurations."<COMPANY>\<user>".activationPackage' or 'homeConfigurations."<COMPANY>\<user>".activationPackage'
Did you mean <COMPANY><user>?
```
There are two types of strings that need escaping:
strings in Nix expressions (e.g. home.nix generated by home-manager init)
they need backslashes before special chars
flake URI (passed to nix build)
they need URI's percent encoding, luckily jq supports that
Currently translated at 100.0% (37 of 37 strings)
Co-authored-by: Lorenzo Bevilacqua <lorenzobevilacqua02@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/it/
Translation: Home Manager/Home Manager CLI
Currently translated at 8.1% (3 of 37 strings)
Add translation using Weblate (Hindi)
Co-authored-by: Jay Thomas <jay@gfax.ch>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/hi/
Translation: Home Manager/Home Manager CLI
Since 89670e27e1, FQDN lookup errors
from `hostname -f` may cause an early exit of the whole program.
This commit fixes the problem by absorbing the FQDN query inside the
`if` statement.
`hostname -f` could fail depending on the resolver. Discard any stderr
and test for the exit status before using the value for flake attribute
lookup.
I was unable to repro the exact bad exit status in #5665.
With
- nscd disabled,
- nsswitch.conf pointing to 'files',
- hostname entry removed from /etc/hosts
`hostname -f` from inetutils-2.5 fell back to showing just the nodename
from `uname(2)`. Injecting an empty string into the
`(struct utsname).nodename` field of `uname(2)` using strace still
exited with empty output and 0 exit-status.
Fixes#5665
Currently translated at 5.4% (2 of 37 strings)
Add translation using Weblate (Hungarian)
Co-authored-by: Balint Barna Kovari <balint+weblate@kovari.cc>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/hu/
Translation: Home Manager/Home Manager CLI
MacOS doesn't support the long-style `--fqdn` option to `hostname` that
was added by 1b589257f7.
Switch to short style `-f` that should be supported on every platform.
Since nixpkgs commit 993baa587c4b82e791686f6ce711bcd4ee8ef933,
`networking.hostName` is not allowed to be a FQDN.
Add `hostname --fqdn` to the default flake attribute names that are
searched.
If
netorking.hostname = "hostname";
networking.domain = "example.com";
is set in the system NixOS configuration, this allows defining
homeConfigurations."username@hostname.example.com" = ...
and still use
home-manager switch --flake .
instead of having to type out
home-manager switch --flake .#$(whoami)@$(hostname --fqdn)
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