<lalaland>
with nix os, I'm able to configure my operating system in a certain way, and if I use that config file on another system, it should reproduce the exact same environment?
<lalaland>
what do you use nixos for besides being a reproducible os?
melg8 has quit [Quit: Connection closed]
<simpson>
lalaland: I flip it around: Why would I use anything other than NixOS, if I get to choose which GNU/Linux distro to use?
<jboyens[m]>
Yup. Well said.
<gchristensen>
I like nixos because when I find a solution to a problem it is usually a complete solution, it doesn't require digging through forum posts putting together and trying a bunch of things until it works for some unknown reason
<evils>
simpson: because other distros don't get in my way and let me make giant mistakes that i'll need more help with to recover from
<lalaland>
@evils is it because you can recover to a previous state easily with nixos?
sophrosyne97 has quit [Quit: ZNC 1.8.2 - https://znc.in]
<evils>
lalaland: mostly i mean that when nix gets in my way, it's for a good reason
<lalaland>
I guess I will just start using it to really understand what you mean :)
<gchristensen>
run it in a VM or something :)
Wizek has quit [Quit: Connection closed for inactivity]
eyenx has quit [Quit: Bridge terminating on SIGTERM]
eyenx has joined #nixos
stree has joined #nixos
theDon has quit [Ping timeout: 265 seconds]
<{^_^}>
[nixpkgs] @cdepillabout pushed to haskell-updates « release-haskell: add documentation explaining what this file is used for »: https://git.io/JsGAL
theDon has joined #nixos
lordcirth_ has joined #nixos
lordcirth__ has quit [Ping timeout: 250 seconds]
xkapastel has quit [Quit: Connection closed for inactivity]
<lalaland>
what kind of applications are best built with nix?
<evils>
all of them
<evils>
some stuff's a bit trickier, but i don't think there's anything unpackageable
<lalaland>
I'm learning rust. is nix good for rust devs?
<evils>
i use Nix as much as possible for my Rust, but that ecosystem is quite build around cargo so not using that would be a bit of extra struggle IMO
<evils>
for applications we seem to use cargo as well, and since they have lock files, it's reproducible anyway, so why reinvent that wheel...
<evils>
(note, i don't regularly use Rust, and i'm hoping someone will correct me if i say something wrong)
<lalaland>
what type of apps do you build?
<evils>
i don't develop any Rust stuff, i've been having fun tinkering with setting up a toolchain for embedded Rust, but haven't gotten productive on that yet
<shreeya>
how stable is it to run nixos master / unstable on server?
<evils>
shreeya: whatever you do, make sure it's a nixos-* channel and not a nixpkgs or master directly
<evils>
nixos-unstable is fairly good, but the configuration interface isn't guaranteed to be stable, use a stable release if you want less hassle as the OS develops
<shreeya>
that's fine i guess, as long as server continues booting
<shreeya>
and i have ability to update the configuration, and fix it
<evils>
i'm not sure we can even guarantee that for a stable release :P
orivej has joined #nixos
<evils>
(mostly because there's more ways for a user to mess something up than there are tests to catch that)
<lalaland>
what code editor do you guys use?
<evils>
vim here, but i like visually simple stuff and don't mind having my fingers do magic that's mostly muscle memory
<shreeya>
and for instance if i would like a fix for a package that is in unstable but not in stable, i would be able to clone the nixpkgs, just build that and run to fix the package? i dont suppose this should happen at all since all pkg deps are unique and fixed, and if it builds once it should build again..
<shreeya>
but recently i tried using anydesk and it was broken because it missed minizip dep which is fixed in unstable when i checked, but now i wonder why should it be broken in first place if the version of anydesk on stable is the one without minizip which it should've been, right?
<evils>
shreeya: using a local nixpkgs is generally discouraged when you can use overlays or get a specific package from another channel
<shreeya>
it does seem version pinned, maybe it was committed broken into the release
ddellacosta has joined #nixos
<shreeya>
alright, moving the server to unstable and rebuilding :fingers_crossed:
stree has quit [Ping timeout: 252 seconds]
<evils>
oh yea, the newer packages themselves could have breaking changes too... (never version could be incompatible with your current setup)
<{^_^}>
[nixpkgs] @jonringer pushed 14 commits to staging-next: https://git.io/JsZ3X
<shreeya>
hmm... but wouldn't newer package even grab specific newer version of deps as well removing the possibility of incompatibility?
ddellacosta has quit [Ping timeout: 265 seconds]
<evils>
i mean if you have a database or configuration in ~/.config for example
<evils>
though generally things are forwards compatible, that's not always the case, and while such a change wouldn't be introduced on a stable channel, it's almost unavoidable on the unstable ones
<evils>
so for a stable setup, you'd read the release notes before changing to the next release, and make sure you accounted for everything that affects your system
<shreeya>
hah my aws rootfs is 3GB, nixos-rebuild runs out of tmp space :|
<evils>
with the unstable channel, those notes keep coming in
HenrikK has joined #nixos
<shreeya>
do we have unstable wip release notes that keep on being auto-updated.. possibly if release notes are auto-generated from commits
<evils>
they're not auto-generated, but they should be added along with the PR that makes a change that needs to be noted
<evils>
lalaland: you know you don't need to use NixOS to use Nix, right? it runs on any linux distro
<lalaland>
oh
<evils>
with very little setup, you can then write a shell.nix that sets up all your development dependencies
ahmed_elgabri has joined #nixos
<evils>
or just use it to get more up-to-date packages
<evils>
or packages other distros just don't have
ddellacosta has quit [Ping timeout: 240 seconds]
<lalaland>
trying it now
ahmed_elgabri has quit [Ping timeout: 250 seconds]
akaWolf has quit [Ping timeout: 240 seconds]
lalaland has quit [Quit: Connection closed]
<jonringer>
Yea, for usability, I would say FHS distro + nix is "best bang for your buck".
<jonringer>
You really only sacrafice the ability to do a configuration.nix
<jonringer>
and home-manager is an option on any platform, even mac
<evils>
i keep expecting to hear we killed homebrew...
<shreeya>
i've been using nix on mac recently as well
<shreeya>
definitely lacks a lot of packages against homebrew
<shreeya>
also missing the m1 support
<shreeya>
but i love nix-shell -p <package> for trying things out
<evils>
shreeya: homebrew has 5602 packages, how many can they possibly have we don't xD
<shreeya>
i think my numbers alone nix wins, but many of those packages don't have darwin support
<shreeya>
by
<shreeya>
maybe many would be incorrect, i have only ever tried installing like 30-40 packages maybe :P
hyper_ch2 has joined #nixos
hyper_ch2 has quit [Remote host closed the connection]
<shreeya>
looking at my config its mostly GUI apps, i have a separate config for including telegram, upwork, zoom, anydesk, spotify, google-chrome, authy on linux, because they are absent on mac
<{^_^}>
[nixpkgs] @jonringer merged pull request #122385 → [staging-20.09] flac: fix out of bound reads due to heap buffer overflow → https://github.com/NixOS/nixpkgs/pull/122385
amk has quit [Ping timeout: 240 seconds]
amk has joined #nixos
<shreeya>
would be interesting to see if we can write a adapter for homebrew to nix and add all homebrew packages declarative into the config
turlando has joined #nixos
HenrikK has joined #nixos
<typetetris>
After locking my system flake in `/etc/nixos/flake.lock` how can users use the exact same commit of nixpkgs for their own packages, so gl libs are compatible for example?
waleee-cl has quit [Quit: Connection closed for inactivity]
cole-h has quit [Ping timeout: 252 seconds]
ddellacosta has quit [Ping timeout: 265 seconds]
<Emantor>
typetetris: by giving users your configuration as a repository and having them rebuild from the same inputs for example.
<Emantor>
It's probably easier to put the specific packages for your software in a separate flake.
<typetetris>
I meant users in a technical sense, like "not root". I have a hunch its more like pinning the registry systemwide and build system from pinned flake for nixpkgs or some such? Users can access the same pin?
HenrikK has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Emantor>
Uh, thats a difficult question, AFAIK flakes are not coupled to nix-channels, so everything users install via nix-env (which is discouraged) is not necessarily form the same nixpkgs revision.
ahmed_elgabri has joined #nixos
<typetetris>
As a user I type `nix profile install nixpkgs#something` and then I want nixpkgs to be the same flake the system was installed from. (So it doesn't get downloaded multiple times, bad internet here.)
<{^_^}>
[nixpkgs] @vcunat pushed to staging-next « wlroots_0_12: fixup build with ffmpeg-4.4 »: https://git.io/JsZpX
<Kinnison>
It looks like potentially transient qemu related failures which may be cached, but it's very hard for me to say for sure since I'm not used to any idiosyncrasies of hydra
m0rphism has joined #nixos
* Kinnison
has a go with the reproduce script
ddellacosta has joined #nixos
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Kinnison>
evils: What's the right approach for building a nixos test from a nixpkgs master checkout? is it just nix build nixos/release-combined.nix -A nixos.tests... ?
<evils>
nix-build -A nixosTests.testname is what i do
* Kinnison
tries nix-build -A nixosTests.boot.biosUsb
<Kinnison>
Oh boy, this is going to include a kernel build :/
<gchristensen>
btw you can also directly nix-build it: nix-build ./nixos/tests/mysql/mysql.nix
* evils
laughs in trying to build a nixos test for rasdaemon
ddellacosta has joined #nixos
ddellac__ has joined #nixos
Qwerky has joined #nixos
<Kinnison>
gchristensen: I'm trying to reproduce a hydra failure blocking nixos-unstable but it works for me every time I run it
<Kinnison>
gchristensen: It just takes about 12 minutes
abathur has quit [Read error: Connection reset by peer]
<Kinnison>
gchristensen: I'm guessing it's not a timeout on hydra's side for that?
<gchristensen>
doesn't soundlike it, link to the failure?
<evils>
gchristensen: any idea whose eyes i should try to get this in front? i suspect not many people feel competent to review it, and that because it's so old that's not going to happen naturally #85039
<gchristensen>
hydra is fairly well off actually in terms of build capacity and other resources. imho the best way it could be helped right now is in supporting the development of an improved scheduler
<gchristensen>
'course, person hours are much more expensive than donating a fancy builder or something :)
<romildo>
In trying to find the cause of issue https://github.com/NixOS/nixpkgs/issues/122053 I have found that it first appeared in nixos-unstable revision 8e4fe32. But I do not know a practical way to find which commit since the prior revision brings the issue. Any help?
<{^_^}>
#122053 (by ilya-fedin, 1 week ago, open): XEmbed tray icons on MATE became broken
<NixOSClient_549>
I need an operator, to ban to spammer SmartWorld.
<NixOSClient_549>
Kickban.
<SmartWorld>
i am not spammer
<NixOSClient_549>
SmartWorld We don't allow SPAM.
<NixOSClient_549>
SmartWorld You are an spammer.
<SmartWorld>
it is not spam man
<SmartWorld>
it is my new video
<NixOSClient_549>
SmartWorld Yes, it's an SPAM.
<SmartWorld>
i want to make it viral
<NixOSClient_549>
SmartWorld You will be kickbanned.
<NixOSClient_549>
SmartWorld We don't allow links.
<SmartWorld>
i dont know how so i came to experts and i met you
<NixOSClient_549>
NixOSClient_549 Outside of NixOS.
Rusty1 has joined #nixos
<SmartWorld>
no
<NixOSClient_549>
SmartWorld What no???
<SmartWorld>
i hope you know i am not spammer
<NixOSClient_549>
NixOSClient_549 Stop.
<SmartWorld>
i am human
<Felix[m]6>
<lukegb "but the broken build log got ove"> ohh, alright, thanks then! one step closer to ZHF :)
<NixOSClient_549>
SmartWorld Please, stop.
<Kinnison>
SmartWorld: You might feel you're not a spammer, but your video has nothing to do with nixos and this is not a channel for promoting youtube channels.
<SmartWorld>
ok i stop
<NixOSClient_549>
SmartWorld Or stop, or you will be banned.
<SmartWorld>
but if anyone help me out how can i make my video viral
<SmartWorld>
it will be big help
<SmartWorld>
i know you guys are helping humans
<NixOSClient_549>
SmartWorld We will not help you, you are an spammer.
<SmartWorld>
and helpful humans :)
<legendofmiracles>
Only if it comes to nix :0
<legendofmiracles>
* Only if it comes to nix :)
<NixOSClient_549>
Kinnison Please, give me an operator.
<NixOSClient_549>
SmartWorld PLEASE, STOP.
<Kinnison>
If I had that power, it'd already be done
arjen-jonathan has quit [Ping timeout: 260 seconds]
<{^_^}>
[nixpkgs] @devins2518 opened pull request #123113 → vimPlugins.vim-easyescape: init at 2020-11-22 and vimPlugins.edge: init at 2021-05-08 → https://github.com/NixOS/nixpkgs/pull/123113
ahmed_elgabri has quit [Ping timeout: 250 seconds]
beertoagunfight has quit [Ping timeout: 245 seconds]
endformationage has joined #nixos
<{^_^}>
[nixpkgs] @sternenseemann opened pull request #123121 → [staging-next] llvmPackages_{7-12} stdenvs: link all resource files from compiler-rt → https://github.com/NixOS/nixpkgs/pull/123121
<Hindsight>
Hey guys, I'm wondering what the simplest way to create a systemd service for each element in a list is. Let's say I have a list of strings 'names', and a function 'makeService' that takes a string and creates a service-attributeset. Maybe first 'lib.lists.forEach names makeService' and then lib.mkMerge on the resulting list?
zupo has joined #nixos
zupo has quit [Client Quit]
zupo has joined #nixos
<pennae>
Hindsight: yeah, that makes sense
beertoagunfight has joined #nixos
<immae>
does makeService return only one service each time?
<immae>
If so it could return a nameValuePair which is easier to turn into an attr afterwards
arjen-jonathan has quit [Ping timeout: 245 seconds]
<immae>
(nb: your solution is still all fine)
<Hindsight>
So I haven't written the function yet, I just copy-pasted the services as a workaround
<pennae>
or genAttrs, if the arg is just a string?
<immae>
genAttrs works only if the resulting attrset has the same name as the input string
<Hindsight>
ah, I think genAttrs would work, I could just do systemd.services = { other services... } // genAttrs names (name: { enable = true;...... })
<CodeBitCookie[m]>
It says: "As long as certain special jobs -- unstable for nixpkgs, and tested for nixos -- build successfully, the channel can update. The role of these special jobs is to ensure that essential functionality is present on each channel update."
<CodeBitCookie[m]>
Meaning
<CodeBitCookie[m]>
master doesn't matter
<CodeBitCookie[m]>
and if master updates it won't matter unless unstable or stable branches build successfully
<CodeBitCookie[m]>
right?
noudle has joined #nixos
ahmedelgabri has joined #nixos
HenrikK has joined #nixos
HenrikK has quit [Remote host closed the connection]
<jtojnar>
well, you do not have to wait for every single package to build on Hydra, you just need the packages you use
<simpson>
Largely, except that any individual user can use `master` without waiting for Hydra.
<simpson>
jtojnar++
<{^_^}>
jtojnar's karma got increased to 74
<jtojnar>
and if Hydra did not build it yet you can build it yourself – that is the beauty of Nix, the cache is only a bonus
ahmed_elgabri has quit [Ping timeout: 260 seconds]
<jtojnar>
CodeBitCookie: looks like building from master will not help you, though
<jtojnar>
I am getting configure: error: Invalid GNOME Shell version: 40.1
<jtojnar>
so you really need to update the arc-theme to a version that supports GNOME 40.1
<jtojnar>
I would recommend either waiting for the PR to be merged and channels to update
lordcirth__ has quit [Ping timeout: 250 seconds]
<jtojnar>
or `git checkout 80a3e0dc0ef11ecd7c6171318d2e3f2f5390b6ac` (that commit is just after the GNOME 40.1 PR has been merged so it minimizes the number of packages to build)
<jtojnar>
and then `git cherry-pick`ing the patch from one of the arc-theme update pull request
ddellacosta has joined #nixos
zupo has joined #nixos
rj has joined #nixos
<CodeBitCookie[m]>
<jtojnar "I would recommend either waiting"> How long do you think waiting would take
<CodeBitCookie[m]>
> <@jtojnar:matrix.org> I would recommend either waiting for the PR to be merged and channels to update
<CodeBitCookie[m]>
* How long do you think waiting would take?
<{^_^}>
error: syntax error, unexpected '<', at (string):494:1
<jtojnar>
depends on when the contributors decide to update the pull requests
<djahandarie>
I'm trying to package something which does a fork/exec, and somehow the LD_LIBRARY_PATH env var no longer is there for the child process
ddellacosta has quit [Ping timeout: 252 seconds]
<djahandarie>
Has anyone run into something like that and have any idea how to fix it?
<jtojnar>
or let me just quickly fix it and merge it
beertoagunfight has quit [Ping timeout: 240 seconds]
<CodeBitCookie[m]>
Jan Tojnar: That would be great 😊
Core7461 has quit [Remote host closed the connection]
<colemickens>
I really will try to do this as soon as I can.
<CodeBitCookie[m]>
and now it didn't give me an error
<CodeBitCookie[m]>
and now is compiling it from source because it was just merged in and the cache is not yet updated until hydra approves
ahmedelgabri has quit [Ping timeout: 260 seconds]
<CodeBitCookie[m]>
and when hydra approves there is no need for having the /home/hamza/src/nixpkgs git clone
<CodeBitCookie[m]>
but it is still useful for development and latest stuff
eoli3n_ has quit [Remote host closed the connection]
<CodeBitCookie[m]>
Thanks
<CodeBitCookie[m]>
:D
eoli3n_ has joined #nixos
<CodeBitCookie[m]>
And because I think I want to become a contributor to this masterpiece of a distro, I want to ask, does hydra automatically make a binary for nixos and other platforms based on the brach when hydra approves?
rgoswami[m] is now known as RohitGoswami[m]
xcmw has joined #nixos
<CodeBitCookie[m]>
Also How would I go about NOT putting -I nixpkgs=/path/to/nixpkgs everytime I want to nixos-rebuild switch
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Harry95>
i have a question about making new packages
<Harry95>
my final goal is to compile `findimagedupes`.
LouisDK has joined #nixos
<Harry95>
the biggest challenge is compiling the `graphicsmagick`-perl-bindings.
<Harry95>
when downloading the graphicsmagic sources, it already comes with the files needed for perl
<Harry95>
my current idea is: download source of graphicsmagick and extract them then move the perl-binding-folder to dev and later copy it from graphicsmagick.dev to the wanted perl-module.
<Harry95>
is this okay? or is it prefered to download the sources two times?
<LouisDK>
I'm making a optinlal package with LibreOffice templates and so far the best option to make them accessible without recompiling LibreOffice would be to put them in a subdir inside /run/current-system/sw/share but I'm unsure how to do this?
ddellaco_ has joined #nixos
lordcirth_ has quit [Remote host closed the connection]
<CodeBitCookie[m]>
And am trying to create a derivation for it
<CodeBitCookie[m]>
but I am a bit new to all of this
<CodeBitCookie[m]>
I mean I know how to write a derivation and fetch urls. Get internet working and set the binary. Know the nix language and how nix works
<CodeBitCookie[m]>
but can't really piece the derivation part together
<CodeBitCookie[m]>
Plus like what should I put in the buildPhase
shibboleth has joined #nixos
<CodeBitCookie[m]>
I shouldn't install it like he says right?
<CodeBitCookie[m]>
cz of the whole nix store thing
<CodeBitCookie[m]>
Oh Thank you so much This is actually really helpful!
<CodeBitCookie[m]>
can you also explain one more thing to me?
<Harry95>
i hope i can. go ahead
<CodeBitCookie[m]>
When we make our whole file a function by putting an attribute set as the parameters at the top like { pkgs ? import <nixpkgs> }: let {} in thing
<CodeBitCookie[m]>
what does that even mean?
<CodeBitCookie[m]>
who runs that function?
<CodeBitCookie[m]>
(+ Everybody writes code differently so is there any good practices to follow with the nix language?)
<CodeBitCookie[m]>
anything about the good practices
proofofkeags has joined #nixos
Harry95 has quit [Ping timeout: 240 seconds]
ddellacosta has joined #nixos
cole-h has joined #nixos
<CodeBitCookie[m]>
Something aside from all of this though is that I am having a dilemma: I have made a nix folder in my home folder and inside is my home.nix and many configuration files and folders including my .emacs.d and .xmonad. I have then put "home.file.".xmonad".source = ./.xmonad" in my home.nix which automagically creates a symlink wherever needed.
<CodeBitCookie[m]>
The Problematic part is when I try compiling my .xmonad
<CodeBitCookie[m]>
my .xmonad is a symlink to: /nix/store/blahblah2801340randomhash-home-manager-environment or something like that
<CodeBitCookie[m]>
* my /home/user/.xmonad is a symlink to: /nix/store/blahblah2801340randomhash-home-manager-environment or something like that
<charukiewicz>
I have a user on a NixOS machine whose ~/.nix-profile symlink is broken. The location the symlink points to (/nix/var/nix/profiles/per-user/<username>/) is gone. Is there any way I can reinitialize this for the user?
<cole-h>
¯\_(ツ)_/¯
<gchristensen>
it'll be created as soon as you install something :)
<charukiewicz>
so just `nix-env -iA hello` ?
<cole-h>
lovesegfault: "The flake reference to be rewritten."
<cole-h>
from configuration.nix(5)
<gchristensen>
yeah, but to be clear there should be no problem with the dangling symlink
<lovesegfault>
Yeah, I read that but I have no clue what that means, cole-h :P
<lovesegfault>
the next option is even more ominous "the flake reference to which from> is to be rewritten"
<lovesegfault>
these sound like that fake git manpage generator
<matthewcroughan>
> Torvalds and his thousands of contributors managed to get version 5.12 out on time, but he now says RC 5.12 is a "double ungood" that can have catastrophic consequences for a computer's filesystem.
<{^_^}>
error: syntax error, unexpected ',', expecting ')', at (string):494:83
<matthewcroughan>
Why is it always the filesystem?
<matthewcroughan>
"swap files stopped working right. And they stopped working in a particularly bad way: the offset of the start of the swap file was lost. Swapping still happened, but it happened to the wrong part of the filesystem, with the obvious catastrophic end results,""
<matthewcroughan>
"Otherwise Linux 5.12 is basically a spring-cleaning effort from Torvalds who's handled 10,982 non-merge commits from 1,500 people who contributed to this RC of the kernel. "
<lovesegfault>
you don't have to wonder :)
<colemickens>
was the 5.12 bump done with a direct merge to master too?
<matthewcroughan>
Do you think we can pay Linus to manage Nixpkgs?
<lovesegfault>
colemickens: probably? I think nequissimus uses an automated tool or something
<cole-h>
merge or push?
<cole-h>
I thought it was somebody else this time
<colemickens>
well my point wasn't to assign blame but question process