<Profpatsch>
The I guess I’ll just have a small wrapper script that calls the hm utility
<Profpatsch>
Or even call it directly really.
xwvvvvwx- has joined #home-manager
YveDeLarc_ has joined #home-manager
stears_ has joined #home-manager
sauyon1 has joined #home-manager
ashkitte1 has joined #home-manager
ardumont has quit [*.net *.split]
rycee has quit [*.net *.split]
alexarice[m] has quit [*.net *.split]
Thinkofname[m] has quit [*.net *.split]
Ericson2314 has quit [*.net *.split]
stears has quit [*.net *.split]
xwvvvvwx has quit [*.net *.split]
{^_^} has quit [*.net *.split]
simpson has quit [*.net *.split]
sauyon has quit [*.net *.split]
ashkitten has quit [*.net *.split]
YveDeLarc has quit [*.net *.split]
xwvvvvwx- is now known as xwvvvvwx
<klimi>
Hello i am using services.xcape.mapExpression = { Control_L="Multi_key"}; but when i try it it doesnt work... but when i kill it and spawn it with "xcape -e "Control_L=Multi_key"" It is working flawlesly... any tips?
simpson has joined #home-manager
{^_^} has joined #home-manager
ardumont has joined #home-manager
<klimi>
klimi: fixed if with adding the map from capslock because i am later remapping it to control which... idk maybe some deps or sth. (just so it sticks in logs)
klimi has quit [Quit: WeeChat 2.6]
Jarva_ has joined #home-manager
<Jarva_>
Hey guys, I'm a new NixOS user, I'm wondering why I'd use home manager over something like gnu stow? I'm not really sure of the differences and what the nix way is
<Dandellion[m]>
stow cant install packages and manage your xsession can it?
<Jarva_>
It can't but wouldn't I just put the packages inside my configuration.nix?
<Jarva_>
What's the benefit of having them in home manager?
<__monty__>
Jarva_: HM provides a more declarative setup.
<__monty__>
It's up to you to decide whether or not that outweighs the drawbacks.
<__monty__>
The difference with putting stuff in configuration.nix is that that's system-wide whereas HM is just for your user.
NickHu has quit [Ping timeout: 240 seconds]
<Jarva_>
__monty__ But for a single user machine is there much different?
<__monty__>
You could use it to decouple upgrading your system from upgrading your workspace.
<Jarva_>
That's true
<Jarva_>
And rebuilds happen on the user level for home files rather than needing root
<__monty__>
Or to share a system configuration with server machines while having some extra stuff available on your personal machine.
<__monty__>
HM is also *way* nicer if you want to do anything other than making sure some packages are installed.
<__monty__>
But configuration.nix+stow probably gets you to a similar point.
<__monty__>
I use HM to set up symlinks into my dotfiles repo.
<__monty__>
That way I get most all the benefits of nix but I can also easily share my configs with anyone.
<Jarva_>
I have a display manager set in my configuration.nix and i3 set in my HM, but when logging in my display manager says it can't find a session
<Jarva_>
Any idea what I've missed?
<__monty__>
No. I'm not sure whether or not that should work either.
<Jarva_>
HM doesn't have display managers
<Jarva_>
So unsure of how I'd handle that
<__monty__>
Then it sounds like it should work : )
<rycee>
Ah, right. Well, the same argument applies as long as it's not older than 19.09.
<Jarva_>
Ah right
<rycee>
In any case, I think that would mean that you wouldn't have any `desktopManager` enabled by default and I guess that's what is meant by not finding a session.
<Jarva_>
Ah right, interesting, thank you, I appreciate the help
<rycee>
In principle I believe you could choose to enable any desktop manager, the `~/.xsession` file will override whatever you choose.
<rycee>
But the xterm one is the lightest weight
<rycee>
There is work in progress to improve the situation so that the `~/.xsession` file won't override all desktop managers. It can be achieved today but is not super convenient.
<Jarva_>
So should I just remove `programs.home-manager.path`?
<rycee>
If you have a home-manager channel defined then I would suggest removing it.
<Jarva_>
What IRC client do you guys use?
<rycee>
If you want to play around with changing HM in the future you can clone the repo and set `programs.home-manager.path` to the absolute path of your clone.
<Jarva_>
I have the nix-channel for home manager if that's what you mean?
<rycee>
Precisely.
<Jarva_>
Set to the archive/master.tar.gz
<rycee>
Yup.
<Jarva_>
Removed then
<rycee>
I use Riot with my own Matrix server.
<Jarva_>
That sounds beyond me
<Jarva_>
I only just started using IRC because of nix
<Jarva_>
When enabling zsh should I still need to chsh?
<Jarva_>
Also, now I'm using home.nix for i3, my xserver options don't seem to be working
<rycee>
You don't need to run your own Matrix server. Can create an account with https://riot.im/app and join IRC rooms that way.
<__monty__>
I use irssi, fulfils all my irc needs. And with bitlbee I get to avoid facebook as well : )
<__monty__>
If you want persistent presence matrix is a good way to do that yeah.
<rycee>
I like Matrix since I can seamlessly go from my laptop to my phone and always have full history and searching.
<Dandellion[m]>
I also use riot with my own homeserver
<Jarva_>
I see there's home.keyboard.layout, is there anyway I can get it to inherit from the system services.xserver.layout?
<Dandellion[m]>
It's really nice for irc (until the bridge breaks)
<rycee>
Dandellion: Yeah, there is that little issue :-D
<Dandellion[m]>
Always fun to hang out in irc rooms with just the other matrix users though lmao
<rycee>
Jarva_: Yeah, once you enable xsession management in HM it takes over some stuff, in particular the window manager and desktop manager configuration.
<rycee>
And also keyboard management for stateVersions before 19.09.
<Jarva_>
But my stateVersion is 20.03
<rycee>
Jarva_: Ah, yeah you probably want to have `home.stateVersion = "19.09"` in your HM configuration.
<rycee>
I should fix the installation script to add that automatically.
<Jarva_>
Ah right
<rycee>
Jarva_: In home.nix?
<Jarva_>
Nah, just configuration
<Jarva_>
Updating now
<Jarva_>
I changed it and it suggested restarting setxkbmap, but that doesn't change anything
<rycee>
Yeah, for this change you'll need to relog :-/
<Jarva_>
Worked for me
<rycee>
The keyboard management was one of the first things I added in HM and it's quite janky.
jarva[m] has joined #home-manager
<jarva[m]>
Now trying riot out
<jarva[m]>
So how do you suggest splitting pkgs between system and home?
<rycee>
Greetings jarva :-)
<__monty__>
I put as much as possible in my HM config.
<rycee>
I have almost all packages in my HM config. In the system config I only have a few packages that I want available for all users like htop, iftop, rsync and such.
<Dandellion[m]>
If it can go in hm it goes in hm for me
<rycee>
I'll head to bed. See you!
<__monty__>
nn, rycee
<jarva[m]>
I'm running a single user machine, so unsure what I'd have in there then
<jarva[m]>
Goodnight
<Dandellion[m]>
What's nice about putting everything you use in hm is that if you move to something
<Dandellion[m]>
Non nixos
<__monty__>
Or a shared machine.
<Dandellion[m]>
Maybe a work laptop or something you don't get to run nixOS on
<Dandellion[m]>
You can just put your hm config and install nix for yourself and you'll have everything
<jarva[m]>
This nixos machine is my work laptop
<Dandellion[m]>
I'm running my config on Ubuntu for work for example
<jarva[m]>
Interesting
jarva[m] is now known as Jarva[m]
<Dandellion[m]>
You can also have i3 for yourself but kde for some other user who borrowed your computer, which is very nice
<Jarva[m]>
Yeah, that's fair
<Jarva[m]>
So I'm going to install everything I'd want a second user to have inherently if I lent them my PC in system
<Jarva[m]>
Do they install in different places?
<Dandellion[m]>
No it's all in the nix store in the end
<Jarva[m]>
So another user on the same machine would still have access to it
<Jarva[m]>
* So another user on the same machine would still have access to it?
<__monty__>
The difference is the way the profiles end up on the PATH mostly.
<Dandellion[m]>
It wouldn't be in their path
<__monty__>
If they installed the same package using HM then it wouldn't need to be rebuilt/fetched.
<Jarva[m]>
Ah right
mexisme has quit [Ping timeout: 276 seconds]
<Dandellion[m]>
But if they wanted to run it they can just do `nix-shell -p package --run program`
<Jarva[m]>
So I'm going to put everything I need for my workflow in HM, everything I need for my system operation in configuration.nix
<Dandellion[m]>
Provided the channels are the same ofc
<Jarva[m]>
I'm trying out this riot.im and damn sometimes my messages take forever to send
<__monty__>
Jarva[m]: Yes, latency can be high.
<__monty__>
The load on matrix.org is quite high afaiui.
<Jarva[m]>
Anything I can do to improve it?
<__monty__>
Running your own homeserver can help but it's not a complete solution unless you also run your own irc bridge.
<__monty__>
And I'm not sure how hard that is.
<Jarva[m]>
Ah right
<__monty__>
The homeserver implementation's also not all that nice to run if what I've heard is accurate.
<Jarva[m]>
It's all dockerised so it seems pretty easy
<Dandellion[m]>
matrix.org is a lot faster now than it used to be
<Dandellion[m]>
So just imagine how bad it was
<Dandellion[m]>
Running a homeserver is pretty resource intensive sadly
<Dandellion[m]>
But it's very easy
<__monty__>
The problem is not setting up synapse. It's keeping it running.
<Jarva[m]>
How resource intensive?
<__monty__>
It's a memory hog.
<Jarva[m]>
Fair
<Jarva[m]>
That's another days problem
<Dandellion[m]>
If you join any big rooms it'll use ~3 gigs
<Dandellion[m]>
For smaller rooms like this one its not so bad
<Jarva[m]>
I'm only in here and #nixos
pie__ has joined #home-manager
<Dandellion[m]>
It's also quite io heavy at times and can burn a core for quite some spikes
<Dandellion[m]>
#nixos is one of the slowest rooms
<Dandellion[m]>
It's better now, i think
pie_ has quit [Ping timeout: 268 seconds]
<Dandellion[m]>
It used to grind servers to a halt
<Jarva[m]>
It has like 1500 people in it
<Dandellion[m]>
It somewhat unexplainably made a lot of forward extremities
<Dandellion[m]>
Probably due to the high traffic
<Jarva[m]>
How do I deal with my home.packages complaining about unfree licenses?
<Jarva[m]>
My nixpkgs.config.allowUnfree is already set to true
<Dandellion[m]>
They made a thing that tries to heal the dag and it's mostly fixed it
<Dandellion[m]>
allowUnfree in config.nix
<Jarva[m]>
I have it
<Dandellion[m]>
configuration.nix and config.nix are different ones
<Jarva[m]>
in my configuration.nix
<pistache>
Jarva[m]: in .config/nixpkgs/config.nix
<Jarva[m]>
Oh
<Jarva[m]>
What's config.nix
<Dandellion[m]>
it's the configuration for your user environment (nix)
<Dandellion[m]>
It's in the same folder as your home-manager file
<Jarva[m]>
Cheers, that worked
<Jarva[m]>
When I enabled the zsh package, do I still need to chsh?
<Dandellion[m]>
You need to set the shell in configuration.nix yes
<Dandellion[m]>
There's no way for a user to select their own login shell on Linux afaik
hmpffff has quit [Quit: nchrrrr…]
<__monty__>
Hmm, I'm pretty sure I have fish set in HM.
<Dandellion[m]>
Other than classic setuid chsh
<Dandellion[m]>
Huh? I'm interested to know how in that case
<Dandellion[m]>
I asked in nixos some time ago for a solution but was met with "that can't work"
<__monty__>
Hmm, I have it set in configuration.nix as well so I can't say for sure it suffices.
<__monty__>
Dandellion[m]: I'm pretty sure users can chsh as long as the shell is in /etc/shells or something though.
<Jarva[m]>
Okay, adding the shell in my users section of configuration.nix and relogging worked
<Dandellion[m]>
<__monty__ "Dandellion: I'm pretty sure user"> I guess the problem is more that hm can't really write to that then?
<Jarva[m]>
Honestly once I had the base of nixos set up, this has been pretty smooth sailing
<Dandellion[m]>
It's quite magical to reinstall once you have your config finished
<Jarva[m]>
I had huge troubles getting nix installed initially
<Jarva[m]>
My PC wouldn't boot into the liveusb for anything other than a specific iso
<Dandellion[m]>
Sure you have to wait a few hours for everything to download and compile, but hitting enter, leaving, and coming back to everything exactly how you like it (- whatever you haven't made declarative enough yet) is a super good feeling
<__monty__>
Dandellion[m]: Might be. I suspect if you enable the shell in configuration.nix or just make it available in /etc/shells somehow that you can just use HM to manage it.
<Dandellion[m]>
<__monty__ "Dandellion: Might be. I suspect "> Yeah that's what i do currently
<Jarva[m]>
The only thing I have in my configuration.nix for zsh is users.users.callum.shell = pkgs.zsh;
<Dandellion[m]>
Oh you meant without setting it, hmm
<Dandellion[m]>
Interesting
<Jarva[m]>
Everything else is handled by HM
<Dandellion[m]>
I think they mean you can do zsh.enable or something
<Jarva[m]>
Oh interesting
<Dandellion[m]>
And then chsh instead of setting it in the configuration.nix
<Dandellion[m]>
Or maybe hm handles it if you do that
<__monty__>
Dandellion[m]: Fwiw, the way you're replying to my messages is rendered like this on the irc side of the bridge `<__monty__ "Dandellion: Might be. I suspect "> Yeah...`. The inclusion of part of the message as a quote is kinda annoying. (Might be great if you're responding to something that's way back in the history though.)
<Dandellion[m]>
I'll probably try that in a couple days
<Jarva[m]>
It renders really nice in riot, that's probably why haha
<Dandellion[m]>
monty: sorry riot habit
<Dandellion[m]>
Ironically clicking your name made riot-android think it was markdown,,,
<__monty__>
: )
<__monty__>
Just something to keep in mind. I've been in conversations with multiple matrix users doing this and it gets *really* hard to read on the irc side.
<__monty__>
Like reading a text with randomly interspersed repetitions of parts of sentences.
<Dandellion[m]>
Yeah i know it's just a little _too_ easy on riot Android (just a tap on the message!)
<Jarva[m]>
More nixos related than HM, but you guys seem more likely to respond, how would I go about using a program that doesn't have a nixpkg available yet? I'm thinking about asdf-vm
<__monty__>
You package it : >
<Jarva[m]>
Or is there a better nix alternative to asdf-vm?
<Dandellion[m]>
Yeah basically, you package it
<Jarva[m]>
I'm surprised nobody has already
<Dandellion[m]>
If it's really hard you might be able to get away with setting up an FHS for it
<Jarva[m]>
FHS?
<Dandellion[m]>
Or even run it in the steam FHS
<__monty__>
nn, people
<Dandellion[m]>
Night
<Jarva[m]>
Night
<Dandellion[m]>
FHSs are basically chroots with the "normal" environment
<Dandellion[m]>
Normal Linux
<Dandellion[m]>
Folder structure and so on
<Jarva[m]>
ASDF is just a git repo clone with bash files added to zshrc
<Dandellion[m]>
Writable add impure safe havens for problematic software