<hpfr[m]>
cole-h: interesting. so in this case, that would work because they would end up in /nix/store/home-manager-path where they would be in my path?
<hpfr[m]>
there's also a pkgs.writeShellScript, which is identical except it writes the script directly to the store path rather than in store-path/bin. does this matter?
<hpfr[m]>
also, where would I put this in my configuration? I see that it's based on writeTextFile which is based on runCommand, but I'm confused on what that returns
<hpfr[m]>
ok, I'm pretty sure it returns a derivation, but I don't know what to do with that derivation
<hpfr[m]>
ok, I searched for writeShellScript in the home-manager repo, and I found that I could use toString on the returned derivation, and I'm pretty sure I could concatenate that with my PATH. I have like twenty scripts though. I could write the nix to do this for all of them, but it doesn't seem ideal. Can I write them all to the same derivation?
Max[m]4 has quit [Ping timeout: 260 seconds]
uvnikita[m] has quit [Ping timeout: 260 seconds]
uvnikita[m] has joined #home-manager
Max[m]4 has joined #home-manager
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
cole-h has quit [Ping timeout: 264 seconds]
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
<hpfr[m]>
Ah, then I could add that to my path, cool
<hpfr[m]>
immae: would I just put this in a let statement as “scripts” or something and then make use of it wherever appropriate
<immae>
hpfr[m]: something like home.packages = let scripts = (the snippet); in [ scripts other_packages ]; yes
<hpfr[m]>
Oh, you can treat it as a full fledged package? That would be nice and simple, thanks for the help
<immae>
to be considered a proper package it just needs some directories bin / share / lib ..., like what you find in /usr in regular distribution. Then it will just use them yes
<s1341>
rycee: my pr failed the tests... but i can't figure out what the issue is...
<s1341>
can you take a look?
<rycee>
Don't have time. I'm working. Scroll through the Travis-ci log and look for red. Most likely it failed the formatting check. Try running `./format` in the project root.
<s1341>
rycee yeah i get 'not formatted'
<s1341>
rycee: ok. i figured it out...
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
s1341 has quit [Quit: Connection closed for inactivity]
cole-h has joined #home-manager
cjpbirkbeck has joined #home-manager
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
hmpffff_ has quit [Quit: nchrrrr…]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
malSet has joined #home-manager
malSet has quit [Read error: Connection reset by peer]
<cjpbirkbeck>
hello, anybody here? i've used nixos for while now, and i'm thinking of moving (some of my) configs to home-manager.
<__monty__>
Great : )
<cjpbirkbeck>
currently, i have neovim with the plugins installed at the system level, while source a regular vimL script almost all settings. would i be able to keep the same setting with home-manager, or would the user-level packages override the package at system level?
hmpffff has joined #home-manager
hmpffff has quit [Read error: Connection reset by peer]
hmpffff has joined #home-manager
<hpfr[m]>
rycee: your `substituteInPlace` concerns me. I also use rofi-emoji, why would you have to make a separate path variable for it? all my scripts depend on installed packages, since that's what personal bash scripts are for. do I need to substitute a path like that for all my scripts? why can't your rofi-emoji script see the rofi, xclip, and xdotool packages?
hmpffff has quit [Ping timeout: 246 seconds]
hmpffff has joined #home-manager
hmpffff__ has joined #home-manager
hmpffff has quit [Ping timeout: 264 seconds]
<cole-h>
hpfr[m]: It's probably required because rofi-emoji hardcodes paths. It's really weird; I looked into packaging it previously, but gave up
jfroche has quit [Remote host closed the connection]
<cjpbirkbeck>
okay, so it is possible configure home-manager from configuration.nix (or anything it sources)? and would it be better just to configure home-manager outside of configuration.nix?
<judson_>
Is there a variable or something to get the config directory in home.nix?
<judson_>
I'm trying to configure a program that needs a path to a file, and using e.g. $XDG_CONFIG_HOME isn't working.
<cole-h>
xdg.configHome I think
<cole-h>
Yep, `xdg.configHome`
<hpfr[m]>
cjpbirkbeck: yes, check the hm manual for the NixOS module
<hpfr[m]>
It’s up to preference of that vs separate, but most people tend to move to the NixOS module
<judson_>
cole-h I tried that and it reports "no such variable."
<judson_>
Oh, it needs `config.xdg.configHome`
<judson_>
Thanks!
<cole-h>
Ah yeah, sorry x)
<hpfr[m]>
cole-h: are you talking about the rofi-emoji written in C? I don’t think that’s the one rycee is using because he’s copying it like other shell scripts. I’m guessing he uses this one which is also what I use https://gist.github.com/NearHuscarl/5d366e1a3b788814bcbea62c1f66241d
<hpfr[m]>
But I don’t get why that one would need the path substitution so I could be misunderstanding
<cole-h>
hpfr[m]: Oh, yeah I was thinking about the actual rofi plugin written in C. Sorry :^)
cjpbirkbeck has quit [Quit: cjpbirkbeck]
cjpbirkbeck has joined #home-manager
<hpfr[m]>
I've run into an issue. one of the scripts I have is used as the script for a systemd user service I've defined with home-manager. I have to specify the absolute path of a package installed with home-manager to get the user service script to find it when it's called by systemd. Is there a way to fix this? Am I going about it wrong?
<hpfr[m]>
I guess I'm using the NixOS option `systemd.user.services`, maybe I should use the home-manager option, but the home-manager unitType seems much more nebulously defined...
<cole-h>
Basically boils down to `systemd.user.services."name"."Header"."Setting=SomeValue"`
<hpfr[m]>
yeah, I know. I feel like the NixOS module's unit type is better
<hpfr[m]>
but if this gets the paths working, I'll use it
<hpfr[m]>
honestly it's probably better since the NixOS module provides those services to every user which doesn't really make sense for what I'm using it for
<hpfr[m]>
cole-h: the service I'm writing uses one of the scripts I packaged using rycee's method (pkgs.runCommand) called `setbg` for `ExecStart`. So I have a `let` at the start of my hm module defining the scripts package as `gui-scripts`, which I include in `home.packages` and in the `ExecStart` as `"${gui-scripts}/bin/setbg"`. When I try to run the service, the script can't find `ls`, or `grep`, or `ln`. How am I supposed to
<hpfr[m]>
I get that, but how does it "pick" which bin path to use for coreutils? since you can have multiple installed. how does pkgs.coreutils signify a unique path?
<cole-h>
I'm not sure I understand your question. How can you have "multiple installed" coreutils?
hmpffff has joined #home-manager
hmpffff__ has quit [Ping timeout: 250 seconds]
<cole-h>
Anybody here use the sway module in hm? I would appreciate testing on this PR, if you have a moment: https://github.com/rycee/home-manager/pull/1086. Been running it for a week and it seems fine, but it'd be nice to get a breadth of people to test it
<hpfr[m]>
cole-h: you can do that with nix? Any package can depend on any version of coreutils so how dues makeBinPath “pick” a path when given pkgs.coreutils
<hpfr[m]>
Wish I could use sway, bought nvidia before I switched to linux unfortunately
* cole-h
has a 1080
* hpfr[m]
wonders how
<cole-h>
Nouveau works fine.
<hpfr[m]>
Nouveau is performant post 700 séries? I was under the impression it was really bad because NVidia doesn’t provide enough info
<cole-h>
Whatever `pkgs.coreutils` evaluates to is what will be used. If you overlay it for an older version of coreutils, that will be used. If you don't have any overlays for it, the version from your channels will be used. There's never any ambiguity.
<cole-h>
I don't game in Linux, so maybe that's why I'm fine with it. But watching videos on YouTube (via Firefox), mpv streams (via streamlink/youtube-dl) works fine. I haven't seen any hitches.