30 Nov 2021 |
David Arnold (blaggacao) | it's a "recursive import", in essence. | 19:27:22 |
David Arnold (blaggacao) | (witnessing default.nix files on its way) | 19:27:40 |
David Arnold (blaggacao) | It looks like deploy-rs is not yet 100% optimized for password entry while doing ssh connections. | 19:28:15 |
Bruno | So in a hierarchy like this in my profiles:
├── graphical
│ ├── alacritty.nix
│ ├── default.nix
│ ├── firefox
│ │ ├── default.nix
│ │ └── tridactylrc
│ └── sway
│ ├── default.nix
to use all of this in a suite, I will have to do:
suites = with profiles; rec {
base = [ core users.sweenu users.root ];
desktop = base ++ [ graphical graphical.sway graphical.firefox graphical.alacritty ];
};
? I could import sway, firefox and alacritty in default.nix so that I can just do base ++ [ graphical ]; right?
| 19:34:24 |
David Arnold (blaggacao) | no graphical . | 19:42:45 |
David Arnold (blaggacao) | graphical is no "leave" and hence, not raked 😄 | 19:43:08 |
David Arnold (blaggacao) | oh, no, graphical is a leave so it's leaves are not raked. | 19:46:41 |
Bruno | mmh, gotcha 👌 | 20:10:17 |
David Arnold (blaggacao) | In reply to @blaggacao:matrix.org Moving the stuff that loads the nix profile from ~/.zshrc to ~/.zshenv also makes them available on a non-interactive shell. So that fails the HM activation script since that also wants to control ~/.zshenv - this is really a nasty boostrapping issue, since it will never be ergonomic. | 21:35:12 |
David Arnold (blaggacao) | only leftover place would be to place the nix profile activation hooks into /etc/zshenv | 21:36:00 |
David Arnold (blaggacao) | I'm struck by https://github.com/nix-community/home-manager/pull/2461 | 22:03:19 |
David Arnold (blaggacao) | maybe I can rally some support behind that PR from the DevOS side? | 22:03:47 |
@gtrunsec:matrix.org | I have no idea why I can not pass the vm-test-run of DevOS in qemu-guest host | 22:36:49 |
@gtrunsec:matrix.org |  Download image.png | 22:36:54 |
1 Dec 2021 |
@gtrunsec:matrix.org | In reply to @gtrunsec:matrix.org I have no idea why I can not pass the vm-test-run of DevOS in qemu-guest host Just a notice: using release-21.05 for your test-host when you are in qemu-guest | 02:05:18 |
David Arnold (blaggacao) | devos on main [✘!+⇡] via ❄️ impure took 5s
❯ deploy --debug-logs .#ws.blaggacao@127.0.0.1:22 -s
🚀 ❓ [deploy] [DEBUG] Checking for flake support
🚀 ℹ️ [deploy] [INFO] Evaluating flake in .
warning: Git tree '/home/blaggacao/src/github.com/blaggacao/devos' is dirty
🚀 ℹ️ [deploy] [INFO] The following profiles are going to be deployed:
[ws.blaggacao]
user = "blaggacao"
path = "/nix/store/q65li8mshd5w1iffhsr7p9jk1jnfgbjn-activatable-home-manager-generation"
uri = "ssh://blaggacao@127.0.0.1:22"
ssh_opts = []
🚀 ❓ [deploy] [DEBUG] Entering push_profil function ...
🚀 ❓ [deploy] [DEBUG] Built command: ShowDerivationCommand -> Command { std: "nix" "show-derivation" "/nix/store/q65li8mshd5w1iffhsr7p9jk1jnfgbjn-activatable-home-manager-generation", kill_on_drop: false }
🚀 ℹ️ [deploy] [INFO] Building profile `blaggacao` for node `ws`
🚀 ❓ [deploy] [DEBUG] Built command: BuildCommand -> Command { std: "nix" "build" "/nix/store/za0jsiqsrhx0x1154q08qq2bs90vs7jn-activatable-home-manager-generation.drv" "--no-link", kill_on_drop: false }
🚀 ℹ️ [deploy] [INFO] Copying profile `blaggacao` to node `ws`
🚀 ❓ [deploy] [DEBUG] Built command: CopyCommand -> Command { std: "nix" "copy" "--no-check-sigs" "--to" "ssh://blaggacao@127.0.0.1" "/nix/store/q65li8mshd5w1iffhsr7p9jk1jnfgbjn-activatable-home-manager-generation", kill_on_drop: false }
🚀 ❓ [deploy] [DEBUG] Entering deploy_profile function ...
🚀 ℹ️ [deploy] [INFO] Activating profile `blaggacao` for node `ws`
🚀 ❓ [deploy] [DEBUG] Built command: ActivateCommand -> /nix/store/q65li8mshd5w1iffhsr7p9jk1jnfgbjn-activatable-home-manager-generation/activate-rs --debug-logs activate '/nix/store/q65li8mshd5w1iffhsr7p9jk1jnfgbjn-activatable-home-manager-generation' '/nix/var/nix/profiles/per-user/blaggacao/blaggacao' --temp-path '/tmp' --confirm-timeout 30 --magic-rollback --auto-rollback
🚀 ❓ [deploy] [DEBUG] Built command: SshCommand -> Command { std: "ssh" "ssh://blaggacao@127.0.0.1:22", kill_on_drop: false }
🚀 ℹ️ [deploy] [INFO] Creating activation waiter
🚀 ❓ [deploy] [DEBUG] Built command: WaitCommand -> /nix/store/q65li8mshd5w1iffhsr7p9jk1jnfgbjn-activatable-home-manager-generation/activate-rs --debug-logs wait '/nix/store/q65li8mshd5w1iffhsr7p9jk1jnfgbjn-activatable-home-manager-generation' --temp-path '/tmp'
🚀 ❓ [deploy] [DEBUG] Built command: SshCommand -> Command { std: "ssh" "ssh://blaggacao@127.0.0.1:22", kill_on_drop: false }
⭐ ℹ️ [activate] [INFO] Activating profile
⭐ ❓ [activate] [DEBUG] Running activation script
Starting home manager activation
Activating checkFilesChanged
Activating checkLinkTargets
Activating writeBoundary
Activating installPackages
Activating linkGeneration
Cleaning up orphan links from /home/blaggacao
Creating profile generation 20
nix profile remove --profile /nix/var/nix/profiles/per-user/blaggacao/home-manager /nix/store/b6s9h45qkll67xkgm8ghchy7agswzpnx-home-manager-generation
Creating home file links in /home/blaggacao
Activating onFilesChange
Activating reloadSystemd
⭐ ℹ️ [activate] [INFO] Activation succeeded!
⭐ ℹ️ [activate] [INFO] Magic rollback is enabled, setting up confirmation hook...
⭐ ❓ [activate] [DEBUG] Ensuring parent directory exists for canary file
⭐ ❓ [activate] [DEBUG] Creating canary file
⭐ ❓ [activate] [DEBUG] Creating notify watcher
⭐ ℹ️ [activate] [INFO] Waiting for confirmation event...
🚀 ❓ [deploy] [DEBUG] Wait command ended
🚀 ℹ️ [deploy] [INFO] Success activating, attempting to confirm activation
🚀 ❓ [deploy] [DEBUG] Entering confirm_profile function ...
🚀 ❓ [deploy] [DEBUG] Built command: SshCommand -> Command { std: "ssh" "ssh://blaggacao@127.0.0.1:22", kill_on_drop: false }
🚀 ❓ [deploy] [DEBUG] Built command: ConfirmCommand -> rm /tmp/deploy-rs-canary-q65li8mshd5w1iffhsr7p9jk1jnfgbjn
⭐ ❓ [activate] [DEBUG] Got worthy removal event, sending on channel
🚀 ℹ️ [deploy] [INFO] Deployment confirmed.
| 02:52:30 |
David Arnold (blaggacao) | yeah! | 02:52:37 |
David Arnold (blaggacao) | https://github.com/blaggacao/devos | 02:53:49 |
David Arnold (blaggacao) | since password inputs do not work across the deploy-rs threading model, initially we need to give ourselves access to ourselves:
cat ~/.ssh/id_rsa >> ~/.ssh/authorized_keys | 02:55:21 |
David Arnold (blaggacao) | There is a new CI in the making @ https://github.com/input-output-hk/cicero... I'm going to check it out in practice in the following days, but it's definitely a candidate to bring CI home into the local environment / control (and away from Github Actions). | 03:21:17 |
David Arnold (blaggacao) | ... and hydra 🙏 | 03:21:26 |
David Arnold (blaggacao) | treefmt work nicely in the pre-commit hook: https://github.com/blaggacao/devos/blob/af8493ffa0eb61671ce9fe383dec084b1436e995/devshell/devos/hooks/pre-commit.sh#L14 | 04:08:10 |
David Arnold (blaggacao) | ^^ I think the docstring is wrong, though. treefmt is far more radical than that 😄 | 04:09:05 |
@gtrunsec:matrix.org |  Download image.png | 04:19:04 |
@gtrunsec:matrix.org | In reply to @blaggacao:matrix.org There is a new CI in the making @ https://github.com/input-output-hk/cicero... I'm going to check it out in practice in the following days, but it's definitely a candidate to bring CI home into the local environment / control (and away from Github Actions). I'm already on cicero. | 04:19:50 |
@gytis-ivaskevicius:matrix.org | In reply to @blaggacao:matrix.org Gytis Ivaskevicius: would you accept a dependency on nix-community/nixpkgs.lib in turn for a little bit f convenience and maintainability in fup? Not sure how that would help? If we were to do some maybe we might as drop module system on it 🤔 | 09:45:17 |
Bruno | I'm almost completely done, I just have one line provoking a infinite recursion error: services.resolved.enable = {config.networking.networkmanager.dns == "systemd-resolved"; Any idea what could cause that? | 10:24:51 |
Bruno | * I'm almost completely done, I just have one line provoking a infinite recursion error: services.resolved.enable = config.networking.networkmanager.dns == "systemd-resolved"; Any idea what could cause that? | 10:25:08 |
@gytis-ivaskevicius:matrix.org | chekc network manager module, it probably has some references to resolved | 10:34:14 |
Bruno | Yeah I checked that, there's none 🤔 | 10:36:50 |