ChanServ changed the topic of #home-manager to: Support and discussion around the Home Manager project (https://github.com/nix-community/home-manager) | Logs: https://logs.nix.samueldr.com/home-manager
joesventek has quit [Quit: Quit]
joesventek has joined #home-manager
andi- has quit [Ping timeout: 272 seconds]
andi- has joined #home-manager
stephank has quit [Quit: stephank]
stephank has joined #home-manager
kalbasit has quit [Ping timeout: 256 seconds]
johnw has quit [Quit: ZNC - http://znc.in]
cole-h has quit [Ping timeout: 240 seconds]
johnw has joined #home-manager
teto has joined #home-manager
thibm has joined #home-manager
<DanielEbbert[m]> How do you deal with secrets in configuration files? Given that you would like to have those configuration files available somewhere public in version control.
<patagonicus> I don't have any in my home-manager configuration, but for a few NixOS systems where the system config is in git, I have them in a directory called secrets that's in .gitignore. That directory is then copied to /etc/secrets/ and the configs just reference the paths there, without it being added to the nix store.
Reventlov has joined #home-manager
<nf> DanielEbbert[m]: sops-nix
<DanielEbbert[m]> <nf "Daniel Ebbert: sops-nix"> That seems pretty cool. I'll give it a try.
<piegames> DanielEbbert[m]: You need to distinguish between "secrets" that you don't want to share publicly vs "secrets" that you don't want to have in your Nix store.
<DanielEbbert[m]> Okay, that might be a newbie question. I get why I wouldn't want some `secrets` publicly available. But why would I not want something in my local Nix store?
<Reventlov> because the nix store is world-readable: any user can read it
<Reventlov> so, if some service get compromised, it can access the secret from all of the store. If some user want to take look, it can
<DanielEbbert[m]> Oh, I did not know that yet. Good to know. Thanks for the explanation!
<DanielEbbert[m]> I'm the only user on my system so I don't have to worry about other users but the point about compromised services still applies.
<Reventlov> You can read more in there: https://github.com/NixOS/nixpkgs/issues/24288
<{^_^}> nixpkgs#24288 (by basvandijk, 3 years ago, open): Provide options for storing secrets outside the Nix store
<Reventlov> DanielEbbert[m]: same, and as my drive is encrypted, I do not care about this. But it's something to have in mind.
<DanielEbbert[m]> <Reventlov "Daniel Ebbert: same, and as my d"> Mine is encrypted as well.
<patagonicus> Reventlov: drive encryption is sort-of orthogonal to world readable files. It protects from someone reading the drive directly, without going through your OS, but at that point they can also just ignore any permissions on the file system. But if they get non-root access to your OS, drive encryption doesn't help, but permissions can.
<Reventlov> patagonicus: it does matter because I can store secrets in file instead of having to type them each tiem
<Reventlov> (files, including the store, which I would not do if my drive was not encrypted)
<patagonicus> Just saying that it helps with different threat models. I also encrypt everything (minus stuff needed for booting, obviously).
<Reventlov> of course. On my desktop, I assume everything pretty much runs as my user, and as soon as something is compromised for me, it's game over anyway, that's why I can still sleep at night for this :p
<piegames> You don't need some compromised service for leaking out of the Nix store. Just think of all the remote builders and cache substitutions.
<piegames> It is easy to lose control over what is built where, and accidentally build a derivation containing secrets on a remote machine.
<Reventlov> well remote building is somehow some advanced thing that not everyone uses
<piegames> Reventlov: Sure. Until they want to try it out, but forget about all those secrets.
ohhaimark[m] has joined #home-manager
<ohhaimark[m]> I'm trying to use _module.args to pass my flake inputs into home-manager modules, to no prevail. Is anyone privy to this dark magic?
<ohhaimark[m]> This is one of my attempts. However, this leads to infinite recursion when trying to resolve `input` as an argument to a home-manager module.
<piegames> I've set `nixpkgs.config.allowUnfree = true;` in my hm-config, yet rebuilding fails due to a nonfree package
<piegames> `nixpkgs.config.allowUnfreePredicate`, as suggested by the error message, does not work either. `NIXPKGS_ALLOW_UNFREE=1` however does
<patagonicus> piegames: I think for home-manager you want { allowUnfree = true; } in ~/.config/nixpkgs/config.nix, not the nixpkgs syntax: https://nixos.wiki/wiki/FAQ/How_can_I_install_a_proprietary_or_unfree_package%3F
<piegames> patagonicus: Sorry, I don't see why.
<piegames> (I'm really reluctant to add a `~/.config/nixpkgs/config.nix` file.)
<nicolas[m]> ohhaimark See my answer in the github issue
__monty__ has joined #home-manager
devalot has left #home-manager ["ERC (IRC client for Emacs 27.1)"]
monotux has quit [Quit: Ping timeout (120 seconds)]
monotux has joined #home-manager
cole-h has joined #home-manager
sleepyMonad has joined #home-manager
kalbasit has joined #home-manager
thibm has quit [Ping timeout: 256 seconds]
thibm has joined #home-manager
aurelius has joined #home-manager
ardumont has quit [Ping timeout: 260 seconds]
aurelius has left #home-manager [#home-manager]
aurelius97x02 has joined #home-manager
aurelius97x02 has quit [Remote host closed the connection]
kalbasit_ has joined #home-manager
kalbasit has quit [Ping timeout: 256 seconds]
<siraben> Is there a way to allow certain unfree packages in home-manager/
<piegames> siraben: When it works, as I posted earlier today
<siraben> piegames: how would I do it within home.nix?
<piegames> siraben: `nixpkgs.config.allowUnfree = true;` or `nixpkgs.config.allowUnfreePredicate = …;`
<siraben> Hm, `nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ ... ];` doesn't seem to work
<siraben> Ah, it's because I was pinning nixpkgs
<piegames> siraben: If `nixpkgs.config.allowUnfree = true;` doesn't either, then we at least have the same problem :)
<piegames> Tell me more pls
<siraben> piegames: could you post your config file?
<piegames> Grep for "unfree" and "minecraft"
cole-h has quit [Ping timeout: 240 seconds]
<siraben> piegames: ah so we both use niv to pin
<siraben> Try this
<siraben> pkgsUnstable = import sources.pkgsUnstable {
<siraben> };
<siraben> config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "discord" "slack" "spotify" ];
<siraben> Oops, messed up formatting a bit
<siraben> pkgsUnstable = import sources.pkgsUnstable {
<siraben> };
<siraben> config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "discord" "slack" "spotify" ];
<piegames> siraben: I don't pin all my nixpkgs, I have 20.09 as a channel. I pin unstable and nightly and use them to overwrite specific packages using an overlay.
<siraben> piegames: I see. Did that change work?
* piegames still trying
<siraben> Ok, it worked for me.
<siraben> Oops, wrong commit
<piegames> siraben: Yep, does for me as well, thx.
<siraben> No problem. I guess I didn't know that it the unfree configuration should be done where pkgs is imported.
<piegames> Though I'm not really happy about the solution because this means that I have to manage my nixpkgs *per machine* if I want to allow unfree packages per machine.
<siraben> you should be able to specify this in another Nix expression that can be shared across machines.
thibm has quit [Quit: WeeChat 2.6]
<evanjs> Am I doing something wrong or should services.lorri.enable "Just work" on e.g. Arch with nix+home-manager?
<evanjs> currently getting e.g. " ... error: file \'nixpkgs\' was not found in the Nix search path (add it using $NIX_PATH or -I) ..."
<evanjs> NIX_PATH and everything seems fine. I rebooted after installing lorri, blablabla
<evanjs> And `lorri daemon` seems to work okay outside of systemd
<evanjs> oooo, maybe #1265
<{^_^}> https://github.com/nix-community/home-manager/issues/1265 (by NobbZ, 27 weeks ago, open): `services.lorri.enable` creates a service that doesn't see my channels
teto has quit [Ping timeout: 264 seconds]
teto has joined #home-manager
justanotheruser has quit [Ping timeout: 272 seconds]
justanotheruser has joined #home-manager
nf has quit [Quit: Fairfarren.]
nf has joined #home-manager
nf has quit [Quit: Fairfarren.]
nf has joined #home-manager
<pumpy> why does neovim complain in :checkhealth that user config file at .config/nvim/init.vim is missing and how i can fix it pls?
kalbasit_ has quit [Ping timeout: 240 seconds]
<pumpy> touch ~/.config/nvim/init.vim fixed it but shouldn't home manager's neovim module do that?
<nicolas[m]> No, home-manager uses the neovimWrapper from nixpkgs and nixpkgs has no notion of ~/.config/nvim/init.vim
<nicolas[m]> The user configuration file is passed as an argument to the process
<pumpy> nicolas[m] so should neovim maybe not complain about that file not being there if it's already been passed another config file?
<nicolas[m]> that's up to the maintainers I guess
mtr has quit [Quit: WeeChat 2.9]