worldofpeace_ changed the topic of #nixos to: NixOS stable: 20.03 ✨ https://discourse.nixos.org/t/nixos-20-03-release/6785 || https://nixos.org || Latest NixOS: https://nixos.org/nixos/download.html || Latest Nix: https://nixos.org/nix/download.html || Logs: https://logs.nix.samueldr.com/nixos/ || use ,channels for a list of Nix* related channels || nixcon videos: https://tinyurl.com/nixcon2019 || Link to the output of nix-info
lsix has quit [Ping timeout: 244 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos
kvda has joined #nixos
kvda has quit [Ping timeout: 260 seconds]
<{^_^}> [nixpkgs] @pasqui23 opened pull request #88909 → [WIP] usql: init at 0.7.8 → https://git.io/JfwvB
kvda has joined #nixos
ddg7 has joined #nixos
<{^_^}> [nixpkgs] @bhipple merged pull request #77281 → python3Packages.livelossplot: init at v0.5.0 → https://git.io/JvenG
<{^_^}> [nixpkgs] @bhipple pushed 2 commits to master: https://git.io/Jfwvr
<ddg7> quick question: what's the equivalent of "#!/bin/bash" in bash scripts for nixos?
Pwnna has quit [Quit: Bye]
Pwnna has joined #nixos
<bbigras> #!/usr/bin/env bash ?
kvda has quit [Ping timeout: 246 seconds]
<ddg7> bbigras: ok; thanks!
ddg7 has quit [Client Quit]
kvda has joined #nixos
<bbigras> not sure if it's optimal but it should work.
mzafkismugi[m] has joined #nixos
<{^_^}> [nixpkgs] @marsam merged pull request #88897 → miniflux: 2.0.19 -> 2.0.21 → https://git.io/JfVNz
<{^_^}> [nixpkgs] @marsam pushed 3 commits to master: https://git.io/JfwvP
<{^_^}> [nixpkgs] @strager closed pull request #79073 → chatterino2: unstable-2019-05-11 -> 2.1.7 → https://git.io/JvsId
<{^_^}> [nixpkgs] @strager reopened pull request #79073 → chatterino2: unstable-2019-05-11 -> 2.1.7 → https://git.io/JvsId
<{^_^}> [nixpkgs] @bhipple merged pull request #87447 → ocamlPackages.torch: init at 0.8 → https://git.io/JfWLf
<{^_^}> [nixpkgs] @bhipple pushed 2 commits to master: https://git.io/Jfwvd
mac10688 has joined #nixos
drakonis1 has joined #nixos
codygman has quit [Ping timeout: 240 seconds]
wnklmnn has quit [Quit: Leaving]
<{^_^}> [nixpkgs] @peti pushed to haskell-updates « hackage-packages.nix: automatic Haskell package set update »: https://git.io/Jfwfe
Esa__ has quit []
user_0x58 has joined #nixos
drakonis_ has quit [Ping timeout: 256 seconds]
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88911 → libblockdev: 2.23 -> 2.24 → https://git.io/Jfwfk
<{^_^}> [nixpkgs] @jtojnar merged pull request #88883 → gexiv2: 0.12.0 -> 0.12.1 → https://git.io/JfVH3
<{^_^}> [nixpkgs] @jtojnar pushed 2 commits to master: https://git.io/JfwfW
<{^_^}> [nixpkgs] @jtojnar merged pull request #88890 → gnome3.gnome-software: 3.36.0 -> 3.36.1 → https://git.io/JfVdC
<{^_^}> [nixpkgs] @jtojnar pushed 2 commits to master: https://git.io/Jfwfg
<{^_^}> [nixpkgs] @jtojnar merged pull request #75237 → gmic: 2.7.5 -> 2.8.0 → https://git.io/JeSkW
<{^_^}> [nixpkgs] @jtojnar pushed 2 commits to master: https://git.io/Jfwfw
coyoneda[m] has joined #nixos
drakonis_ has joined #nixos
bhipple has joined #nixos
drakonis1 has quit [Ping timeout: 260 seconds]
kahiru has quit [Ping timeout: 265 seconds]
<{^_^}> [nixpkgs] @bhipple merged pull request #76997 → python3Packages.skorch: init at 0.8.0 → https://git.io/JejqM
<{^_^}> [nixpkgs] @bhipple pushed 2 commits to master: https://git.io/JfwfF
KindOne has quit [Ping timeout: 272 seconds]
alp has quit [Ping timeout: 272 seconds]
KindOne has joined #nixos
kahiru has joined #nixos
KindTwo has joined #nixos
KindOne has quit [Ping timeout: 272 seconds]
growpotkin has joined #nixos
<mac10688> ok I switched terminals to alacritty and I can copy out of the terminal now
Rusty1 has joined #nixos
lord| has quit [Read error: Connection reset by peer]
aveltras has quit [Quit: Connection closed for inactivity]
lord| has joined #nixos
<mac10688> clever: fyi, this is the full error message I was seeing https://pastebin.com/nHR46B9M
KindTwo has quit [Ping timeout: 256 seconds]
codygman has joined #nixos
<mac10688> but I think it's understood that taffy is broken right now in production and the fix isn't out yet
<mac10688> so what are the steps I should take to build on my machine and have it in my path?
KindOne has joined #nixos
sigmundv__ has joined #nixos
codygman has quit [Ping timeout: 265 seconds]
sigmundv has quit [Ping timeout: 265 seconds]
growpotkin has quit [Quit: ZNC 1.7.5 - https://znc.in]
<{^_^}> [nixpkgs] @bhipple merged pull request #80458 → python3Packages.pytorch-metric-learning: init at 0.9.81 → https://git.io/Jv4MV
<{^_^}> [nixpkgs] @bhipple pushed 2 commits to master: https://git.io/JfwJt
codygman has joined #nixos
Soo_Slow has quit [Quit: Soo_Slow]
orivej has quit [Ping timeout: 256 seconds]
gustavderdrache has quit [Quit: Leaving.]
mauli has quit [Ping timeout: 240 seconds]
pamplemousse has quit [Ping timeout: 246 seconds]
mauli has joined #nixos
<Pwnna> Why am I getting {censored} -> /nix/store/xmsf9n4bbxjrrpvr2x56jjzyc3xm9j9x-bash-interactive-4.4-p23 for when I do nix-store --gc --print-roots
<Pwnna> how do i clean up these packages?
<simpson> Pwnna: I might be misremembering, but those are live processes that belong to other users.
<Pwnna> huh indeed..
<Pwnna> it's not another user
<Pwnna> but this thing spanwed a background process
<Pwnna> thanks!
h0m1 has quit [Ping timeout: 272 seconds]
h0m1 has joined #nixos
OmnipotentEntity has quit [Quit: Leaving]
cosimone has quit [Quit: Quit.]
sigmundv__ has quit [Ping timeout: 256 seconds]
<energizer> why is bin/perl in my environment?
<energizer> `nix why-depends /run/current-system/ /run/current-system/sw/bin/perl` doesn't give much information
ne- has joined #nixos
wolke- has joined #nixos
xqsl_ has joined #nixos
endocrimes_ has joined #nixos
kvda has quit [Read error: Connection reset by peer]
nek0 has quit [Remote host closed the connection]
xqsl has quit [Quit: No Ping reply in 180 seconds.]
endocrimes has quit [Quit: No Ping reply in 180 seconds.]
wolke has quit [Quit: ZNC 1.8.0 - https://znc.in]
fusion809 has joined #nixos
<{^_^}> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/aa364b90d4e (from 72 minutes ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
<energizer> ah, thanks
Darkmatter66 has joined #nixos
Darkmatter66_ has quit [Ping timeout: 260 seconds]
fresheyeball has joined #nixos
<fresheyeball> so I want to try out this Antora thing
<fresheyeball> are there any examples of using this in a nix expression?
<fresheyeball> the whole playbook approach seems to be based on urls
<fresheyeball> which is not going to work in a sandbox
<fresheyeball> I know hercule CI is using it
<fresheyeball> but I can't find any code relevant
mac10688 has quit [Quit: WeeChat 2.7.1]
<fresheyeball> I found it
<{^_^}> [nixpkgs] @marsam pushed to master « zoxide: make fzf optional »: https://git.io/JfwTp
mac10688 has joined #nixos
kaliumxyz has joined #nixos
user_0x58 has quit [Remote host closed the connection]
felixfoertsch23 has joined #nixos
felixfoertsch has quit [Ping timeout: 272 seconds]
felixfoertsch23 is now known as felixfoertsch
joebobjoe has joined #nixos
<joebobjoe> is there a nix packages like dev-essential that includes automake, autoconf, etc?
<simpson> joebobjoe: Not really. There's stdenv, for when you're writing Nix expressions. What are you trying to do?
<joebobjoe> simpson: build a piece of software off github. https://github.com/libpcp/pcp
<joebobjoe> it doesn't have any instructions about what its dependencies are
<joebobjoe> so I looked in INSTALL.md and followed the first compilation step autogen.sh
<joebobjoe> fixing errors aboout missing things as I go along
<joebobjoe> first I got ./autogen.sh: line 18: aclocal: command not found so I installed automake
<joebobjoe> then I got sh: autom4te: command not found so I installed autoconf
<joebobjoe> now I get configure.ac:187: error: possibly undefined macro: AC_PROG_LIBTOOL
<joebobjoe> and I don't know what to do
<bqv> AutoreconfHook
<joebobjoe> do I not have the right autoconf?
<joebobjoe> it says this line is the issue https://github.com/libpcp/pcp/blob/master/configure.ac#L187
<joebobjoe> autoconf complains configure.ac:187: error: possibly undefined macro: AC_PROG_LIBTOOL
<simpson> joebobjoe: I'm currently trying out this basic derivation: https://bpa.st/G2SQ
mauli has quit [Ping timeout: 260 seconds]
<simpson> I'm getting a compiler warning, and warnings are being upgraded to errors; I'm not sure why this is, but it doesn't seem to be for lack of dependencies.
o1lo01ol1o has joined #nixos
<joebobjoe> simpson: how do I run the derivation you wrote?
<joebobjoe> I usually just use nix using nix-env -i
<simpson> joebobjoe: I'm just doing $(nix-build test.nix)
<simpson> Sure, nix-env is a good way to get started, but eventually you'll need to write Nix expressions in order to deal with stuff which isn't yet packaged.
<joebobjoe> simpson: is test.nix supposed to be named default.nix?
o1lo01ol1o has quit [Ping timeout: 265 seconds]
<joebobjoe> when I run nix-build on the code you linked I get error: getting status of /Users/joebobjoe/pcp_attempt/default.nix': No such file or directory
<joebobjoe> I named my file test.nix like you
<joebobjoe> what is in the stdenv?
<joebobjoe> maybe I can just install them manually with nix-env
<elvishjerricco> Why would i be getting `gpg: public key decryption failed: No pinentry` on one nixos machine but not another with a nearly identical config?
<simpson> joebobjoe: stdenv has a C compiler and userland. The reason for keeping it parameterized is that, for example, I can replace it with `gcc8Stdenv` to see whether using an older version of GCC will work.
<simpson> This package is requesting -Wall -Werror, and it's failing due to a -Werror, so it kind of seems to be broken as intended?
<joebobjoe> simpson: can you explain how I can run your test.nix?
<joebobjoe> do I run nix-build test.nix at teh command line?
<simpson> Yeah. That's what I'm doing. `nix-build test.nix`
<simpson> Okay, progress. With clangStdenv, using Clang and LLVM, I get a full build. But then I get the dreaded: RPATH of binary /nix/store/hmfhhrckrnjsfn8ppkbq42lrdfvxggjf-pcp/bin/pcp contains a forbidden reference to /build/
<emily> joebobjoe: "just installing stdenv" won't work
<emily> nix relies on special setup for its build environments and installing build dependencies into the global environment is both a bad idea and unlikely to work
<simpson> ldd hints at the reason, "libpcp-client-2.so.0 => not found". I'm gonna guess that this library is dynamically loaded and that its path is set incorrectly using build-time information somehow.
ne- is now known as nwk0
rogue_koder has quit [Ping timeout: 256 seconds]
<simpson> joebobjoe: I'm not sure. Digging more into the package's source is probably required. I notice that they have cmake configuration, too, and switching from autoreconfHook to cmake does allow using a GCC-based stdenv, such as the typical `stdenv`, but it seems that a custom installPhase will have to be written. No free lunch, it seems.
pjt_014 has joined #nixos
lololo has joined #nixos
jkarni_ has joined #nixos
kevin1024 has quit [Quit: Connection closed for inactivity]
jluttine has quit [Ping timeout: 264 seconds]
<{^_^}> [nixpkgs] @felixsinger opened pull request #88913 → maintainers: Add myself to maintainers list → https://git.io/Jfwto
lololo has quit [Remote host closed the connection]
<{^_^}> [nixpkgs] @felixsinger opened pull request #88914 → pkgs/cups/drivers/mfc9332cdw: Add new package → https://git.io/JfwtX
rogue_koder has joined #nixos
joebobjoe has quit [Ping timeout: 272 seconds]
ilios has quit [Ping timeout: 265 seconds]
<{^_^}> [nixpkgs] @felixsinger closed pull request #88913 → maintainers: Add myself to maintainers list → https://git.io/Jfwto
domogled has quit [Ping timeout: 264 seconds]
jluttine has joined #nixos
jkarni_ has quit [Ping timeout: 260 seconds]
fresheyeball has quit [Ping timeout: 258 seconds]
maxdevjs has quit [Ping timeout: 272 seconds]
Supersonic has quit [Disconnected by services]
Supersonic112 has joined #nixos
Supersonic112 is now known as Supersonic
joebobjoe has joined #nixos
wchresta has quit [Remote host closed the connection]
rogue_koder has quit [Ping timeout: 258 seconds]
nwk0 is now known as nek0
<joebobjoe> simpson: the cmake of that package is for the windows build
growpotkin has joined #nixos
<simpson> joebobjoe: That's too bad; it seemed to have better CC flags. Anyway, the autoreconfHook with clangStdenv combination seems to compile everything alright, but there's still the matter of that dynamic library and getting the RPATH cleaned up. I'm looking to see if there's good reading on that.
cmk_zzz_ has joined #nixos
cmk_zzz has quit [Ping timeout: 265 seconds]
jluttine has quit [Ping timeout: 256 seconds]
jluttine has joined #nixos
morgrimm has joined #nixos
<joebobjoe> simpson: what does the first line of your derivation do
<joebobjoe> { nixpkgs ? import ./default.nix {} }:
<joebobjoe> because when I do nix-build on the file I you sent me it says it cannot find default.nix
<simpson> joebobjoe: It's just getting a nixpkgs, and not trying very hard. If you happen to run it in a nixpkgs checkout, then it'll work. Otherwise invoke it with a nixpkgs of your choice.
cap has quit [Read error: Connection reset by peer]
heijligen has quit [Read error: Connection reset by peer]
piegames has quit [Write error: Connection reset by peer]
megfault has quit [Read error: Connection reset by peer]
piegames has joined #nixos
megfault has joined #nixos
jlv has joined #nixos
cap has joined #nixos
heijligen has joined #nixos
<{^_^}> [nixpkgs] @bhipple merged pull request #87544 → vtk: 7.1.1 -> 8.2.0 → https://git.io/JfWH6
<{^_^}> [nixpkgs] @bhipple pushed 2 commits to master: https://git.io/Jfwmc
drakonis has quit [Quit: WeeChat 2.8]
<joebobjoe> simpson: I can't find a default.nix, is it the manifest.nix in my ~/.nix-profile?
simba1 has joined #nixos
<simpson> joebobjoe: No, like a local git checkout of nixpkgs https://nixos.wiki/wiki/Nixpkgs
<simpson> Sorry that I wasn't able to get this package working.
<joebobjoe> it's ok I'll get upstream to give better compile instructions for macos
<{^_^}> [nixpkgs] @bsima opened pull request #88915 → Add Shen → https://git.io/Jfwmo
rogue_koder has joined #nixos
<jlv> Any idea why a 64 bit binary would give "No such file or directory" on a 64 bit system? The file exists and is executable.
<la-s> jlv: set the interpreter
<la-s> `patchelf --set-interpreter "$(nix eval --raw nixos.glibc)"/lib/ld-linux-x86_64.so.2 yourfile` or something
dansho has quit [Quit: Leaving]
<la-s> you could also use a FHS (check the nixpkgs manual)
morgrimm has quit [Ping timeout: 260 seconds]
Rusty1 has quit [Quit: WeeChat 2.3]
jluttine has quit [Ping timeout: 256 seconds]
joebobjoe has quit [Quit: leaving]
<{^_^}> [nixpkgs] @zowoq opened pull request #88916 → cernlib, sad, transfig: use patch file extension → https://git.io/JfwYD
jluttine has joined #nixos
growpotkin has quit [Quit: ZNC 1.7.5 - https://znc.in]
waleee-cl has quit [Quit: Connection closed for inactivity]
<jlv> la-s: Thanks. `patchelf` fixed that issue. There is another issue, but this one is more familiar. P.S. it is `ld-linux-x86-64.so.2, with a - instead of _
o1lo01ol1o has joined #nixos
<la-s> is it just me or are haskell packages not compiled with multiple cores? using aarch64 if that matteres
lornokto has joined #nixos
o1lo01ol1o has quit [Ping timeout: 260 seconds]
<srhb> la-s: pkgs/development/haskell-modules/generic-builder.nix:52 -- , enableParallelBuilding ? !stdenv.buildPlatform.isAarch64
<la-s> ..lol
<la-s> Any reason for that?
<srhb> la-s: The comment above says: # aarch64 sometimes crashes for -jn with n>1: https://ghc.haskell.org/trac/ghc/ticket/15449
<clever> la-s: ghc lacks native-codegen for arm, so it has to use the llvm backend
lornokto has quit [Client Quit]
<clever> la-s: and llvm randomly segfaults if you use more then 1 core with ghc
lornokto has joined #nixos
<clever> it also happens on arm32 as well
<clever> i ran into it several months back
<la-s> welp
<la-s> it seems to potentially have been fixed though?
<clever> the ticket has a milestone of 8.10.1, so maybe thats the version its fixed in?
<la-s> too bad ghcHEAD doesn't compile on aarch64 lol
<clever> ive had some success with cross-compiling to arm32
<clever> and #haskell.nix on freenode
<clever> its able to cross compile brick, some lens stuff, and basic haskell code
* clever heads off to bed
<cole-h> o/
<srhb> Looks like this is needed too: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/3306
AndersonTorres has quit [Quit: Ambassador 1.3.0 [Pale Moon 28.9.1/20200508233233]]
user_0x58 has joined #nixos
palo1 has joined #nixos
jlv has quit [Remote host closed the connection]
orcus has quit [Quit: ZNC 1.7.5 - https://znc.in]
palo1 is now known as palo
mac has joined #nixos
endformationage has quit [Quit: WeeChat 2.6]
<craftyguy> it seems like folks would want ccache if doing nix-rebuild results in packages being compiled, but I'm having trouble figuring out how to get that enabled for nix-rebuild.. am I wrong?
oida has quit [Ping timeout: 240 seconds]
<mac> Hello! Does anyone use the todoist-electron app? Does not seem to work for me in Gnome3. It works fine in Arch/Manjaro so the app itself seems to be ok. I'm on unstable channel.
mauli has joined #nixos
<simpson> craftyguy: What have you tried so far? AFAIK while desirable, such functionality is still experimental. There's a flake at https://github.com/edolstra/nix-ccache which is meant to transparently give ccache to unsuspecting packages, but it's not ready for general usage yet.
orcus has joined #nixos
<craftyguy> simpson: I have been mostly just searching around trying to find information on how to set it up, and haven't found much. which surprised me, because ccache has been around for ages (I was using it back in like 2004-ish when I used Gentoo)
simba1 has quit [Ping timeout: 260 seconds]
<simpson> craftyguy: We rebuild fewer packages, and we also can use binary caches more readily. But yes, many folks have wanted ccache.
<craftyguy> nix-ccache sounds interesting, but I have no idea how I'd use it. I've only been using NixOS for ~3 days now. so maybe I'm getting far ahead of myself :P
<craftyguy> I made a modification to the luakit package, and nix-rebuild decided to download/build webkitgtk (took ~1.5hrs on my laptop), so I'm not super excited about having to do that again if things get updated
<srhb> craftyguy: iirc last I saw, the benefit wasn't really tangible for actual nix builds.
<srhb> craftyguy: Of course, it can be fine for dev work.
<craftyguy> how so? is nix modifying source files and/or other things ccache uses to determine if the object is in cache?
<simpson> Hm. Careful not to conflate downloading and building; downloading from binary cache is network-bound and can be much faster than building.
<srhb> craftyguy: When last I saw the attempts using recursive nix, the cost of setting up sandboxing etc. for the "sub builds" was prohibitively large
<srhb> craftyguy: iow it was more expensive to use the cache than not.
<craftyguy> simpson: no, it was definitely building webkitgtk, for example
<srhb> It's still an interesting experiment though.
<craftyguy> I see
<simpson> craftyguy: Sure. And webkitgtk (anything on Webkit really) is a big package that takes a while to build.
<craftyguy> simpson: exactly. on my Arch system, subsequent rebuilds, even of new versions of webkitgtk, are substantially faster than the initial build of it. even though ccache hit rate isn't 100%, it's still usually well above 0%
alexherbo2 has joined #nixos
cole-h has quit [Quit: Goodbye]
<mac> Actually, never mind about todoist-electron. I had forgotten to remove the cli version from my packages and they had conflicting names. It works after I removed the cli version.
<srhb> craftyguy: There's a tradeoff though. Using the cache in that way is impure.
<srhb> Again, maybe worth it for some dev work, but hard to get just right with Nix. :)
<craftyguy> srhb: I don't really understand 1) the inner workings of ccache or 2) the nix philosophy around these things and how it might conflict with the inner workings of ccache.. where can I learn more?
<simpson> craftyguy: What srhb said. Impurity is what makes ccache fast; if one doesn't slosh all of the different C modules and files together, then one doesn't get the massive reuse.
<srhb> craftyguy: Consider that ccache uses "prior world knowledge" to speed up things.
<srhb> craftyguy: "purity" (just from the perspective of Nix) means a build is entirely determined from the inputs (this is a slight lie)
<srhb> craftyguy: Using prior world knowledge is an impurity, and is potentially (and often) a hindrance to reproducibility
oida has joined #nixos
<srhb> craftyguy: Which by a lot of people is seen as the killer feature of Nix.
<craftyguy> I always just assumed ccache did something like take take in inputs (source files/headers) and use some hash of that to map to an object it might have
<craftyguy> is the 'impure' aspect that the dependencies an obj in the ccache cache was built with might be different, or are not considered on rebuilds when using ccache?
<srhb> craftyguy: I don't know the inner workings either, but I suspect it's something like that (though probably at an even more fine-grained level?)
<craftyguy> whereas nix is all about making dependencies set/deterministic
<simpson> The irony is that this is 100% toolchain- and semantics-dependent. Languages that compile one-file-one-module can be integrated to give incremental builds with Nix.
<simpson> craftyguy: The impurity is that ccache consults a database at all. Nix allows for one such database, the Nix store, and that's because Nix has rules for how to generate stuff in the store s.t. there's no impure accesses.
<srhb> craftyguy: So ccache might do the very right thing and actual hashing makes the thing morally pure anyway. But Nix doesn't/can't know that, and the entire sandboxing and build system is set up to prevent accidental impurities.
<srhb> craftyguy: Breaking out of it opens the flood gates.
Fulgen has quit [Ping timeout: 244 seconds]
<srhb> What simpson said, it was clearer. :)
<craftyguy> ah! ok, this making sense now. srhb, simpson: thanks for explaining :)
<simpson> Right. There's a theoretical ccache, along with a theoretical hacked-up GCC, that could just be a lot better at this. But, like, so much effort! Something completely written from scratch, like Zig's CC, might be necessary.
<simpson> srhb++ for IMO the clearer explanation.
<{^_^}> srhb's karma got increased to -2147483648
<srhb> *gasp*
<craftyguy> overflow?
<pjt_014> is that -abs(2^32)?
<simpson> Oh jeez, you're in karma detention. Or maybe this is one of infinisil's jokes.
<srhb> Nah, {^_^} is just fooling around.
<srhb> :P
knupfer has joined #nixos
knupfer1 has joined #nixos
<craftyguy> I'm less convinced now that I want ccache for nix-build. though i definitely want it available for manual compilations, but that's easy enough to set up
<srhb> craftyguy: I think that's exactly the right approach currently
<srhb> craftyguy: But do follow along on the experiments, it's a super interesting space.
<craftyguy> yeah for sure :) thanks
alexherbo2 has quit [Quit: The Lounge - https://thelounge.chat]
alexherbo2 has joined #nixos
knupfer has quit [Ping timeout: 260 seconds]
knupfer1 is now known as knupfer
mauli has quit [Ping timeout: 246 seconds]
<ninjin> Hmm… I am almost in some sort of Nix-nirvana at this point: building systems locally, `nix-copy-closure`-ing to boxes, and then `sudo ${derivation}/bin/switch-to-configuration switch` to finish it off – a big thank you to srhb for suggesting this setup.
knupfer has quit [Ping timeout: 256 seconds]
<srhb> ninjin: Oh, you're very welcome. :)
evanjs has quit [Read error: Connection reset by peer]
<ninjin> However, there is one thing I do not get. I tried to update an box by building it locally on my laptop with 20.03, but when I “push” it as I mentioned above it stays on a previous release. I thought `switch-to-configuration` would take care of this and was what `nixos-rebuild switch` called in the end?
<srhb> ninjin: Does /run/current-system point to the newly-pushed system?
evanjs has joined #nixos
<ninjin> srhb: Yes, it does apparently.
<srhb> ninjin: How are you checking the release version?
<ninjin> srhb: Wait, now I got even more confused. `nixos-version` is correct, but the kernel is for the old version despite a reboot.
<srhb> ninjin: And you haven't switched again since reboot?
<ninjin> srhb: Heck no, I rant what I described above, rebooted, checked `uname -a` and got confused.
<ninjin> s/rant/ran/
<srhb> ninjin: and ls -l /run/current-system/kernel is what?
<ninjin> srhb: linux-5.4.42, but `uname -a` shows linux-4.19.113.
* ninjin goes to check `dmesg`
<srhb> ninjin: Compared /run/booted-system/kernel just to be sure
<{^_^}> [nixpkgs] @matthiasbeyer opened pull request #88917 → mutt: 1.14.1 -> 1.14.2 → https://git.io/Jfw3b
<{^_^}> [nixpkgs] @vbgl merged pull request #88463 → ocamlPackages.curly: init at 2019-11-14 → https://git.io/JfgWm
<{^_^}> [nixpkgs] @vbgl pushed commit from @sternenseemann to master « ocamlPackages.curly: init at 2019-11-14 »: https://git.io/Jfw3N
<ninjin> srhb: Good call, that one does disagree.
<srhb> ninjin: So it appears you have switched since booting.
<ninjin> srhb: I will reboot to make sure, I think I rebooted twice but I will never assume that I am unable to mess something up.
<{^_^}> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/d3082a31cd0 (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
<srhb> ninjin: fwiw it can be not-very-visible if the boot entries fail to be written due to say out of space errors
<srhb> ninjin: Somewhere to investigate at least.
<ninjin> srhb: Good point though, the box dates back to when I was less generous with `/boot`. These days I give it a good few GBs rather than a single one.
<srhb> ninjin: Yeah. Reading the output of /run/current-system/bin/switch-to-configuration boot carefully might help diagnose that.
<ninjin> Also happy that my understanding of what the process does is fairly accurate, it was an amazing moment for me when I realised the simplicity in it all.
<srhb> It really is surprisingly simple.
<srhb> It seems like magic at first, but then not. :)
<ninjin> I laughed so hard when I saw the NixOS repo being deleted in favour of nixpkgs at some point. =)
<srhb> Heh, the tight coupling is really helpful.
<ninjin> “What!?!”, into “Of course!”.
<ninjin> srhb: Grrr… Now it booted the right one, oh well. “Magic” for now, or, rather, “possible user error”.
<srhb> ninjin: Ah well. :)
<ninjin> Thanks a ton, now I can clean up the repo of configurations.
marusich has quit [Quit: Leaving]
<{^_^}> [nixpkgs] @sikmir opened pull request #88918 → nnn: 3.1 -> 3.2 → https://git.io/JfwsY
<srhb> ninjin: Enjoy. :)
codygman has quit [Read error: Connection reset by peer]
codygman has joined #nixos
calbrecht has quit [Remote host closed the connection]
xacktm has quit [Ping timeout: 246 seconds]
develCuy_ has joined #nixos
develCuy has quit [Ping timeout: 256 seconds]
<ninjin> srhb: Oh, I will. =) I know I have the task to write an expression that sticks to a fixed version of Alacritty until nixpkgs catches up with stable and I just can not wait. Nix is utter insanity and so hard to describe to those not “getting it”.
datakurre has quit [Ping timeout: 260 seconds]
<ninjin> “Frog in the well” and all that. Akin to how I once challenged a Python programmer to make someone that only knows/loves Java understand dynamic typing when they asked me why I struggled to explain how I thought Julia was “not just speed”.
liff has quit [Ping timeout: 260 seconds]
liff has joined #nixos
codygman has quit [Ping timeout: 256 seconds]
c0c0 has joined #nixos
codygman has joined #nixos
n1x_ has quit [Ping timeout: 256 seconds]
calbrecht has joined #nixos
n1x_ has joined #nixos
datakurre has joined #nixos
user_0x58 has quit [Quit: Leaving]
user_0x58 has joined #nixos
<srhb> ninjin: I will have to look up that idiom. :D
<{^_^}> [nixpkgs] @wamserma opened pull request #88919 → MuPDF: 1.16.1 -> 1.17, PyMuPDF: 1.16.18 -> 1.17.0 → https://git.io/JfwGf
<srhb> ninjin: Ah, I see. Yes, it's a different paradigm, it can be very hard to succinctly explain.
<srhb> Or maybe not even that, but motivate.
mac has quit [Remote host closed the connection]
<{^_^}> [nixpkgs] @rnhmjoj merged pull request #88884 → [20.03] nixos/i2pd: address #63103 → https://git.io/JfVH5
<{^_^}> [nixpkgs] @rnhmjoj pushed 2 commits to release-20.03: https://git.io/JfwG4
civodul has joined #nixos
mauli has joined #nixos
<ninjin> srhb: Or Lisp-style macros to someone that things “macro” means templating. =) I digress though, in summary, Nix is bloody awesome and I have to steal cycles to contribute back. ♥
Chiliparrot has joined #nixos
<srhb> ninjin: :D Glad to hear the enthusiasm.
xacktm has joined #nixos
noudle has joined #nixos
cr4y1 has joined #nixos
mallox has joined #nixos
lsix has joined #nixos
mauli has quit [Ping timeout: 260 seconds]
jkarni_ has joined #nixos
o1lo01ol1o has joined #nixos
<energizer> ninjin: out of curiosity, why is julia not just speed?
<energizer> i guess python has static type checking and julia doesnt, so if you're into dynamism i guess
jkarni_ has quit [Ping timeout: 256 seconds]
rogue_koder has quit [Ping timeout: 258 seconds]
<{^_^}> [nixpkgs] @vbgl opened pull request #88920 → coqPackages.CoLoR: enable for Coq 8.11 → https://git.io/Jfwnt
o1lo01ol1o has quit [Ping timeout: 256 seconds]
<energizer> srhb: what's the advantage of copy-closure/switch-to-config over nixops/morph?
gagbo has joined #nixos
<srhb> energizer: They both use switch-to-configuration underneath the hood. nixops is great if you need provisioning of say cloud resources. Morph is simpler and doesn't support that, but has a lot of quality of life stuff for managing especially sets of many machines, like nixops. switch-to-config is even simpler on its own (of course) and is nice if you don't need any of those features.
jkarni_ has joined #nixos
<srhb> energizer: So for me, it's mostly complexity scale.
<srhb> I use all three methods personally. :)
<energizer> aha
<srhb> Plus a homegrown morph thingy of mine.
<energizer> adis said nixops 2 is gonna be stateless by default, which should be nice
<srhb> Yes, it's definitely something I need to get up to speed on as well :)
anarchomoh[m] has joined #nixos
rogue_koder has joined #nixos
quinn has quit [Quit: ZNC 1.7.5 - https://znc.in]
kvda has joined #nixos
jtcs has quit [Remote host closed the connection]
<{^_^}> [nixpkgs] @Mic92 merged pull request #88645 → idris2: init at version 0.2.0-840e020 → https://git.io/Jfafq
jtcs has joined #nixos
<{^_^}> [nixpkgs] @Mic92 pushed 2 commits to master: https://git.io/Jfwcn
tobeportable has joined #nixos
NeoCron has joined #nixos
maddo has joined #nixos
asymptotically has joined #nixos
user_0x58 has quit [Quit: Leaving]
thc202 has joined #nixos
sb0 has joined #nixos
boolman has quit [Ping timeout: 264 seconds]
boolman has joined #nixos
<{^_^}> [nixpkgs] @Mic92 merged pull request #84515 → ecryptfs: enable building without python2 support → https://git.io/JvAq6
<{^_^}> [nixpkgs] @Mic92 pushed 2 commits to master: https://git.io/Jfwcx
jkarni_ has quit [Ping timeout: 264 seconds]
jkarni_ has joined #nixos
smatting has joined #nixos
<ninjin> energizer: Ack, now I have to explain that which I claimed was hard to explain. '^^
<adisbladis> srhb: I think I've killed of my need to use nixos-rebuild yesterday :)
<adisbladis> Now I'm down to just one method, namely NixOps :)
<ninjin> energizer: Multiple dispatch gives you an interesting approach to library composition, although I am not entirely sure just yet if it scales. For example, the machine learning library Flux has about three lines of code specific to GPUs last time I read the code.
<srhb> adisbladis: I have considered using that method, but haven't quite gotten there! Is that with nixops 2?
<adisbladis> Yes
<adisbladis> I was already using ssh to localhost
<srhb> OK, I guess I really should make time to try it out.
<adisbladis> But yesterday I hacked up pluggable transports
<{^_^}> nixops#1353 (by adisbladis, 10 hours ago, open): Add support for pluggable transports
<adisbladis> So now NixOps can issue commands to localhost
<ninjin> energizer: The rest is simply generated conditioned on the GPU array type. Similarly, you can push custom types onto the GPU without writing specific kernels for it.
<{^_^}> [nixpkgs] @filalex77 merged pull request #88918 → nnn: 3.1 -> 3.2 → https://git.io/JfwsY
<{^_^}> [nixpkgs] @filalex77 pushed 2 commits to master: https://git.io/JfwCn
<ninjin> But, again, I digress, I will keep the Julia evangilism to a minimum. For the record, I only recommend it for scientific computing if you are running into issues with your existing approaches. Not a single one of my PhD students use it.
<energizer> ninjin: that sounds cool
<ninjin> It is a language of the future – I think.
<energizer> interesting
<energizer> i'm of course running into issues with my existing approaches :)
<srhb> There's also nixos-chat where you can evangelize as much as you want, if that's what's holding you back ^^
<adisbladis> srhb: Now I'm really dreaming of having a serial port transport
<srhb> adisbladis: wow, what :D
<srhb> adisbladis: What's the use case? :D
<{^_^}> [nixpkgs] @Mic92 closed pull request #85764 → nodePackages: switch to 12 → https://git.io/JfkMH
<adisbladis> srhb: Embedded devices
<ninjin> srhb: Good call, energizer feel free to ping me there if you want to see me go a bit mental. ;P
<srhb> ninjin++
<{^_^}> ninjin's karma got increased to 2
hooo has joined #nixos
<lewo> adisbladis: wow, this is really cool nixops can now be used without ssh!
<simpson> adisbladis++
<{^_^}> adisbladis's karma got increased to 90
Doraemon has joined #nixos
NeoCron has quit [Read error: Connection reset by peer]
<{^_^}> Channel nixos-20.03-small advanced to https://github.com/NixOS/nixpkgs/commit/556b6f35f6c (from 71 minutes ago, history: https://channels.nix.gsc.io/nixos-20.03-small)
<{^_^}> [nixpkgs] @sikmir opened pull request #88921 → keeweb: init at 1.14.3 → https://git.io/JfwCD
choward has quit [Ping timeout: 246 seconds]
hlisp has joined #nixos
rogue_koder has quit [Ping timeout: 258 seconds]
<{^_^}> [nixpkgs] @CheariX opened pull request #88922 → joplin-desktop: 1.0.201 -> 1.0.216 → https://git.io/JfwWk
zupo has joined #nixos
alexherbo2 has quit [Quit: The Lounge - https://thelounge.chat]
<{^_^}> [nixpkgs] @lsix merged pull request #84606 → nano: 4.9.1 -> 4.9.2 → https://git.io/JvAia
<{^_^}> [nixpkgs] @lsix pushed 2 commits to master: https://git.io/JfwWL
alexherbo2 has joined #nixos
magnetophon has quit [Read error: Connection reset by peer]
alexherbo2 has quit [Client Quit]
magnetophon has joined #nixos
mauli has joined #nixos
matthewcroughan has quit [Ping timeout: 264 seconds]
alexherbo2 has joined #nixos
alexherbo2 has quit [Client Quit]
choward has joined #nixos
<{^_^}> [nixpkgs] @evils opened pull request #88923 → kicad: link through /lib and /share from kicad.base → https://git.io/JfwWB
agsdheidjd has joined #nixos
pjt_014 has quit [Ping timeout: 260 seconds]
alexherbo2 has joined #nixos
<joko> Hey, has anyone issues with Pulseaudio on 20.03? I've just updated my server and noticed that shairport-sync stopped working due to Pulseaudio. I've found also this: https://discourse.nixos.org/t/pulseaudio-not-started-after-upgrade-to-20-03/7126, but no other feedback
<LnL> is this after a switch or boot?
Izorkin has quit [Ping timeout: 256 seconds]
<{^_^}> [nixpkgs] @shahrukh330 opened pull request #88924 → fastlane: 2.128.1 -> 2.148.1 → https://git.io/JfwWN
<LnL> if you haven't rebooted yet things can behave strangely with major upgrades
Izorkin has joined #nixos
<joko> LnL: after both
bhipple has quit [Remote host closed the connection]
<joko> So, I have also rebooted by now
o1lo01ol1o has joined #nixos
<joko> 0.002160682 "audio_pa.c:130" *fatal error: failed to connect to the pulseaudio context -- the error message is "Connection refused" is the message I get
<joko> And "sudo -u shairport pacmd list-sinks" reports "No PulseAudio daemon running, or not running as session daemon."
<joko> (it worked before)
mauli has quit [Ping timeout: 260 seconds]
oida has quit [Remote host closed the connection]
oida has joined #nixos
o1lo01ol1o has quit [Ping timeout: 258 seconds]
hmpffff has joined #nixos
alexherbo2 has quit [Quit: The Lounge - https://thelounge.chat]
alexherbo2 has joined #nixos
alp has joined #nixos
<{^_^}> [nixpkgs] @davidtwco opened pull request #88926 → pastel: 0.7.1 -> 0.8.0 → https://git.io/Jfw8v
<adisbladis> That's as designed I think.
<adisbladis> joko: Unless you are running pulseaudio system-wide I wouldn't expect that to work.
lornokto has quit [Remote host closed the connection]
jkarni_ has quit [Quit: Lost terminal]
<adisbladis> And running PA in system-wide mode comes with some pretty big caveats and warning stickers
lornokto has joined #nixos
Neo-- has joined #nixos
<{^_^}> [nixpkgs] @Moredread opened pull request #88927 → zerofree: install manpage and COPYING file → https://git.io/Jfw8P
hmpffff has quit [Quit: nchrrrr…]
<joko> adisbladis: but in 19.09 I have the impression it was working without system-wide pulseaudio, the local user was able to start a user unit of pulseaudio and get it done...
hmpffff has joined #nixos
hlisp has quit [Ping timeout: 258 seconds]
<adisbladis> joko: Maybe you had some configuration to use PA over TCP or something like that?
<adisbladis> In any case, this is how pulseaudio works
o1lo01ol1o has joined #nixos
<joko> adisbladis: I did, yes
kenran has joined #nixos
<{^_^}> [hydra] @knl opened pull request #768 → Improve handling of Perl's block eval errors → https://git.io/Jfw8p
Neo-- has quit [Ping timeout: 256 seconds]
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Reventlov has quit [Quit: WeeChat 2.8]
<joko> Hm, /etc/systemd/user/pulseaudio.service seems also to be more complex, I'll check that, too
o1lo01ol1o has quit [Ping timeout: 272 seconds]
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
vidbina has joined #nixos
wspthr has quit [Quit: The Lounge - https://thelounge.chat]
hlisp has joined #nixos
mauli has joined #nixos
zupo has joined #nixos
<{^_^}> [nixpkgs] @edolstra pushed to master « nixFlakes: 2.4pre20200501_941f952 -> 2.4pre20200521_00b562c »: https://git.io/Jfw4P
<{^_^}> [nixpkgs] @andrea96 opened pull request #88928 → navidrome: init at 0.20.0 → https://git.io/Jfw4y
zupo has quit [Client Quit]
<{^_^}> [hydra] @knl opened pull request #769 → Make --no-allow-import-from-derivation configurable in hydra-eval-jobset → https://git.io/Jfw47
<{^_^}> [nixpkgs] @geistesk opened pull request #88929 → hash_extender: 2017-04-10 -> unstable-2020-03-24 → https://git.io/Jfw45
__monty__ has joined #nixos
cfricke has joined #nixos
hlisp has quit [Ping timeout: 246 seconds]
hlisp_ has joined #nixos
sigmundv__ has joined #nixos
hlisp_ has quit [Client Quit]
hlisp has joined #nixos
<{^_^}> [nixpkgs] @edolstra pushed 4 commits to release-20.03: https://git.io/JfwB6
mauli has quit [Ping timeout: 256 seconds]
sibachian[m] has joined #nixos
vidbina has quit [Ping timeout: 240 seconds]
magnetophon has quit [Remote host closed the connection]
<{^_^}> [nix] @domenkozar opened pull request #3628 → 2.3 installer fixes → https://git.io/JfwRO
mauli has joined #nixos
<joko> https://github.com/NixOS/nixpkgs/commit/361b5f7f6533c2b597057805b16bdf229d675d15#diff-dcb2fc296ed67f0f42bc163e105e7e44 was the problem for my case. It appears that shairport-sync is not using the pa socket
<joko> But ultimately I find the decision not to autospawn correct, I'll adapt the user's .pulse/client.conf accordingly
andreas303 has quit [Quit: andreas303]
andreas303 has joined #nixos
simba1 has joined #nixos
ninjin has quit [Remote host closed the connection]
ninjin has joined #nixos
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88930 → ocamlPackages.ppx_tools_versioned: 5.3.0 -> 5.4.0 → https://git.io/Jfw0I
mauli has quit [Ping timeout: 246 seconds]
<{^_^}> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/9f11766df5b (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
<{^_^}> Channel nixpkgs-20.03-darwin advanced to https://github.com/NixOS/nixpkgs/commit/556b6f35f6c (from 3 hours ago, history: https://channels.nix.gsc.io/nixpkgs-20.03-darwin)
<{^_^}> [nixpkgs] @jtcoolen opened pull request #88931 → graphql_ppx: init at 0.7.1 → https://git.io/Jfw0u
cosimone has joined #nixos
ninjin has quit [Quit: WeeChat 2.7.1]
o1lo01ol1o has joined #nixos
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88932 → parallel: 20200422 -> 20200522 → https://git.io/Jfw0H
zupo has joined #nixos
<hyper_ch_> hmmm, just found a nice qr code generator for the cli... too bad it's not packaged
sneakweb has joined #nixos
orivej has joined #nixos
o1lo01ol1o has quit [Ping timeout: 256 seconds]
<sneakweb> hiya. i've found a nix package in git that i want to install to my system. other than cloning it and doing a nix-env -f, is there a recipe for pulling it in?
<hyper_ch_> is it a .nix file?
<makefu> hyper_ch_: qrencode is not cool enough? or do you want to include pictures into the code?
<hyper_ch_> sneakweb: I have things like this in my configuration.nix (pkgs.callPackage (builtins.fetchurl "https://raw.githubusercontent.com/sjau/pastesl/master/pastesl.nix") {})
<hyper_ch_> makefu: I don't know qrencode
<hyper_ch_> makefu: just stumbled accross https://segno.readthedocs.io/en/stable/command-line.html
<makefu> echo "hello world" | nix-shell -p qrencode --run 'qrencode -t utf8'
<hyper_ch_> ok, there's qrencode :) thx
<makefu> i use this mode to transfer stuff from my laptop to the phone without any cloud stuff
<hyper_ch_> makefu: :) well, I run my own pastebin that by default hasn't guessable urls and by default deletes pastes after a while
<makefu> still cloudy network stuff. it is mostly about passwords that are waaaay too long
cmk_zzz_ has quit [Ping timeout: 256 seconds]
<hyper_ch_> well, I was just looking for it because somebody wrote in a forum they setup wg and the public key created was typed from the raspi cli to his phone :)
ok2`- has joined #nixos
cosimone has quit [Remote host closed the connection]
cosimone has joined #nixos
cmk_zzz has joined #nixos
ok2` has quit [Ping timeout: 240 seconds]
ok2`- is now known as ok2`
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
alp has quit [Ping timeout: 260 seconds]
fendor has joined #nixos
<adisbladis> I can highly recommend kdeconnect for this
Fulgen has joined #nixos
<adisbladis> Contrary to the name it's not actually tied with KDE (plasma), you can use it with other DEs/WMs
<hyper_ch_> kdeconnect for?
<adisbladis> Copying data to/from a phone without cloud
<adisbladis> You can also get clipboard sync
<hyper_ch_> ah, never really looked at that. thx
<{^_^}> [nixpkgs] @knl opened pull request #88933 → 1password: 0.10.0 -> 1.0.0 → https://git.io/JfwER
magnetophon has joined #nixos
<freeman42x[m]1> How can I update the following so that `nix-shell` will provide `cabal-install` and `ghc` in path when run? https://gist.github.com/razvan-flavius-panda/c6b5f6477a5d91e81a6b5f0035040b21
wavirc22 has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
wavirc22 has joined #nixos
mauli has joined #nixos
hmpffff has quit [Quit: nchrrrr…]
orivej has quit [Quit: No Ping reply in 180 seconds.]
magnetophon has quit [Read error: Connection reset by peer]
orivej has joined #nixos
magnetophon has joined #nixos
alp has joined #nixos
<{^_^}> [nixpkgs] @Flakebi opened pull request #88934 → cppcheck: enable z3 support → https://git.io/JfwuL
magnetophon has quit [Read error: Connection reset by peer]
c0c0 has quit [Ping timeout: 256 seconds]
simba1 has quit [Ping timeout: 260 seconds]
magnetophon has joined #nixos
c0c0 has joined #nixos
mauli has quit [Ping timeout: 244 seconds]
orivej has quit [Read error: Connection reset by peer]
orivej has joined #nixos
mudrii[m] has joined #nixos
noudle has quit []
orivej has quit [Ping timeout: 272 seconds]
orivej_ has joined #nixos
o1lo01ol1o has joined #nixos
<gmr> <freeman42x[m]1 "How can I update the following s"> nix-shell provides the libraries to build the "target" - not necessarily the target itself. you might need to describe a little more of what you're trying to accomplish before you get pointed in the right direction (as is often the case with nix)
<freeman42x[m]1> gmr: I just want `ghc` to be in PATH inside nix-shell
Guest20896 has quit [Quit: ZNC 1.7.4 - https://znc.in]
hlisp has quit [Remote host closed the connection]
knupfer has joined #nixos
knupfer1 has joined #nixos
jbox has joined #nixos
jbox is now known as Guest82147
hlisp has joined #nixos
<freeman42x[m]1> balsoft++ , thank you very much
<{^_^}> balsoft's karma got increased to 5
<{^_^}> [nixpkgs] @max-wittig opened pull request #88935 → gitlab-runner: 12.10.2 -> 13.0.0 → https://git.io/Jfwzy
Darkmatter66_ has joined #nixos
<balsoft> For anybody wondering, the solution was let pkgs = import <nixpkgs> {}; in (import ./.).env.overrideAttrs (_: { shellHook = ''PATH="$PATH:${pkgs.ghc}/bin:${pkgs.cabal-install}/bin"''; })
lornokto has quit [Quit: Leaving]
<betaboon> should autoconf go in `buildInputs` or `nativeBuildInputs` ?
knupfer has quit [Ping timeout: 260 seconds]
knupfer1 is now known as knupfer
<balsoft> betaboon: most likely nativeBuildInputs
Darkmatter66 has quit [Ping timeout: 256 seconds]
hlisp has quit [Ping timeout: 258 seconds]
<betaboon> balsoft: i was just confused. in nixpkgs there seem to be almost the equal amount for both cases :/
<balsoft> betaboon: I think it's because of historic reasons mostly.
<symphorien[m]> betaboon: when in doubt, add strictDeps = true to your derivation
<symphorien[m]> it should fail if you used the wrong one
<balsoft> symphorien: correct me if I'm wrong, but it only fails when you mistakenly put a native dependency in buildInputs, not the other way around?
<symphorien[m]> iirc the cross compiler cannot see libs in nativeBuildInputs
<symphorien[m]> but I may be wrong
<{^_^}> [nixpkgs] @NickHu merged pull request #78361 → mopidy-mpris: init at 3.0.1 mopidy-somafm: init at 2.0.0 mopidy-youtube: 2.0.2 -> 3.0 mopidy-gmusic: 3.0.0 -> 4.0.0 → https://git.io/JvtGV
<{^_^}> [nixpkgs] @NickHu pushed 5 commits to master: https://git.io/Jfwzp
raghavsood has quit [Remote host closed the connection]
<betaboon> symphorien[m]: I'm just in the process of crosscompiling for armv7. and i get failures for `pixz` about `autoreconf: not found` then `aclocal` not found. `pixz` has automake and autoconf in `buildInputs`. when i add those to `nativeBuildInputs` it fails in a different manner tho xD
<symphorien[m]> ah if you are cross compiling strictDeps is implied
<betaboon> something about `checking for src/pixz.1... configure: error: cannot check for file existence when cross compiling` :/
alexherbo2 has quit [Ping timeout: 260 seconds]
<symphorien[m]> no idea how to bypass this. Probably one of those undocumented ac_cv_foo variables
<balsoft> symphorien: ah, so it's the other way around then...
<symphorien[m]> I thought it was both ways
<balsoft> symphorien: I'll look at it again, I must be wrong
<betaboon> I'm trying to build a tarball to be used as nfsroot for armv7 devices. thats fun XD
<balsoft> betaboon: Maybe take a look at https://github.com/telent/nixwrt ?
<balsoft> While the scope of that project is wider, it might have encountered similar issues
<betaboon> balsoft: thanks for the pointer.
spherinder[m] has joined #nixos
vidbina has joined #nixos
<betaboon> balsoft: I'm using orange-pi-zero-lts which has an spi-flash. got as far as running u-boot, fetching a u-boot script via tftp, then loading armbian via nfs (no storage device in the pi). got a nixos-sd-card crosscompiled working as well. now trying to get nixos booted from nfs :D
<NickHu> How do I get `nix build` to give me output more similar to `nix-build`? Having the full output is really useful for debugging
<NickHu> Adding a `-v` flag doesn't really do it
AmandaC_ has joined #nixos
<NickHu> betaboon: My intuition from it is nativeBuildInputs is like makedepends from arch pkgsbuilds
<balsoft> `-L`
<NickHu> So things like automake (maybe autoreconfHook is better though?) and docgen stuff go there
<betaboon> NickHu: i have no clue about arch. so sadly that analogy doesnt work in my head XD
AmandaC has quit [Ping timeout: 246 seconds]
<NickHu> Well it's the dependencies that are needed to build a package but not necessarily run it
KeiraT has quit [Remote host closed the connection]
<NickHu> It's not a perfect analogy anyway
<balsoft> nickhu: nix build -L should do what you want
KeiraT has joined #nixos
<betaboon> NickHu: I got a small overlay that holds all the quirks that i have to apply to nixpkgs to the crosscompile working. might have to upstream those when I'm done :D
<{^_^}> [nixpkgs] @riso opened pull request #88936 → androidenv: add missing emulator dynamic libraries → https://git.io/Jfwgu
<freeman42x[m]1> balsoft: any idea how can I get this to work? https://gist.github.com/razvan-flavius-panda/2dc855ee17eb382c2ec9a09e0c585177
<NickHu> balsoft: Unfortunately it doesn't seem to print the output path on successful build like nix-build does
<NickHu> `man nix` isn't helpful either
<NickHu> and `nix build --help` has no mention of `-L` ☹︎
<balsoft> nickhu: nix --help has it under "Common Flags" or something
<xfix> the idea of `nativeBuildInputs` has to do with cross-compiles
<balsoft> nickhu: I think nix eval --raw nixpkgs.hello should do what you want then
<balsoft> freeman42x: You have an extra pkgs. in there ;)
<xfix> for example, say you are building a program for ARM and you are currently on x86 machine, and you want to build a program whose build depends on `perl`, you want x86 version of Perl (and thus enter it in `nativeBuildInputs`), because your computer won't execute ARM version of Perl
dxtr has quit [Ping timeout: 260 seconds]
<NickHu> balsoft: ah I see, thanks!
<balsoft> freeman42x: cleaned up a bit and potentially fixed it: https://0x0.st/ipYY.txt
<NickHu> I really should take some time to learn the `nix` command but I'm so used to the old ones...
b42 has quit [Ping timeout: 260 seconds]
dxtr has joined #nixos
<balsoft> nickhu: new nix stuff is honestly exciting, I can really see how UX has improved a lot
<NickHu> I asked in here the other day, but is there like a status page or something for the new command to track what functionality hasn't been ported yet?
<xfix> typically the rule is that libraries go into `buildInputs`, and executable programs go into `nativeBuildInputs`
<freeman42x[m]1> balsoft: awesome, works great, thank you! balsoft++
<{^_^}> balsoft's karma got increased to 6
<balsoft> nickhu: I'm pretty sure that most of the functionality is already here in nixFlakes
orivej_ has quit [Ping timeout: 258 seconds]
<balsoft> nix-shell -> nix shell and nix dev-shell, nix-build and nix-instantiate -> nix build and nix eval, nix-env -> nix profile, etc
orivej has joined #nixos
<balsoft> I think only nix-store is still somewhat needed
dxtr has quit [Ping timeout: 260 seconds]
dxtr has joined #nixos
hmpffff has joined #nixos
hmpffff has quit [Client Quit]
<{^_^}> Channel nixos-20.03-small advanced to https://github.com/NixOS/nixpkgs/commit/29cc418d945 (from 3 hours ago, history: https://channels.nix.gsc.io/nixos-20.03-small)
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos
hmpffff has joined #nixos
<{^_^}> [nixpkgs] @NickHu merged pull request #88036 → zsh-prezto: 2019-03-18 -> 2020-05-02 → https://git.io/JfEOM
<{^_^}> [nixpkgs] @NickHu pushed 2 commits to master: https://git.io/Jfw2q
plp_ is now known as plp
mauli has joined #nixos
agsdheidjd has quit [Ping timeout: 260 seconds]
agsdheidjd has joined #nixos
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #nixos
drakonis has joined #nixos
drakonis_ has quit [Read error: Connection reset by peer]
sb0 has quit [Quit: Leaving]
b42 has joined #nixos
<bqv> balsoft: nix-store -> nix path-info and nix show-derivation, at least partially
<bqv> is there a types.??? for "function that returns package?"
<bqv> or, "function that returns types.???" in general?
<pbb> etu: neo-layout.org
<balsoft> bqv: What would be the reason for such a type? It can't be checked
<balsoft> > x: if x == 0 then pkgs.hello else 1
<{^_^}> <LAMBDA>
<bqv> i want it to be checked :(
<balsoft> What I meant by that example is that nix is dynamically typed, so a lambda can return a value of any type, there's no way to check that AFAIU
<bqv> yeah i know, that makes sense
<bqv> i was hoping for some nixpkgs wizardry
<balsoft> I think you just need to refactor stuff a bit?
mauli has quit [Ping timeout: 258 seconds]
<balsoft> Like, apply that function in a way that its result is then typechecked
<bqv> not really possible
<bqv> i mean it will be checked anyway
<bqv> it won't build without it being the right type
<balsoft> Or just add an assertion on the return value
<bqv> just really uncomfortable to be defining something as "types.unspecified"
<bqv> i'm trying to think of a nice statically checked way of doing this
zupo has joined #nixos
<balsoft> Maybe you can shed more light on the context here?
<{^_^}> [nixpkgs] @lsix opened pull request #88937 → nano: 4.9.2 -> 4.9.3 → https://git.io/Jfwam
<bqv> so i have a config option that is an indirection for an attrset of packages, like python in nixpkgs
<bqv> so the option should be set to something like `ps: ps.package`
<balsoft> May I suggest an enum?
<bqv> you may, i don't like that at all
<balsoft> So the option is set to "package"
noudle has joined #nixos
<bqv> i mean reasonably speaking, it's a sensible option, but i hate the idea of using a string for indirection
<bqv> it's almost as hacky as my other idea of having a template attrset that just gives enough information for the eval to get the name and go fetch the value from the actual attrset
<balsoft> We don't have atoms in nix AFAIU, so... I guess it's the best option here
<balsoft> Oh
<balsoft> You know what?
felixfoertsch has quit [Quit: ZNC 1.7.5 - https://znc.in]
<balsoft> Maybe you can use a __functor here
wavirc22 has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
<bqv> ooh
kole has joined #nixos
<balsoft> Although I'm not sure if it will help, it can allow you to force your functions arguments
felixfoertsch has joined #nixos
<bqv> hmm
wavirc22 has joined #nixos
<bqv> tbh i guess what i'm trying to achieve here basically amounts to adding a typesystem to nix, i should probably just suck it up and use strings
<{^_^}> [nixpkgs] @NickHu merged pull request #88651 → profile-sync-daemon: 6.38 -> 6.40 → https://git.io/JfaT9
<{^_^}> [nixpkgs] @NickHu pushed 2 commits to master: https://git.io/JfwaF
<{^_^}> [nixpkgs] @marsam merged pull request #88926 → pastel: 0.7.1 -> 0.8.0 → https://git.io/Jfw8v
<betaboon> anyone knows if it is possible to bind-mount a tarfile using `fileSystems` ?
<{^_^}> [nixpkgs] @marsam pushed 2 commits to master: https://git.io/Jfwap
<{^_^}> [nixpkgs] @marsam merged pull request #88932 → parallel: 20200422 -> 20200522 → https://git.io/Jfw0H
<{^_^}> [nixpkgs] @marsam pushed 2 commits to master: https://git.io/JfwVk
Rusty1 has joined #nixos
hlisp has joined #nixos
<{^_^}> [nixpkgs] @marsam merged pull request #88908 → jetty: 9.4.26.v20200117 -> 9.4.29.v20200521 → https://git.io/JfwvJ
<{^_^}> [nixpkgs] @marsam pushed 2 commits to master: https://git.io/JfwVC
c0c0 has quit [Ping timeout: 240 seconds]
<srid> I'm trying to install NixOS on OVH dedicated server via nixos-infect, and hitting this error at the end:
<srid> > mv: cannot move '/boot' to '/boot.bak': Device or resource busy
<{^_^}> error: syntax error, unexpected $undefined, expecting ')', at (string):312:17
<srid> Any idea how I can move past it?
kole has quit [Remote host closed the connection]
ppp has joined #nixos
simba1 has joined #nixos
imalsogreg has quit [Remote host closed the connection]
hlisp has quit [Ping timeout: 256 seconds]
hlisp_ has joined #nixos
<eyJhb> Is there a good alternative to this `lockCmd = "/run/wrappers/bin/physlock -dsm";` ? When I just use physlock, it will not work since it gets wrapped with security.wrappers
<eyJhb> Can I give it the NIX path beforehand?
<eyJhb> If so , how?
<dminuoso> srid: Figure out whats keeping an open file on boot.bak with lsof?
<dminuoso> *open file handle
<dminuoso> What I find is strange is that rm -rf /boot.bak did not fial
<srid> /boot is mounted
<dminuoso> Not the directory, the file /boot.bak
<dminuoso> Oh wait, thats a directory too
<{^_^}> [nixpkgs] @WilliButz opened pull request #88938 → grafana: 7.0.0 -> 7.0.1 → https://git.io/Jfww3
<dminuoso> Meaningless distinction for the discussion tohugh
<dminuoso> The problem is that something has an open file handle on the target directory or one of its files during the command `mv -v /book /boot.bak`
<dminuoso> So /boot.bak or one of its files is opened.
<dminuoso> You can in fact probably get away not creating the boot.bak at all
ppp has quit [Remote host closed the connection]
<srid> dminuoso: Not sure why you are convinced that /boot.bak is the problem, and not that the problem is with moving /boot from where it is
<srid> Well I tried that. Then nixos switched failed
<dminuoso> Mmm, I admit I dont actually know how mv works internally.
<dminuoso> srid: Any processes having open file handles in /boot?
meh` has joined #nixos
gustavderdrache has joined #nixos
simba1 has quit [Ping timeout: 260 seconds]
jbox has joined #nixos
<jbox> I'm trying to install the 1.4.0.3 terraria server from here: https://nixos.org/nixos/packages.html?attr=terraria-server&channel=nixpkgs-unstable&query=terraria
<jbox> I've added nixpkgs-unstable to my nix channels, but I can't see it in the output of nix search
c0c0 has joined #nixos
fusion809 has quit [Remote host closed the connection]
<ar> jbox: have you tried updating nix search cache?
Guest82147 has quit [Quit: ZNC 1.7.4 - https://znc.in]
<meh`> I think I found an issue in libvirt.nix, is there a good way to test out my hypothesis without needing my own channel thingy? trying to override an option to have a different type
<meh`> erm, meant ceph.nix
jbox- has joined #nixos
orivej has quit [Quit: No Ping reply in 180 seconds.]
<kloenk> I don't realy understand these RFC meetings. Is everybody free to join the RFC meeting or is it a closed thing, where you are just able to see the output?
orivej has joined #nixos
<jbox> ar: I've tried updating the nix search cache with `nix search -u terraria-server`. It just shows nixos-unstable, nixos, and nixpkgs.
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
symphorien[m] has left #nixos ["User left"]
<ar> jbox: just "nix search -u"
<evanjs> Is there anything in the docs re the sort of stuff nixos-generators does? Like, if I want to generate VM images from an expressino
<evanjs> It's been sort of difficult to reason about/piece things together just from examples. I thought I had things mostly working, but ran into some weird issues with derivations that were unable to be realised, etc ...
<srid> Has anyone tried installling nixos on OVH using this method? https://discourse.nixos.org/t/howto-install-nixos-on-an-ovh-dedicated-server/3089
noudle has quit []
<emily> kloenk: I believe the latter.
<emily> meh: that is wrong, yes
kevin1024 has joined #nixos
<emily> meh`: I think you can do something like `options.services.ceph.client.extraConfig = mkOption { type = ...; };`
<kevin1024> Hello! So I'm trying to run this docker image: https://hub.docker.com/r/jdelaros1/openmanage/. but in order for it to run, it needs a path to the kernel modules. On most distros, it's located at /lib/modules/`uname -r` - where do I find this on nixos?
<emily> not sure exactly how it works. (wow, your IRC nick is really breaking all my matrix clients horribly, embarrassing.)
<meh`> emily, oof, sorry about that
<emily> meh`: worst case you can just copy-paste the entire mkOption and change the type
<meh`> emily, I did that before, so I think I just set up overlays wrong
<emily> heh, it's ok, just amusing to see them barf on the "markdown" :)
<emily> you can't do it in an overlay, overlays are for nixpkgs
remirol is now known as lorimer
<emily> this would go in your NixOS configuration
<meh`> emily, oooh
<emily> remember, your NixOS configuration is just another NixOS module ^^
<emily> so you can monkeypatch pretty much anything from it
<meh`> makes sense
<meh`> emily, does mkOption come from lib?
<emily> yep
<meh`> aight
lornokto has joined #nixos
<emily> types too
<adisbladis> kevin1024: /run/current-system/kernel-modules
<kevin1024> cool, thanks
kenran has quit [Quit: leaving]
dckc has quit [Ping timeout: 260 seconds]
<meh`> emily, aight, thanks, now getting some complaints about unsupported attributes because top level options but I'm sure I can figure this out on my own
<emily> meh`: oh, hm, maybe you need to split it out into an `imports = [ ... ]`? I never really understood the thing where modules set config in `config.*` but NixOS configuration sets it without the prefix, but it might be related to that
<lornokto> can you set kde global theme somehow? Installing them via standard tool in settings seems to work, but new themes aren't displayed in list
<jbox> ar: nix search -u does the same thing but lists all available packages
<emily> I should probably actually figure out what's up with that
<meh`> emily, nah, just need to wrap everything in config = { }
<meh`> emily, but now getting a complain that extraConfig is already defined
ramses_ has joined #nixos
<lornokto> Wallpapers work in almost same way, but they work in NixOS unlike global themes
<ar> jbox: so "nix search terraria", after the "nix search -u", still doesn't show anything?
<emily> meh`: I wonder if you can lib.mkForce it... probably not
<emily> at this point it might be best to just use a nixpkgs fork and -I nixpkgs=...
<emily> that's what I do because it's simpler than figuring out how to monkeypatch things and easier to make a PR out of
<meh`> emily, I guess if I want to make a PR for it I need to do that anyway
<emily> you can base it on the nixos-unstable or nixos-20.03 branches to keep the binary caches
<ramses_> Is there any way to profile the evaluation of a nix expression? Evaluating the nixos profile of several of my servers takes 20+ secs, which seems a bit long to me, but I don't know how to find the potentially badly-written parts of my config
dckc has joined #nixos
<bqv> kevin1024: you might wanna use booted-system instead, in case kernel changes since boot
<{^_^}> [nix] @domenkozar pushed to master « Fix installer script bugs »: https://git.io/JfwrV
<kevin1024> oh, cool, didn't know about that.
<bqv> emily: a module is { imports, options, config } but if options isn't present, config can be exploded to toplevel
<kevin1024> Is there any way to template in the current kernel version into configuration.nix? In a bash script I would use a subshell with $(uname -r)
<bqv> config.boot.kernelPackages.kernel.version, or something?
orivej has quit [Ping timeout: 258 seconds]
<kevin1024> oh, neat. So I can interpolate that into a string? that's awesome.
orivej has joined #nixos
<lornokto> I use `boot.kernelPackages = nixpkgs_20_03.linuxPackages_latest` and nixpkg_20_03 is pinned, that way I always have same kernel version
<bqv> > linuxPackages.kernel.version
<{^_^}> "5.4.42"
<bqv> kevin1024: ^ thats what it would output
<bqv> Presumably that's ok
<kevin1024> yep that's perfect
<lornokto> > linuxPackages.kernel_latest
<{^_^}> attribute 'kernel_latest' missing, at (string):312:1
<bqv> > linuxPackages_latest.kernel.version
<{^_^}> "5.6.14"
<lornokto> yeah, thats my one ) I also add custom kernel module and modprobe settings
<balsoft> > "${linuxPackages.kernel.version} in a string!"
<{^_^}> "5.4.42 in a string!"
<balsoft> kevin1024: that's how you interpolate
dckc has left #nixos ["Leaving"]
veleiro has joined #nixos
hlisp_ has quit [Ping timeout: 265 seconds]
hlisp has joined #nixos
<veleiro> I'm not understanding the support for cross compiling in nixos, so it works great in nixpkgs (meaning software there), but not for cross compiling nixos itself?
<lornokto> most packages in nixpkgs, including cross-compilers, are well-tested only on nixos.
<lornokto> so maybe you can cross-compile nix itself, but you'll have problems using nixpkgs packages for cross-compiled version of nix... I think.
<bqv> Nixos is more than just code, its a load of infrastructure arrangements, not all of which even make sense on other arches let alone platforms
<{^_^}> [nixpkgs] @stigtsp opened pull request #88940 → convos: init at 4.12 → https://git.io/JfwoU
morgrimm has joined #nixos
<morgrimm> Morning folks - what's the easiest way to wrap a derivation bin so it'll call it with the same args?
<morgrimm> basically I just want to add a few default flags to it, but I want to use those everywhere
orivej has quit [Ping timeout: 256 seconds]
<{^_^}> [nixpkgs] @charles-dyfis-net closed pull request #87162 → brave: 1.7.92 -> 1.8.90 → https://git.io/Jfnle
orivej has joined #nixos
fpob_ has quit [Ping timeout: 265 seconds]
<balsoft> morgrimm: wrappers
lornokto has quit [Quit: Leaving]
<balsoft> Or simpler, something with writeShellScript
<morgrimm> I thought makeWrapper/wrapProgram were meant for make/nix flag addition and stuff
<balsoft> > pkgs.writeShellScript "hello-wrapped" "${pkgs.hello}/bin/hello -g 'Foo bar'"
rogue_koder has joined #nixos
<{^_^}> "<derivation /nix/store/hc4q6s8h1nshmf1qh6nprskygm32xxka-hello-wrapped.drv>"
ilios has joined #nixos
<symphorien> makeWrapper makes a wrapper. It has nothing to do with the tool
<symphorien> makeWrapper can add a default flag
<adisbladis> bqv++
<{^_^}> bqv's karma got increased to 11
<adisbladis> Re booted-system
<adisbladis> Good gatch
<adisbladis> catch*
hlisp has quit []
<bqv> :)
fpob has joined #nixos
cosimone has quit [Remote host closed the connection]
cosimone has joined #nixos
leotaku has joined #nixos
<morgrimm> symphorien: I can use makeWrapper to just append args to it? for example, wrap a bin to call the bin with args?
<symphorien> Yes
<morgrimm> Sweet, alright
<morgrimm> Thanks!
<symphorien> I don't remember the option name though
<{^_^}> [nix] @domenkozar pushed to master « installer: fix unused variable »: https://git.io/Jfwoj
<morgrimm> I'm just looking at the build support file now, seeing what's there
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #nixos
<morgrimm> there's an addSuffix option, to add suffixes
<morgrimm> I can't tell from the docstring if that's meant for env vars for the binary though
mauli has joined #nixos
<hyper_ch_> I have a strange issue:
<hyper_ch_> mount -vvv /dev/disk/by-uuid/2890-1654 /boot
<hyper_ch_> mount: /dev/sde1 mounted on /boot.
<hyper_ch_> but when I check if /boot is mounted, it's not...
lsyoyom has joined #nixos
<hexagoxel> why does my derivation get run during build-time? I am using runCommand, which I believe boils down to mkDerivation.
leotaku has quit [Ping timeout: 260 seconds]
leotaku_ has joined #nixos
<hexagoxel> wait, maybe my terminology is still off there, one sec
<hexagoxel> yeah it was off. I mean: why does my derivation get run during instantiation time?
<{^_^}> [nixpkgs] @matthewbauer closed pull request #61202 → glibc: add patch to use utf-8 when LANG is unset → https://git.io/fjCOI
<{^_^}> [nixpkgs] @romildo opened pull request #88941 → zuki-themes: 3.34-2 -> 3.36-1 → https://git.io/JfwKn
<infinisil> ,IFD hexagoxel
<{^_^}> hexagoxel: import-from-derivation (IFD) is when you evaluate nix from a derivation result, for example `import (pkgs.writeText "n" "1 + 1")` will evaluate to 2. This is sometimes problematic because it requires evaluating some, building some, and then evaluating the build result. It has been described as "such a nice footgun."
<hexagoxel> I don't think I am importing the derivation though, which is the confusing part
<{^_^}> [nixpkgs] @peterhoeg opened pull request #88942 → powerdevil: add DDC support → https://git.io/JfwKC
<hexagoxel> I am importing the file that calls runCommand, but not the output
<hexagoxel> although it is possible I overlook something, this stuff gets hairy so quickly :/
<hexagoxel> are you saying that IFD is the only way that a derivation will get run during instantation-time ?
mallox has quit [Quit: WeeChat 2.8]
<{^_^}> [nixpkgs] @WilliButz merged pull request #88938 → grafana: 7.0.0 -> 7.0.1 → https://git.io/Jfww3
<{^_^}> [nixpkgs] @WilliButz pushed 2 commits to master: https://git.io/JfwKR
<balsoft> hexagoxel: technically, derivations don't get run, they get built. And yes, IFD should be the only way that could happen.
<balsoft> hexagoxel: Maybe you could pastebin the relevant parts of expressions you're building?
johnw has joined #nixos
<hexagoxel> right, thanks. I'll keep looking, there is one wrapper left that might be doing an import.
<{^_^}> [nixpkgs] @romildo opened pull request #88943 → xfce.thunar: 1.8.14 -> 1.8.15 → https://git.io/JfwKP
waleee-cl has joined #nixos
<{^_^}> [nix] @domenkozar pushed to actions-artifact-binaryTarball « ci: upload binaryTarball as an artifact »: https://git.io/JfwKQ
<{^_^}> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/612d330c67e (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
<{^_^}> Channel nixpkgs-20.03-darwin advanced to https://github.com/NixOS/nixpkgs/commit/29cc418d945 (from 5 hours ago, history: https://channels.nix.gsc.io/nixpkgs-20.03-darwin)
m0rphism has joined #nixos
leotaku has joined #nixos
mauli has quit [Ping timeout: 240 seconds]
m0rphism has quit [Client Quit]
leotaku_ has quit [Ping timeout: 265 seconds]
<{^_^}> [nix] @domenkozar opened pull request #3629 → ci: upload binaryTarball as an artifact → https://git.io/JfwKx
simba1 has joined #nixos
m0rphism has joined #nixos
<meh`> ` (does this fix your client or make it worse?) emily, since it's a module I just blacklisted the ceph module and copied it over, but now it's not liking `attrsOf (attrsOf str)`
<hexagoxel> raah and now trying to build my derivation results in an endless loop again. I thought I only removed and added trace statements.
<hexagoxel> I guess with IFDs it is possible to trigger loops via trace..
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88944 → poezio: 0.12.1 -> 0.13 → https://git.io/Jfw6q
<emily> meh`: heh, no effect (formatting isn't interpreted in IRC messages thankfully, it's more that they have some trouble parsing when I mention you in reply). what's the error?
orivej_ has joined #nixos
orivej has quit [Ping timeout: 264 seconds]
<emily> `with lib.types; attrsOf (attrsOf str)` should be ok
<meh`> emily, yeah, just tried with the original ceph.nix and it says the same thing "error: attempt to call something which is not a function but a set, at /etc/nixos/ceph.nix:321:28", which is the line with the type for `client.extraConfig`
<emily> hexagoxel: you could turn off IFD to debug
<hexagoxel> oh, I can?
<Taneb> (on a related note, I would like a sort of more explicit IFD, but I don't know what that'd look like)
<emily> hexagoxel: nix setting allow-import-from-derivation, can also be specified via command-line in about 50 ways
<emily> I think --no-allow-import-from-derivation should work
<srid> I'm following this post to install NixOS on a server, https://lewo.abesis.fr/posts/2019-12-01-install-nixos-on-kimsufi.html
<emily> Taneb: recursive Nix, I guess
<srid> At this point: sudo `which nixos-generate-config` --root /mnt
<srid> Where do I exactly get `nixos-generate-config` (and `nixos-install`)?
<srid> All I have is a rescue boot system with nix installed.
reirob has joined #nixos
<emily> srid: you might also want to consider kexecing into generated NixOS live media with ssh instead; that gets you a matching kernel with ZFS etc.
<meh`> emily, wait I'm stupid, gimme a sec
<emily> then you can just do the install as normal
<srid> kexecing? FWIW, I'm doing this on OVH dedicated server
lornokto has joined #nixos
<meh`> emily, yeah it's all fine, had a file brain fart moment, thanks a bunch!
<emily> kexec is a linux kernel feature that executes into another kernel (or really just anything, you can boot Windows with it if you really want)
<Taneb> emily: more "This derivation is explicitly OK to import from"
<emily> you can build the equivalent to a NixOS liveCD with your ssh key baked in, and just replace the running system with it
<emily> and then install from NixOS-in-RAM
<Taneb> Although recursive nix and ret-cont nix would both work whenever I want this, I think
<hexagoxel> I definitely need a better workflow for developing nix expressions. I try some combination of "test things in nix repl, copy it over, try to build the result and insert traces to figure out intermediate results" but half of my problems currently are loops (I think because some of my derivations are IFDs whose source erroneously includes the current folder, including the nix expressions in it, maybe?) so adding trace statements changes the
<hexagoxel> behaviour. The result is really confusing.
<Taneb> It's mostly cabal2nix
<emily> but, if you just want to get the nixos- tools then https://nixos.org/nixos/manual/index.html#sec-installing-from-other-distro has the contortion you need to pass to nix
<emily> just you can sometimes run into issues with kernel version/configuration incompatibilities with <other random distro kernels>, especially if you want to set up things like new ZFS features
<emily> kexec is more predictable because you can install from a running NixOS
<hexagoxel> yeah, unfortunately disabling IFDs immediately breaks my build
<{^_^}> [nixpkgs] @andrea96 closed pull request #88928 → navidrome: init at 0.20.0 → https://git.io/Jfw4y
pamplemousse has joined #nixos
smatting has quit [Ping timeout: 260 seconds]
<{^_^}> [nixpkgs] @andrea96 reopened pull request #88928 → navidrome: init at 0.20.0 → https://git.io/Jfw4y
<srid> chroot/exec: command not found. no!
<emily> scary
<emily> I don't know what that is but it could potentially be the kernel mismatch issues I was talking about
<srid> looks i really need to be root, not some sudo user
<morgrimm> hexagoxel: I do the same thing - I haven't tried to move to a better workflow yet, but I'd like to get to know the nix tracing/debugging tools way better
<srid> now grub issues
orivej_ has quit [Ping timeout: 260 seconds]
orivej has joined #nixos
magnetophon has quit [Read error: Connection reset by peer]
<{^_^}> [nix] @domenkozar closed pull request #3629 → ci: upload binaryTarball as an artifact → https://git.io/JfwKx
magnetophon has joined #nixos
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88945 → pkgconf: 1.6.3 -> 1.7.0 → https://git.io/JfwiZ
erasmas has joined #nixos
<{^_^}> [nixpkgs] @kalbasit merged pull request #88924 → fastlane: 2.128.1 -> 2.148.1 → https://git.io/JfwWN
<{^_^}> [nixpkgs] @kalbasit pushed commit from @shahrukh330 to master « fastlane: 2.128.1 -> 2.148.1 (#88924) »: https://git.io/Jfwi8
<{^_^}> [nixpkgs] @wizeman opened pull request #88946 → linux: fix optional items in structured kernel configs → https://git.io/JfwiB
m0rphism has quit [Quit: WeeChat 2.7.1]
c0c0 has quit [Ping timeout: 258 seconds]
<balsoft> hexagoxel: trace statements shouldn't really change the behaviour AFAIU
<adisbladis> I feel like I say this at least once a week, but I'd kill for a Nix debugger
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #nixos
<cransom> can someone jog my memory? there was a tool to debug a build failure. you'd add it to buildInputs and if it failed, it would keep the derivation running but open up a channel that you could hop in and debug it directly
<adisbladis> cransom: breakpointHook
m0rphism has joined #nixos
<cransom> *ding* thank you.
<betaboon> i would like to ask for an opinion: I'm trying to netboot arm-devices that have u-boot on spi-flash and no further storage. i was considering booting the kernel and using nfsroot with an initrd. now i am thinking if it would be better to use initialRamdisk and just nfs-mount the nix-store. any opinions on this ?
reirob has quit [Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/]
orivej has quit [Ping timeout: 260 seconds]
orivej_ has joined #nixos
ohhaimark has joined #nixos
<morgrimm> does anyone know the option for wrapProgram to add arbitrary args? Or should I be using a new derivation with writeShellScript for that?
RRedcroft has joined #nixos
<clever> morgrimm: check the source for wrapProgram, it should be there
<RRedcroft> Hi guys, is it possible to declare a custom file in 'usr/share' via configuration.nix?
jb55 has quit [Remote host closed the connection]
<lewo> RRedcroft: no, i don't think so.
<RRedcroft> lewo: Damn, hmm....
<morgrimm> clever: I've been reading through it, there's prefix/suffix options that aren't arg-related. there's an `--add-flag` param, but I don't know if that allows args with values vs just flags
<srid> In step 13, it asks me to remove /boot
<srid> I'm worried.
<lewo> RRedcroft: what is your usecase? It is actually generally not required ;)
<srid> On my server, /boot is mounted as: /dev/nvme0n1p1 on /boot/efi type vfat
<srid> So what do I do?
<RRedcroft> lewo: i need to add a custom profile-set to pulseaudio for my soundcard to work
<betaboon> RRedcroft: we generally dont have alot in /usr (only /usr/bin/env) what do you need it for ?
<srid> emily: ^
<clever> morgrimm: you could just --add-flag --foo --add-flag value
<srid> I have done all steps upto 12. Don't want to nuke /boot without understanding if it will do the righ tthing
<betawaffle> is it possible to make a nixos docker container from a nixos configuration.nix?
<emily> srid: those options might be bios-boot-specific, I'm not sure... I haven't used the official lustrate stuff
<RRedcroft> betaboon: normally i have a udev rule and a profile-set file i need to install to get it working, udev rule is easy via the service.udev.extraRule, but cant figure out how to add the profile-set
<srid> ├─nvme0n1p1 259:2 0 511M 0 part /boot/efi (from lsblk)
<morgrimm> I wonder if I could `--add-flag foo --add-flag =bar` to get `--foo=bar`
<clever> srid: when using lustrate, the "switch-to-configuration boot" step should regenerate /boot/
<Ankhers> Can anyone point me to a derivation or something that simply downloads and install a .deb?
ohhaimark has quit [Ping timeout: 245 seconds]
<emily> you probably want the EFI system partition on /boot, not /boot/efi, at least
<clever> morgrimm: or just --add-flag foo=bar ?
<lewo> RRedcroft: it is not possible to specify this file in the systemd configuraiton file?
rogue_koder has quit [Remote host closed the connection]
<morgrimm> ... Yeah, or that lol
<lewo> s/systemd/puluseaudio/ ;)
<emily> this is why I just kexec and repartition and install normally and don't worry about it
<srid> I have these files under /boot ^
<betaboon> RRedcroft: if you got the udev-part done already i guess you could just use pkgs.writeText for the profile and use that in the udev-rule
<emily> clever: will it correctly create it as a UEFI system partition though?
<srid> There are initrd, etc. in /boot, and /boot/efi/EFI has the efi stuff
<emily> if the server is booting over UEFI then you can't just make /boot on your ext4 fs
<clever> emily: you only delete the contents, you leave it as an ESP partition and fs
<emily> in nixos you tend to mount the ESP as /boot directly. at least with systemd-boot which is all I have experience with
<RRedcroft> lewo: dont think so, according to pulse 'The file mentioned in udev rule, (e g "pulseaudio-conexant.conf") must exist in /usr/share/pulseaudio/alsa-mixer/profile-sets'
<emily> clever: right
<srid> Okay, so I a) umount /boot/efi; b) rm -rf /boot/*; c) mount boot partition as /boot ?
jb55 has joined #nixos
justanotheruser has quit [Ping timeout: 260 seconds]
<clever> srid: and that ESP you mount to /boot should also be empty
<srid> Oh wait
<srid> there is also: /dev/nvme0n1p2 on /boot type ext4
<srid> so both /boot and /boot/efi are mount points
<srid> uhh
<clever> srid: p2 was your old ext4 /boot, and p1 was the ESP at /boot/efi
<srid> /boot is just 'linux filesystem' and /boot/efi is 'EFI system' partition
<emily> if you are booting with UEFI then you should generally just have one FAT-32 ESP and mount it at /boot
<betaboon> RRedcroft: i have never done what you need but maybe this is what you need to do: create a package using pkgs.writeTextFile that puts the config you need to $out/usr/... and then pass that package to services.udev.packages
<emily> but I guess repartitioning from the running system is probably not an option
<srid> okay, so I, a) umount both the patitions, b) mount p1 EFI at /boot ?
<clever> boot.loader.efi.efiSysMountPoint = "/boot/efi"; would let you keep /boot and ESP seperate
<RRedcroft> betaboon: ok, thanks i'll give that a try
<clever> but its simpler to ditch the ext4 and put ESP right at /boot
<emily> you'll need the ESP to be big enough for the kernels and initrds
<srid> since this is a dedicated server, i'm also not sure how they configured bios
<emily> I'd unmount the old /boot, /boot/efi and make new partitions in their place. anything with the right ESP GUID will be used as a boot partition
<srid> at least i'm using only one disk (no RAID to confuse things further)
drakonis_ has joined #nixos
<srid> emily: new partitions? you mean I can *nuke* the current efi partition, and have nixos create if from scratch?
<RRedcroft> betaboon: thanks, seems easy enough :)
<srid> the efi partition gets 512M currently. the other one also 512M
<betaboon> RRedcroft: please report back if that worked for you :)
justanotheruser has joined #nixos
<clever> srid: nixos wont create its own ESP, you have to make it yourself
<emily> I meant just making a FAT-32 ESP /boot yourself in the space of the old ones
<srid> i'm inclined to use the same EFI partition as is (but ignore the old boot partition)
cfricke has quit [Quit: WeeChat 2.8]
<{^_^}> [nixpkgs] @vbgl opened pull request #88947 → coqPackages.Verdi: 20190202 → 20200131 → https://git.io/JfwPG
<srid> Okay, just for simplicity, I can do this without reparitioning things right?
<emily> sure
<srid> Now, I have /boot that is mounted by the EFI system partition
<srid> And I'm about to continue wit switch-to-configuration ...
<emily> I'd be a little anxious about an ESP that small with NixOS but it'll probably be fine unless you're doing secure boot signing or someting
<emily> (the latter can require stapling the kernel and initrd together which blows up the size of things)
<srid> my laptop has 256M for efi partition 🙂 (which is perhaps why i had to clean old kernels often)
<bqv> its still not possible to boot directly from btrfs is it
Chiliparrot has quit [Quit: My iMac has gone to sleep. ZZZzzz…]
<emily> the nice thing about kexec installs is that you don't have to worry about stepping on the existing awkward partition layout, since none of it is mounted
<clever> srid: my nas has a 64mb usb stick for /boot, lol
<emily> (though you can still brick your boot of course)
<srid> if the luster instal l fails, i'll try kexec
<bqv> kexec is nice, can confirm
drakonis has quit [Ping timeout: 272 seconds]
<srid> ^ so it worked??
<srid> I see two entries. I wonder if nixos is the default.
<clever> srid: does `efibootmgr -v` also show things as configured?
<srid> (Don't want to reboot and then wonder why server is inaccesible)
<{^_^}> [nixpkgs] @magnetophon opened pull request #88949 → mu: 1.4.6 -> 1.4.7 → https://git.io/JfwPu
justanotheruser has quit [Ping timeout: 240 seconds]
<clever> srid: also, you didnt clear the ESP before runnning boot
<srid> clever: I see this ^
lornokto has quit [Quit: Leaving]
<srid> don't see nixos in it?
orivej has joined #nixos
<clever> srid: you have to add --install-bootloader to the previous cmd i think
orivej_ has quit [Ping timeout: 272 seconds]
<srid> clever: to the switch-to-configuration command?
<srid> because: efibootmgr: unrecognized option '--install-bootloader'
<clever> srid: ah, no, its NIXOS_INSTALL_BOOTLOADER=1
<clever> before the cmd
<srid> so `NIXOS_INSTALL_BOOTLOADER=1 ... switch-to-configuration boot` .. okay, trying..
<{^_^}> [nixpkgs] @magnetophon opened pull request #88950 → ardour: add ardour 6 and make it the default → https://git.io/JfwPK
<srid> ^ Okay, it did something
<srid> Now I see efibootmgr report a new entry (Boot0001* Linux Boot Manager), but the default is still debian
<clever> check the efibootmgr manpage, and you should see how to change the default
RRedcroft has quit [Remote host closed the connection]
<srid> don't see an option to set default, but I guess I should be changing boot order
<clever> srid: yeah, you want to adjust the order
<srid> ^ uhh, that had no effect
<srid> I could just delete the debian entry
<clever> srid: nixos is already first in the boot order
<clever> srid: boot current, is in refernece to what is currently running, not the default
<{^_^}> [mobile-nixos] @samueldr opened pull request #153 → bin/menuconfig: Fix breakage caused by #152 → https://git.io/JfwPA
<srid> Ah, you are right
<srid> I was squinting real hard (have small terminal size)
<{^_^}> [nixpkgs] @victorluft opened pull request #88952 → sublime-merge-dev: 1115 -> 2020 → https://git.io/JfwPh
<srid> Okay, now time to reboot. fingers crossed ...
vidbina has quit [Ping timeout: 246 seconds]
<srid> (I set my ssh key for root user in configuration.nix)
<{^_^}> [mobile-nixos] @samueldr merged pull request #153 → bin/menuconfig: Fix breakage caused by #152 → https://git.io/JfwPA
<{^_^}> [mobile-nixos] @samueldr pushed 2 commits to master: https://git.io/JfwXI
<srid> I can't ssh, then it would be impossible to tell why. Because there is no console access for OVH dedicated servers.
<srid> *If I can't ssh
<srid> (still waiting for reboot)
growpotkin has joined #nixos
morgrimm has quit [Ping timeout: 245 seconds]
sarcasticadmin has joined #nixos
MmeQuignon has joined #nixos
justanotheruser has joined #nixos
<srid> (ssh still hangs; :-S)
smatting has joined #nixos
<clever> srid: what did you tell nixos to mount as / ?
<clever> srid: did you re-run nixos-generate-config when changing the mountpoint of things?
<srid> No, I ran nixos-generate-config once - and that's it
<bqv> srid: ?! what if you get locked out?
<clever> you need to re-run nixos-generate-config every time you change what is mounted where
<clever> bqv: ovh lets you force reboot and switch to a rescue env
<bqv> yikes
<srid> Just got an email from OVH: Our monitoring system has just detected a fault on your server [snip]
<bqv> ahaha
<dminuoso> srid: btw, did you ever figure out what was keeping an open file handle?
<srid> dminuoso: long past, no idea. it was on some distro i don't remmeber
mauli has joined #nixos
<srid> clever: okay, guess I will to start from scratch.
<clever> srid: try the rescue system first, and then mount the rootfs, does it have logs?
<srid> good idea, let me try
<{^_^}> [nixpkgs] @romildo opened pull request #88954 → deepin.go-dbus-generator: remove → https://git.io/JfwXX
<ramses_> Is there any way to profile the evaluation of a nix expression? Evaluating the nixos profile of several of my servers takes 20+ secs, which seems a bit long to me, but I don't know how to find the potentially badly-written parts of my config
<clever> ,profiling ramses_
<{^_^}> ramses_: Use NIX_COUNT_CALLS=1 and/or NIX_SHOW_STATS=1 to profile Nix evaluation
m0rphism has quit [Quit: WeeChat 2.7.1]
<srid> OVH interface is broken when trying to reboot into rescue
<srid> In a way I regret going with OVH
<srid> guess I have to wait for their intervention to complete. grr
magnetophon has quit [Read error: Connection reset by peer]
magnetophon has joined #nixos
RRedcroft has joined #nixos
<emily> hetzner lets you get a KVM console on request at least
<RRedcroft> betaboon: Hey back after some reboots, adding a custom package hasnt worked, but i may have done it wrong
<emily> though it's still slower than I'd like
<ramses_> clever: does this allow me to identify particularly slow modules?
<ramses_> clever: also, it seems like a lot of time is still spent after the output has already been printed, the command still spends a decent amount of time before exiting
<clever> ramses_: it will mainly tell you what function is being ran a lot
fresheyeball has joined #nixos
<clever> ramses_: is nix-instantiate slow to eval?
<fresheyeball> f = _:_:3
<fresheyeball> f 1 2 == 3
<fresheyeball> f = _:x:x
mauli has quit [Ping timeout: 260 seconds]
<fresheyeball> f 1 2
<fresheyeball> error: attempt to call something which is not a function but a string
<fresheyeball> wtf
<betaboon> RRedcroft: care to share the code ?
<infinisil> > _:_
<{^_^}> <LAMBDA>
<RRedcroft> betaboon: thats the relevant section, thanks
<infinisil> > x:x
<{^_^}> "x:x"
<infinisil> fresheyeball: It's not parsed as a function
<infinisil> > x: x
<{^_^}> <LAMBDA>
<fresheyeball> wat
<fresheyeball> why?
<Taneb> Because the parser for raw URLs like that comes first
Cale has quit [Ping timeout: 240 seconds]
<bqv> nix is such a weird language
<eyJhb> Where does NixOS store channels? Currently running tmpfs on / an /nix is persistent, but they will be gone en each reboot and only my nixos channel is left
<fresheyeball> OH!
<fresheyeball> Taneb++
<{^_^}> Taneb's karma got increased to 16
meh` has quit [Ping timeout: 240 seconds]
<betaboon> RRedcroft: are you sure that udev-rule works ?
<clever> eyJhb: which channels you use are in ~/.nix-channels, but the actual data created by `nix-channel --update` is in /nix/var/nix/profiles/per-user/clever/channels/
<ramses_> clever: nix-instantiate --dry-run of the system profile takes about 6 sec, nixos-rebuild build --fast of the same system takes 20 sec
<eyJhb> clever: nix-channel --list only gives me `nixos https://nixos.org/channels/nixos-20.03`, but I can see all these `home-manager/ manifest.nix nixos/ unstable/ ` in ` ll /nix/var/nix/profiles/per-user/root/channels/`
<ramses_> Adding the two env vars produces 60k lines of output
<clever> ramses_: what if you run `nix-build --dry-run` on the drv from instantiate?
<eyJhb> So assume it reads from ~/.nix-channel, but uses them from /nix/var/nix/...
<clever> eyJhb: yeah
<clever> eyJhb: --list and --update use ~/.nix-channels but everything else uses ~/.nix-defexpr/
<eyJhb> That isn't that nice :/ Since I cannot get it to regenerate the files in ~/...
<ramses_> clever: I just add the .drv path as an argument? That does not produce output and terminates in 50ms...
raghavsood has joined #nixos
<clever> ramses_: then its not network issues, now run `nix-build` normally on the drv, and it should product another storepath
<clever> ramses_: run $thatpath/bin/switch-to-configuration switch, how slow is it?
<ramses_> But I am not switching huh, I run nixos-rebuild build, to avoid the switching time
<raghavsood> I'm building a go program that requires another go program as part of its build process - neither are in nixpkgs - what would be the best way to pass the dependency into the buildInputs? Should I define a separate package, or just build the dependence first as part of the main package?
<ramses_> clever: ^^
hmpffff has quit [Quit: nchrrrr…]
<clever> ramses_: ah, not sure then...., what about nixos-rebuild build --fast ?
<ramses_> clever: that's the one taking 20 sec
<RRedcroft> betaboon: without adding the packages, the udev rule 'breaks' my soundcard
<clever> ramses_: weird, i would try maybe `bash -v $(which nixos-rebuild) build` i think?
shabius has quit [Ping timeout: 260 seconds]
rogue_koder has joined #nixos
<RRedcroft> betaboon: without any config my card kind of works, but not really. Adding the udev file and reloading udev results in no card visible, and adding the profile-set doesnt make it reappear
shabius has joined #nixos
<ramses_> clever: ha, it seems like most time is being list doing "cleanup", the actual system build is pretty fast
<betaboon> RRedcroft: what does `udevadm monitor` say when connecting the device when your system is built with that script-present
<clever> ramses_: you can skip right to `nix-build '<nixpkgs/nixos>' -A system` to just build nixos and skip everything else
<bqv> balsoft: i may be wrong, i thought some parts of nix-store were still unimplemented in `nix` but i think they actually have been
<bqv> i might alias away nix-store, nix-build, nix-instantiate, nix-env etc. to test
<ramses_> clever: yeah, that one takes only 6 sec... So it seems like it's not an issue with my config then, but rather nixos-rebuild being slow
drakonis has joined #nixos
<ramses_> Seems a bit weird that 2/3 of the time are spent cleaning up
<RRedcroft> betaboon: hmm, nothing relating to that rule
<balsoft> bqv: is there a way to GC without nix-store?
<emily> balsoft: nix-collect-garbage
<bqv> huh
drakonis_ has quit [Ping timeout: 244 seconds]
<bqv> why's that one in particular separate
<emily> big shrug
<emily> it's existed forever, it does some additional stuff on top of nix-store(1)
<emily> see the manpage
orivej_ has joined #nixos
orivej has quit [Ping timeout: 265 seconds]
<balsoft> emilazy: it's a fancy wrapper around nix-store --gc
kevin1024 has quit [Quit: Connection closed for inactivity]
<bqv> hmph
<balsoft> What I meant was can you GC with nix-command
<bqv> so i guess gc isn't implemented in nix2
<betaboon> RRedcroft: hm i think `udevadm monitor` doesnt tell you anything about the rules themselves. maybe `udevadm test $DEVICE` gives you some insight
<betaboon> RRedcroft: or maybe `udevadm control --log-priority=debug`
<NickHu> Anyone around who knows how the fontconfig infrastructure works?
gagbo has quit [Quit: I'm out !]
aveltras has joined #nixos
<bqv> hot take: it doesn't
<bqv> (iirc it amounts to manually specifying entire xml documents)
<aveltras> is anyone using haskell library file-embed ? i'd like to build a haskell project but the path to the embedded resources is not the same during nix-build and during cabal build
<clever> aveltras: which path are you trying to embed?
<aveltras> right now "../static" because that's a directory in my project directory
<clever> aveltras: and why cant it be an env var you read at runtime?
<clever> aveltras: or a cmdline flag?
<aveltras> because it's compile time generated code which is suppose to embed the directory content directly in the haskell executable
fresheyeball has quit [Quit: WeeChat 2.7.1]
<clever> aveltras: ah, was mixing file-embed up with another similar util
<clever> aveltras: your using TH then? can you just read an env var at TH time and decide beteen $FOO or default to ../static ?
<aveltras> seems that's what i'll have to do here then
<evanjs> So uh... just getting around to testing the generated vmware images... and I can't seem to boot them :D
<aveltras> how can it specify the env variables with the nix build ?
<evanjs> Can't find /dev/disk/by-label/nixos... any thoughts on what to check first? Most of what I've checked so far seems to be fine...
<clever> aveltras: any attribute you add to the derivation becomes an env var
cole-h has joined #nixos
<clever> aveltras: it will depend on if your using stdenv.mkDerivation or cabal2nix, how you would add it
<clever> evanjs: what does blkid report?
<aveltras> ok i'll try this, have to modify the TH code first, thanks for your help
<clever> evanjs: you may need to add boot.shell_on_fail i think it was to the kernel cmdline
<srid> now I can ssh to the machine, but it is prompting for the root password. clever do you think the root password can be set from a rescue boot?
<srid> (i'm pretty sure i set ssh keys for root in configuration.nix)
<srid> (that or the intervention staff is doing some funky stuff)
<clever> srid: you can set the pw if you chroot in, or just edit $root/etc/shadow by hand
<evanjs> clever: yeah that's the debug step I was missing, thanks. I'll regen the image with that
<clever> evanjs: if its using grub, you can add that without a regen
<evanjs> clever: omg I am tired
<evanjs> yeah it is, thinks
orivej_ has quit [Ping timeout: 260 seconds]
orivej has joined #nixos
<evanjs> this is after I even changed the loglevel parameter earlier lol
<evanjs> like from the grub shell -_-
drakonis1 has joined #nixos
<bqv> i might still alias away those legacy commands
<evanjs> clever: blkid..... nothing :D
<bqv> i never use collect-garbage manually anyway
<RRedcroft> betaboon: looking through the journalctl i can see the local rule but it cant find the profile-set
detran has joined #nixos
<srid> What would you folks recommend for NixOS dedicated servers?
<srid> in general
<clever> evanjs: does the block device exist in /dev/ ? or /proc/partitions?
<betaboon> RRedcroft: does the `99-local.rules` mentioned in that log look good ?
<evanjs> clever: doesn't seem to. Just ram[0-15] and sr0
<adisbladis> "What would you folks recommend for NixOS dedicated servers?"
<clever> evanjs: then you didnt include the drivers for the block device in the initrd
<adisbladis> srid: This is missing some context
<clever> evanjs: lspci, anything block-device-y present?
<adisbladis> What are you asking about ?
<RRedcroft> betaboon: yeah its got the lines i included and some nvidia stuff, and the nvidia card seems to be working fine
<evanjs> clever: yup I figured as much. Though, I thought those were included in the *-guest.nix modules. hrm
<srid> adisbladis: I want to host a dedicated server (min 32GB RAM) running NixOS. What hosting providers would you recommend? I'm struggling to install NixOS on OVH
<evanjs> clever: ahci, ata_piix, ehci-pci, pcieport, uhci_hcd
<bqv> srid: i use online.net, i noticed it has a dedicated wiki page
<clever> evanjs: but if its a vm, you may want one of the virtio drivers
philr_ has quit [Ping timeout: 272 seconds]
<adisbladis> srid: Bare metal or VPS?
marusich has joined #nixos
<bqv> dedicated usually means baremetal
<adisbladis> For bare metal I can't recommend Packet highly enough
<srid> Bare metal
<betaboon> RRedcroft: does `udevadm test /devices/pci0000:00/0000:00:07.1/0000:0b:00.3/usb5/5-3/5-3:1.0/sound/card1` tell you anything usefull ?
<adisbladis> Hetzner is also good, but Packet is fantastic
burkelibbey_ has joined #nixos
<adisbladis> Also, Packet sponsors NixOS, so I'm biased ;)
<betaboon> RRedcroft: or whatever the correct devicepath is
<srid> Where do packet have their data centers?
Cale has joined #nixos
claudiii has quit [Ping timeout: 240 seconds]
teej has quit [Ping timeout: 272 seconds]
user_0x58 has joined #nixos
<RRedcroft> betaboon: i can see that its read the 99-local.rules file, and cat'ing that file shows the correct udev rule
TheNumb has quit [Ping timeout: 246 seconds]
<evanjs> clever: yeah I was basing my work off the other *-image.nix modules, which seemed to just rely on the *-guest.nix expressions. Figured those would have everything I needed
pingveno has quit [Ping timeout: 260 seconds]
<srid> thanks adisbladis
<srid> i might just get a 2nd bare metal server. why not. for funs
<evanjs> which, in this case, seems to be just vmw_pvscsi?
omnigoat has quit [Ping timeout: 256 seconds]
<adisbladis> srid: They sponsor most(all?) of our Hydra build machines
wildsebastian has quit [Ping timeout: 240 seconds]
pkral has quit [Ping timeout: 272 seconds]
bitonic has quit [Read error: Connection reset by peer]
<srid> what's a hybrid machine?
jlpeters has quit [Ping timeout: 272 seconds]
<cole-h> And the ofborg evaluators/x86_64 builders ;)
<adisbladis> Hybrid?
angerman has quit [Ping timeout: 260 seconds]
<adisbladis> Huh?
<cole-h> Maybe they dyslexia'd "Hydra" and "build"
<gchristensen> srid: they're about to get a new revision of the NixOS installer, btw, their current one is a _touch_ out of dat.
orivej has quit [Ping timeout: 246 seconds]
georgyo has quit [Ping timeout: 260 seconds]
<cole-h> gchristensen: Is that what your netboot project is going to help with?
<srid> uhh, misread hydra as hybrid. i'm clearly tired from dealing with OVH
<srid> gchristensen: who? packet?
<gchristensen> cole-h: yeah, I build and maintain their installer and the netboot slowness was killing me
orivej has joined #nixos
<gchristensen> srid: yeah
<srid> https://www.packet.com/cloud/servers/ c3.medium is about $800 per month.
<srid> what
wildsebastian has joined #nixos
emilazy has quit [Ping timeout: 272 seconds]
<srid> oh but that's 24 cores.
<srid> still, 8 core node is $360 per month
<adisbladis> What Packet calls "medium" and what other cloud providers call "medium" is quite different :P
betawaffle has quit [Ping timeout: 246 seconds]
NekomimiScience has quit [Ping timeout: 265 seconds]
<gchristensen> they're nice machines, bront
<gchristensen> maybe check out hetzner's server auctions
<betaboon> RRedcroft: i have the feeling that udev is just instructing pulse to load that profile set, thus the reason for it not working like this might be that pulseaudio needs access to that profile-set instead of udev
<adisbladis> Also Packet has "reserved pricing" which is way cheaper
jlpeters has joined #nixos
jchw has quit [Ping timeout: 256 seconds]
<betaboon> RRedcroft: according to the following documentation, profile_set can be an absolute path: https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/
<srid> i would normally be happy to pay that price for a 24 core if i were to use that also as my primary dev machine (remoting to it) ...
betawaffle has joined #nixos
<adisbladis> srid: Have a look at Hetzner, but they only have data centers in europe
<adisbladis> They're cheaper & reliable
<RRedcroft> betaboon: ok, ill try an absolute path to a local file, see if that works
<betaboon> RRedcroft: and this documentation kinda suggests that my assumption about pulseaudio needing access to the profile-set is correct: https://www.freedesktop.org/wiki/Software/PulseAudio/Backends/ALSA/Profiles/
<srid> what's the impact of hosting web apps in europe, for users around the world (notably US)?
<srid> adisbladis: does Hetzner support nixos officially, though?
jbetz has quit [Ping timeout: 272 seconds]
<evanjs> clever: .... got it...
<RRedcroft> betaboon: i'll try adding it to pulse packages, thanks for the help
emilazy has joined #nixos
<evanjs> checked the modules on some other VMs we have running, when I noticed they were using ahci.... for _SATA_ drives....
<adisbladis> srid: I don't think so? But NixOps has Hetzner support.
<srid> I imagine that's for their cloud servers, not dedicated
<evanjs> the _recommended_ type is SCSI in VMWare Workstation, so I initially selected that, and ignored SATA after trying it and failing to boot
<adisbladis> srid: Actually it's the other way around :P
<evanjs> Didn't realize the boot order has to be changed from the virtualized BIOS lol
<adisbladis> We have support for their dedicated, but not hetzner cloud
<evanjs> So I booted from the drive (mounted as a SATA drive) and it works fine XD
<srid> how does nixpops install the OS itself on bare metal?
<betaboon> RRedcroft: maybe you can provide it to pulseaudio using `hardware.pulseaudio.extraModules`.
<clever> srid: currently it cant, you have to install yourself, then use the none backend to deploy to it
chpatrick has quit [Quit: Connection closed for inactivity]
<adisbladis> clever: Oh?
jbetz has joined #nixos
<evanjs> I'm just glad I don't have to make a 2nd commit to fix the vmware stuff I added :P
<adisbladis> Did Hetzner break their API?
betawaffle has quit [Max SendQ exceeded]
<clever> adisbladis: i mean full baremetal, without any api's involved
wildtrees has joined #nixos
<adisbladis> Ah, right.
<adisbladis> clever: Btw, this might interest you https://github.com/NixOS/nixops/pull/1353
<{^_^}> nixops#1353 (by adisbladis, 19 hours ago, open): Add support for pluggable transports
parsnip has quit [Ping timeout: 260 seconds]
<{^_^}> [nixos-homepage] @github-actions[bot] pushed commit from @edolstra to master « Update flake.lock and blogs.xml [ci skip] »: https://git.io/JfwDK
wildtrees has quit [Max SendQ exceeded]
<clever> adisbladis: oh, neat
wildtrees has joined #nixos
omnigoat has joined #nixos
bitonic has joined #nixos
veleiro` has joined #nixos
peel has quit [Ping timeout: 252 seconds]
rauno has quit [Remote host closed the connection]
<cole-h> adisbladis: btw, I posted in #nixops yesterday, but you must have been asleep or something. If you have a moment, mind taking a look? https://logs.nix.samueldr.com/nixops/2020-05-25#1590449671-1590449694;
<adisbladis> cole-h: Remind me later :)
<cole-h> Roger.
emilazy has quit [Ping timeout: 272 seconds]
<evanjs> clever++
<{^_^}> clever's karma got increased to 444
<jbox> ar: if you're still around: `nix search terraria` still only shows nixos-unstable.terraria-server, nixos.terraria-server, and nixpkgs.terraria-server. I'm looking for nixpkgs-unstable.terraria-server.
jchw has joined #nixos
digitalgrease has quit [Ping timeout: 260 seconds]
parsnip has joined #nixos
<cole-h> Aren't nixos{,-unstable} and nixpkgs{,-unstable} the same?
omnigoat has quit [Max SendQ exceeded]
peel has joined #nixos
<jbox> No. Nixpkgs* doesn't have nixos-specific stuff like the command-not-found database that must update or a kernel
parsnip has quit [Max SendQ exceeded]
<jbox> That's my understanding, at least. I may be wrong
ProofTechnique has quit [Ping timeout: 265 seconds]
higherorder has quit [Ping timeout: 240 seconds]
jbetz has quit [Ping timeout: 260 seconds]
<cole-h> Heh, I don't know either. Well, if you're just looking for the terraria-server package, I don't think that differentiation should matter?
<jbox> nixos, nixos-unstable, and nixpkgs-unstable are all showing under `sudo nix-channel --list`
betawaffle has joined #nixos
angerman has joined #nixos
digitalgrease has joined #nixos
<jbox> That's version 1.4.0.3
<jbox> `sudo nix search terraria --json` shows that nixos, nixos-unstable, and nixpkgs all have version 1.3.5.3
wildsebastian has quit [Ping timeout: 244 seconds]
bitonic has quit [Ping timeout: 272 seconds]
jlpeters has quit [Ping timeout: 258 seconds]
j-k has joined #nixos
jchw has quit [Ping timeout: 256 seconds]
alexherbo2 has joined #nixos
jbetz has joined #nixos
noogie has joined #nixos
NekomimiScience has joined #nixos
jlpeters has joined #nixos
jchw has joined #nixos
wildsebastian has joined #nixos
bitonic has joined #nixos
<emily> nixpkgs-unstable also blocks on darwin
<emily> so it's often worse
georgyo has joined #nixos
emilazy has joined #nixos
teej has joined #nixos
higherorder has joined #nixos
parsnip has joined #nixos
<drakonis1> 1.4 came out a while ago
omnigoat has joined #nixos
noogie has quit [Client Quit]
ProofTechnique has joined #nixos
<drakonis1> ah it is up to date already
noogie has joined #nixos
<jbox> terraria-server 1.4 is on nixpkgs-unstable, but I can't figure out how to install stuff from nixpkgs-unstable
TheNumb has joined #nixos
pingveno has joined #nixos
<cole-h> Have you already looked at:
<cole-h> ,unstable
<cole-h> ?
pkral has joined #nixos
wavirc22_ has joined #nixos
<RRedcroft> if i define a package inside 'package.nix' using let, is it possible to include that in hardware.pulseaudio.extramodules ?
<jbox> cole-h: I've read this before, but I forgot about it. This is what I want, thank you!
wavirc22 has quit [Ping timeout: 256 seconds]
<jbox> I still can't get `nix search` to search nixpkgs-unstable, though...
<cole-h> nix search is hit or miss, I've heard.
<cole-h> Never had problems myself, but I also rock unstable full-time :P
<bqv> i use it, but i use the flake version
<jbox> I should start using more unstable
<jbox> bqv: flake version?
<jbox> cole-h++
<{^_^}> cole-h's karma got increased to 65
<bqv> "nix search nixpkgs <search terms...>
<jbox> ah gotcha
<bqv> i'm not sure how that works on normal nix
claudiii has joined #nixos
wavirc22 has joined #nixos
orivej has quit [Read error: Connection reset by peer]
orivej_ has joined #nixos
<jbox> should I add channels on my personal account or root?
<betaboon> RRedcroft: you should be able to do something along these lines: https://gist.github.com/betaboon/99b4469c8152f6da3baee7df21a6486e
<jbox> I'm the only user account
<bqv> depends on what you want to achieve
<srid> how many people here run nixos dedicated servers (bare metal) for hobbyist purposes? how many servers do you manage? just curious! (moving away from $5 digitalocean droplets to gigantic bare metals seems like a slightly scary process)
domogled has joined #nixos
<gchristensen> I have 1.5 in my basement, and one t1.small at packet
<bqv> srid: 1 online.net dedi atm
<cole-h> jbox: User channels only work for your user's invocations of `nix-shell` and friends. Root channels work for rebuilding your system and `nix-shell` and friends on all users.
plp has quit [Ping timeout: 260 seconds]
chloekek has joined #nixos
<jbox> cole-h: I see. Thank you!
<betaboon> srid: i have multiple root-servers at netcup running nixos currently managed with nixops
<Jeroen[m]1> 1 at home and 1 in a remote dc
wavirc22_ has quit [Ping timeout: 265 seconds]
<jbox> betaboon: could you do something like this <https://gist.github.com/nop/178b39ecaaa8fa753d7243809f791821>?
Thra11 has joined #nixos
plp has joined #nixos
<jbox> srid: not what you asked for but I'm using Linode right now for my NixOS server and love them
<betaboon> jbox: i think you can if you set the braces correctly, in this case before `pkgs.writeText File` and after the closing curly-braces. ah and no semicolon in L12
<betaboon> nix is weird but beautiful :D
<jbox> oh, right. Thanks lol
<jbox> Functional programming is still kind-of new to me
<jbox> betaboon: what do you mean by setting the braces correctly? The [] seem like they're in the right spot to me
<cole-h> jbox: You'll need to wrap `pkgs.writeTextFile { ... }` in parens
<cole-h> Otherwise your extra modules will be `pkgs.writeTextFile` and `{ ... }`, not `pkgs.writeTextFile { ... }`
<betaboon> jbox: i put it in a comment in your gist
<jbox> Oh, right. That groups the function call and its argument set together. Instead they'd be parsed as separate list items because of the whitespace, right?
<cole-h> yep.
<jbox> Nix is so cool
<cole-h> Agreed :^)
<RRedcroft> betaboon: cheers
<simpson> security-team++ for warnings about deprecated upstreams.
orivej_ has quit [Ping timeout: 265 seconds]
<jbox> the nixpkgs part of <nixpkgs> is the channel alias, right?
<cole-h> No, it's from NIX_PATH
<cole-h> `echo $NIX_PATH` -> "nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos nixos-config=/etc/nixos/configuration.nix /nix/var/nix/profiles/per-user/root/channels"
<cole-h> Everything followed by an equal sign can be referred to by `<name>`
<jbox> Oh, okay
<cole-h> e.g. I used to have my secrets stored in `secrets=/home/.config/nixpkgs/secrets`, so `<secrets/somefile>` would refer to `/home/.config/nixpkgs/secrets/somefile`
<jbox> I'm using `import <nixpkgs-unstable>` in my configuration.nix, but I don't see nixpkgs-unstable in my NIX_PATH
<srid> clever: back to rescue mode. I did `chroot /mnt /bin/sh` - but nothing is on PATH. even `ls` is missing.
<clever> srid: add /nix/var/nix/profiles/system/sw/bin to PATH
<srid> thanks, also found: https://nixos.wiki/wiki/Change_root
<srid> alright, i'm in
<jbox> hackerman
* srid reads history
<betaboon> RRedcroft: worked ?
<jbox> speaking of reading history: `man roff` is a good read
<RRedcroft> betaboon: nope, it kicks out an error with pulseaudio override
<betaboon> RRedcroft: grr. I'm out of ideas here :/
<RRedcroft> betaboon: which was the same issue i had, however i specified a file in 'environment.etc."gsx.conf"' and used the udev rule to point to that
<RRedcroft> betaboon: and that worked :), thank you for all your help i'd have never gotten anywhere without your help
<betaboon> RRedcroft: you're welcome. i bet you can find a cleaner solution without the workaround of using etc somehow. :D
<RRedcroft> betaboon: for now it works, and im trying to get this config pushed upstream to pulseaudio
waleee-cl has quit [Quit: Connection closed for inactivity]
<betaboon> RRedcroft: even better :D
<srid> it is not entirely clear to me what has happened here
<srid> OVH replied: "The server is booted on disk and is on the login screen, but it doesn't respond to ping requests."
<clever> srid: you can get that without chroot as well
<srid> which means, there is a networking configuration issue here?
<clever> srid: journalctl --root=/mnt/
<clever> srid: does OVH use static ip's or dhcp?
<srid> static ip
<clever> srid: and did you configure it in configuration.nix?
<RRedcroft> exit
RRedcroft has quit [Quit: leaving]
<srid> yea, let me paste the config
<clever> -- Subject: A start job for unit sys-subsystem-net-devices-eth0.device has failed
<clever> srid: is it still called eth0 when nixos is running?
<clever> May 26 16:25:54 godzilla kernel: ixgbe 0000:01:00.0 enp1s0f0: renamed from eth0
<clever> May 26 16:25:54 godzilla kernel: ixgbe 0000:01:00.1 enp1s0f1: renamed from eth1
<srid> Ah
<clever> srid: this is another area the kexec helps with, it lets you test out network config, before you install
<srid> On the rescue, `ifconfig` is reporting eth0
<clever> if your config is wrong, you cant access the kexec instance
<clever> thats because the rescue env has a different systemd config
<srid> interesting. is it possible to tweak the netwoek config here and do a reboot real quick to see if that fixes the issue? if not, kexec it is.
<clever> which is why the guides all recommend installing nixos from nixos
<clever> one sec
<srid> (or is it possible to kexec test from this rescue boot?)
<clever> You pass the net.ifnames=0 on the kernel command line
<clever> srid: add that to the kernel cmdline (just edit the cfg in /boot) and it should then leave eth0 as eth0
ZaraChimera has joined #nixos
<clever> you can then either make it permanent in configuration.nix, or fix the cfg
hmpffff has joined #nixos
<srid> clever: i have /boot/EFI - where would the config go?
<clever> srid: are you using grub or systemd-boot?
<srid> boot.loader.systemd-boot.enable = true;
<clever> find a file in /boot that has init=, it should look like kernel params
<srid> clever: found it: /mnt/boot/loader/entries/nixos-generation-1.conf
<srid> modify this file?
<clever> yep
<srid> options systemConfig=/nix/store/w4wman32czsznhhpabmb8d05qqf0xixa-user-environment init=/nix/store/w4wman32czsznhhpabmb8d05qqf0xixa-user-environment/init loglevel=4
<srid> that's what it has
<clever> and add in `net.ifnames=0`
<srid> right, at the end
<srid> then, reboot?
<clever> yep
<srid> okay before I do. I just made sure that root user has my ssh key.
<srid> rebooting..
<{^_^}> [nixpkgs] @romildo closed pull request #88905 → deepin.qcef: remove → https://git.io/JfVjq
<aveltras> is there a way to force acme cert renewal ? i've added another subdomain in my nixos config but it doesn't seem to have any impact
<{^_^}> [nixpkgs] @Mindavi opened pull request #88957 → Nomacs/maintainer change → https://git.io/JfwSN
<{^_^}> [nixos-homepage] @github-actions[bot] pushed commit from @edolstra to master « Update flake.lock and blogs.xml [ci skip] »: https://git.io/JfwSh
meh` has joined #nixos
<aveltras> https://github.com/NixOS/nixpkgs/issues/81634 seems related, i'll try this
<{^_^}> #81634 (by emilazy, 12 weeks ago, open): nixos/acme: force-renewing certificates is unreasonably difficult
<aveltras> it worked
<srid> It worked!!!!!!!!!!!!
* srid dances around
<srid> clever: ++
<srid> clever ++
orivej has joined #nixos
<srid> clever: now I set that kernel param permanently right? (else nixos switch would break again)
<clever> srid: either make it permanent, or fix the config to use enp1s0f0 and enp1s0f1
<srid> both same IP?
<clever> depends on how ovh wired it
<clever> does `ip link` say both are up?
<srid> it has got 'public' and 'private' bandwidth ^^ not sure what that means exactly
<srid> ip link ^^
<srid> eth0 UP, eth1 DOWN
<clever> sounds like one card isnt even plugged in
<clever> so you can just ignore it
<srid> whoa, nixos didn't install correctly
drakonis1 has quit [Quit: WeeChat 2.8]
<clever> srid: thats because you never ran nix-channel --add with a name of nixos
<betawaffle> clever: do you know off hand if it's possible to make a nixos docker container, or will i have to settle for a nix docker container?
<clever> srid: thats normally handled by the nixos-install script, but you bypassed it
<ldlework> betawaffle: why wouldn't it be possible to put NixOS inside Docker?
<simpson> Isn't systemd the usual obstacle?
<betawaffle> my coworker thinks it's not possible
<clever> betawaffle: this is something i did a while back, that runs a few nixos services in docker
<betawaffle> we currently have a development environment container. and we'd like to build it with nix instead of a dockerfile
calbrecht has quit [Ping timeout: 272 seconds]
<ldlework> betawaffle: your coworker is confused!
<betawaffle> but we also want to have nix in it, and to be able to "upgrade" it sometimes without building a new container
<ldlework> betawaffle: BOOOOO
* ldlework boos betawaffle.
<betawaffle> euank: ^^
drakonis_ has joined #nixos
<ldlework> betawaffle: containers should be essentially read-only
<ldlework> at least to the gods that maintain them
* ldlework contemplates the lack of existence for God for a second.
<ldlework> 🤔
<betawaffle> well, ideally, sure. but there are reasons why we need it to not be that way in this case
<betawaffle> remember, this is a development environment, not a service
<srid> tfw when the nixos-rebuild switch stops eth0.service and you get locked out
<simpson> betawaffle: Sure; although horrific, it is possible to have `FROM nixos/nix` Dockerfiles which allow mutation. In particular, one can have nixpkgs set up and use nix-shell to get debugging environments which will mutate the temporary state inside the container.
<srid> i suppose my server is disconnected from the network now. and i should do a hard reboot
<clever> srid: then youll want to reboot, for the if renaming to take effect
<clever> srid: you wanted `nixos-rebuild boot && reboot`
<srid> I just hope nixos-rebuild switch *completed*. My ssh session froze right at "stopping ... eth0.service"
fendor has quit [Remote host closed the connection]
<srid> hard rebooting now
<clever> srid: also, make sure you fix your hardware-configuration.nix first, with nixos-generate-config
<ldlework> betawaffle: oh docker makes a poor development environment sadly
<simpson> srid: I just had a similar moment. In powertop, I had the idle memory of how we don't enable all power management by default because often power management is buggy, while I was flipping each of the switches to enable such power management on each device.
<srid> Ah :-(
<ldlework> better than what came before, but not as good as nix-shell
<betawaffle> ldlework: i agree, but this is what we have
<ldlework> Which is the real tool for development environments.
drakonis has quit [Ping timeout: 260 seconds]
<simpson> I turned on PM on the USB keyboard, and my keyboard completely went out and would not come back on. I had to unplug the keyboard and plug it back in to get it back.
<ldlework> It literally does not get better than lorri + direnv
fendor has joined #nixos
drakonis1 has joined #nixos
drakonis_ has quit [Read error: Connection reset by peer]
alp has quit [Ping timeout: 265 seconds]
<cript0nauta> I've used nixos containers in lxc and lxd, would that be useful or you strictly need docker?
<srid> okay, rebooted and i'm back in ssh, thank good. but `ifconfig` still reports eth0. so looks like the nixos-rebuild switch failed?
<clever> srid: double check what is mounted where
<clever> srid: you likely have the wrong device at /boot
LevelChart8 has joined #nixos
<LevelChart8> does anyone have recommendations for laptops for nixos?
<srid> under /boot/efi/loader/entries/ - there is just generation 1
calbrecht has joined #nixos
quinn has joined #nixos
<LevelChart8> my priorities are screen real estate (15” or 16”) and RAM (at least 16GB)
orivej_ has joined #nixos
<srid> how do I list nixos generatoins?
orivej has quit [Ping timeout: 272 seconds]
drakonis_ has joined #nixos
<srid> //dev/nvme0n1p1 on /boot/efi (vfat)
<srid> /dev/nvme0n1p2 on /boot (ext4)
<srid> ^ is that about right? clever
<srid> oh it is not
<srid> there is /boot/loader and /boot/efi/loader. the former has generation-2
* srid looks in harddware-configuration.nix
<clever> srid: your hardware-configuration.nix is wrong, and it mounted the wrong things on bootup
<srid> I'm not sure why there is /boot AND /boot/efi.
<clever> srid: mount them back to the correct place, and re-run nixos-generate-config to fix it
<srid> hardware-configuration.nix ^^
<simpson> Trying to imagine exporting the NixOS system version, akin to what $(nixos-version) prints, in a Prometheus attribute. The best I've gotten so far is a cron job (systemd timer) which runs that command and puts its output into a textfile for the Prometheus node exporter to export; what else have folks done?
<clever> its wrong because you moved things and didnt regen the file
<betawaffle> clever and ldlework: what we really want is the deterministic environment bits of nixos, without all the os/service/activation-y things
<ldlework> betawaffle: why?
drakonis1 has quit [Ping timeout: 272 seconds]
<ldlework> someone at lunch you respect said "systemd sucks" and that was the end of it?
<{^_^}> [nixpkgs] @romildo opened pull request #88960 → deepin.qcef: 1.1.7 -> 1.1.8 → https://git.io/Jfw95
<betawaffle> no, it has to run under kubernetes
<simpson> LevelChart8: NixOS is a relatively straightforward Linux distribution; shop according to broad kernel and userland compatibility. For example, I might recommend against a particular GPU vendor because of their well-known driver issues.
<betawaffle> for... reasons
<ldlework> hehe ok
<ldlework> wait
<ldlework> a development environment needs to run under k8s?
<ldlework> I feel like you're leaving a bunch out :P
<betawaffle> yeah, it's really weird, trust me
<ldlework> betawaffle: have you told your coworkers about lorri
<betawaffle> euank knows about lorri, i think...
<simpson> betawaffle: If you have a Dockerfile that starts with `FROM nixos/nix`, then you can nix-shell into Pods which are using that image. It's pretty wild, honestly, to be able to summon whatever debugging tools are needed to each Pod.
<betawaffle> i don't think that solves our problem here
<{^_^}> [nixpkgs] @zimbatm merged pull request #88935 → gitlab-runner: 12.10.2 -> 13.0.0 → https://git.io/Jfwzy
<{^_^}> [nixpkgs] @zimbatm pushed commit from @max-wittig to master « gitlab-runner: 12.10.2 -> 13.0.0 (#88935) »: https://git.io/Jfw9x
<srid> hardware-configuration.nix updated, now running `nixos-rebuild boot `
<ldlework> It just really sucks when your tooling doesn't work with the bits inside the container.
<clever> srid: and things must be mounted in the right place before you `nixos-rebuild boot`
<ldlework> You can never really get comfortable, ever after a while. Tools continuously popup that don't work across the container bridge.
<srid> clever: right they are mounted. BUT will 'nixos-rebuild boot' use the new network interface name in configuration.nix when switching?
<srid> (like 'nixos-rebuild switch' does)
<clever> srid: boot will just write to /boot and do nothing else
<betawaffle> ldlework: we have a container right now that "works", but we build it with a dockerfile
<clever> srid: the changes wont take effect until after you reboot manually
<ldlework> betawaffle: I know I'm not helping, I just wish Docker turned out to be better for that, personally, so I'm just griping.
<euank> lorri looks awesome and somewhat relevant. Possibly it fits our needs?
<betawaffle> which is awful
<ldlework> Seems like you could run services in containers
<ldlework> And leave all the tooling up to NixOS
<srid> clever: okay, so it will write the new generation to /boot and during reboot that new generation will be used (which doedsn't have the kernel param we added)
<srid> i assume that new generation uses latest configuration.nix
<ldlework> But at that point, might as well just run those services as NixOS services as they are so easy to define and manage from your NixOS config
<betawaffle> we don't need to run any services in the devenv container ldlework
<clever> srid: yeah
<ldlework> These become instantly sharable too
<ldlework> As a text file
<ldlework> Since it's nix, you can also modularize this configuration
<ldlework> So that it's both sharable in parts, and parametric
<ldlework> Seriously we've entered a new dawn, and containerized dev environments were a nice stop gap, but history imo
<betawaffle> we want nixos's configuration.nix, but without any init system, nor assumptions that an init system is present
<betawaffle> ie. single-user nix, etc
<euank> It's less containerized dev environments, and more the choice of "all developers run the prod environment locally" and "the prod environment is k8s"
<ldlework> If you are just running prod locally, why does this have to be involved in your development environment?
<euank> Which means we naturally end up with the devenv interacting with k8s and services via k8s's dns and other abstractions
<ldlework> Why can't you use service discovery and so on, to let your tools talk to those services?
<euank> the devenv wants to interact with those services
<ldlework> Yes exactly.
<simpson> What do you actually want out of configuration.nix, if you don't want users or systemd?
<euank> and service discovery and such in k8s is frustratingly tied to running things in k8s
<euank> it expects to eat the world
<ldlework> simpson: probably things like standard packages and tooling for developers
<ldlework> to work on prod
orivej_ has quit [Ping timeout: 265 seconds]
<ldlework> s/prod/the product
orivej has joined #nixos
<betawaffle> simpson: lots of tooling, and we do actually want one user...
<betawaffle> a non-root user
<simpson> Yeah, but that can come from nixpkgs without having a configuration.nix. I'm wondering what specifically about the NixOS modules is alluring.
<betawaffle> nixos modules are awesome?
<ldlework> simpson: ahh "why not just nix" you're asking
<ldlework> it's a good question
<betawaffle> i mean, we'd be fine with just nix, but we need to not run into the problems we've had with nix-env
<ldlework> like what
<euank> We'll probably end up with just nix, but if we were able to re-use nixos-integrated-things like lorri, that would be awesome
<ldlework> euank: lorri should work with "just nix"
<euank> Oh, neat. I need to dig into that more since it looks like it does a lot of what I'd want
<simpson> You can use direnv with plain Nix, directly: https://github.com/direnv/direnv/wiki/Nix
<ldlework> With direnv it should be trivial to gather up the service discovery details you need, and expose them to emacs or whatever
<euank> ty
<ldlework> If you're developing locally
<ldlework> You should probably even be able to locally override the ip's and dns names that are used for services
<ldlework> So you should probably not even need service discovery?
<simpson> Also, you can use the nixos/nix Docker image without nix-env; just nix-build or nix-shell whatever you need: https://hub.docker.com/r/nixos/nix/
<ldlework> Unless you got "dynamic" infrastructure stuff going on.
<ldlework> If you're using NixOS though, might as well just use environment.systemPackages
<ldlework> even if you don't use any other part
<euank> Yeah, if we were using nixos, this would be a much different problem
<euank> I think we're stuck ont dictating the host OS still? Maybe?
<ldlework> euank: we are not at all talking about any container that is actually part of the product right
<euank> Nope
<betawaffle> no
<ldlework> just a container you give to developers so everyone has the same tooling?
<betawaffle> correct
<ldlework> man
<euank> Yeah. Basically to control versioning for compilers and deployment tools
<ldlework> nix-shell is sooooooo much better for that
<betawaffle> right now, we have two modes: linux host, and macos host
<ldlework> like infinitely
<euank> nix-shell in a container seems like what we'll end up with at this rate
<clever> yeah, just nix-shell --pure and youll get the same tooling everywhere
<betawaffle> linux runs k8s and stuff + devenv as a container. macos runs all of that inside a vm
<ldlework> then local tools like editors wont be able to talk to those things
<clever> no need for any docker
<ldlework> just skip docker
<ldlework> apt-get install nix
<ldlework> nix-shell -p nodejs
<euank> The nixos stuff betawaffle's been talking about is mostly about bootstrapping this container correctly
<ldlework> seriously
<simpson> I'm not even sure why you need a container, unless there's something spiky about Darwin.
<ldlework> skip the container
<ldlework> I used "just nix" on Darwin for 9 months
<ldlework> It was awesome
<clever> ldlework: youll want to use a shell.nix that pins nixpkgs
<srid> interface is back on enp1s0f0, yay. clever thanks for all your help; one last quick question: can I setup full disk encryption without boot screen access (i.e., all from inside nixos and reboots)? or do I have to do a new install of NixOS focusing on full disk encryption? (I'll read the nixos manual anyway)
<ldlework> clever: absolutely
<ldlework> I even started packaging OSX "Applications" that use the OSX "Applications" system, with home-manager
<clever> srid: you need to wipe the disk to setup FDE, and that requires / to not be mounted
<clever> srid: so you would have to use the kexec stuff i wrote
<srid> Ah, I see.
<ldlework> euank: stop what you're doing, and just install nix locally to whatever OS you're currently on
<ldlework> euank: then do "nix-shell -p nodejs"
<betawaffle> ldlework: some of us are running nixos
<euank> Don't worry, I've got nix installed. For my local tooling I do use nix.
<ldlework> now type npm install gulp
<ldlework> euank: okay so then you should see why a container isn't required
<euank> I'm chatting from nixos, I'm aware of the glory of nix and home-manager and all that jazz
<ldlework> euank: yeah but your coworkers don't need NixOS to get nix-shell
<ldlework> that's all my point is
<adisbladis> ldlework: I actually want a containerized nix-shell :P
<betawaffle> the problem is nix-shell may not be enough
<ldlework> why so?
<betawaffle> (we haven't figured that out yet)
<{^_^}> [nixpkgs] @ajs124 closed pull request #86931 → gnustep.gorm: 1.2.24 -> 1.2.26 → https://git.io/JfGH2
<betawaffle> because there's more involved than just the correct environment variable
<ldlework> let's say you have two checkouts of a product
<ldlework> and you spin up k8s twice
<ldlework> for two branches
<euank> nix-shell should be enough I think
<betawaffle> variables*
<ldlework> now you use dir-env and lorri
<ldlework> to talk to the instances for each version
<adisbladis> betawaffle: Have you seen https://github.com/hercules-ci/arion
<ldlework> when you open the source code of version-a
<ldlework> you will get all of the service discovery for the local deployment of version-a
<ldlework> totally isolated from version-b
fendor_ has joined #nixos
<betawaffle> ldlework: spinning up k8s twice isn't viable either, unfortunately
<ldlework> what does the container for the dev environment add?
<betawaffle> some of our people don't have much ram
<ldlework> i'm just saying
<ldlework> even if you wanted to do the thing that would ask for a container the loudest
<betawaffle> the main think is kubernetes dns magic, iirc
<ldlework> it still isn't needed
<ldlework> how would putting your tools inside of a container
<ldlework> solve the service discovery anyway?
<{^_^}> [nixpkgs] @ajs124 closed pull request #88895 → gnustep.base: 1.26.0 -> 1.27.0 → https://git.io/JfVFK
<{^_^}> [nixpkgs] @ajs124 closed pull request #88892 → gnustep.make: 2.7.0 -> 2.8.0 → https://git.io/JfVFf
orivej has quit [Ping timeout: 246 seconds]
<ldlework> have k8s add environment variables to the dev container?
<ldlework> for services?
<betawaffle> ldlework: dns is our service discovery. i'm sure we can figure *something* out
orivej has joined #nixos
<ldlework> betawaffle: right, so what does the container get you/
<betawaffle> curl https://some-service/... works
<betawaffle> for example
alp has joined #nixos
<euank> ldlework: k8s generates a resolv.conf and adds iptables rules to route between containers
fendor has quit [Ping timeout: 258 seconds]
<euank> Those iptables rules half-work on the host, the dns bit doesn't work on the host.
<ldlework> right but surely it also has a cli/rest interface for also querying that information
<euank> nope
<ldlework> yeah right
<betawaffle> all our services are grpc
<euank> I mean, sorta but not really. k8s assumes things run on k8s.
<betawaffle> and most of them are only exposed inside the cluster
<euank> betawaffle: I think he was talking about k8s's interface for querying that
<{^_^}> [nixpkgs] @Lassulus merged pull request #66427 → pure-prompt: init at 1.12.0 → https://git.io/fj7VG
<{^_^}> [nixpkgs] @Lassulus pushed 4 commits to master: https://git.io/JfwHE
<betawaffle> oh
<ldlework> i am very skeptical that k8s does not have an out-of-container cli or something for querying the state and details of pods and so on
<euank> It does
<betawaffle> it does
<betawaffle> but we need dns to avoid a ton of rework
<euank> It doesn't have an out-of-container interface for being inside the k8s network in any reasonable way.
<euank> i.e. things like "if I access 10.2.3.4, that routes" is a concern k8s doesn't handle at the API
<ldlework> OK I understand the problem
<euank> it handles that by assuming you have a working network overlay or cni plugin or something that deals with it
<euank> We're way off in the weeds
<bqv> i want to check if a string is empty or whitespace, how best?
<ldlework> bqv: regular expression?
<ldlework> :P
<bqv> i was dreading that
<ldlework> bqv: lol this will be a pretty trivial regular expression tho
<bqv> no not because it would be hard, just because it seems like an unpleasant solution
justanotheruser has quit [Ping timeout: 240 seconds]
waleee-cl has joined #nixos
mauli has joined #nixos
<ldlework> euank: I feel like if there was a good way to integrate nix-shell with the DNS of a k8s cluster then simpson would have already said what it is.
<{^_^}> [nixpkgs] @winpat opened pull request #88962 → django-rq: init at 1.0.0 → https://git.io/JfwH1
<{^_^}> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/72066757c8b (from 4 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
<ldlework> Sorry to waste so much of your time trying to understand actual problem :)
<euank> No, it's appreciated!
<ldlework> If you can figure out how to get dns to resolve outside of a container, are there any other major problems?
<betawaffle> i think we've actually figured out we may not need the networking stuff to work
<euank> Apologies to the rest of the channel for that long tangent. It's well worth talkign through it and understanding if there's something to simplify and what other options are there
<simpson> I don't know of anything turnkey which does this, no. I'd instead try to isolate the development pieces so that they don't need so much of a running cluster in order to be hacked upon.
<ldlework> I think that it's an open problem for solutions like nix-shell and lorri so it's worth discussing for sure!
<ldlework> simpson: While I agree, there is a ton of value add to be able to run as much of production locally as you can, as you can do all sorts of testing that wasn't possible before you could run everything locally like that.
<{^_^}> [nixpkgs] @Ekleog pushed commit from @notriddle to master « buildRustCrate: Replace hyphen with underscore in env variables (#88054) »: https://git.io/JfwH9
<{^_^}> [nixpkgs] @Ekleog merged pull request #88054 → buildRustCrate: Replace hyphen with underscore in env variables → https://git.io/JfEwv
<ldlework> I try to make sure that we can run as much of production locally as closely as possible, when I work on things.
<betawaffle> it's very useful
<betawaffle> though taxing on (some of) our machines
<ldlework> I think there's probably room for us to improve our solution space on the Nix end, even if it has really nothing to do with changing Nix in anyway.
<ldlework> It's not really even a nix problem.
<simpson> Sure. And #nixos-kubernetes is a channel for that work specifically, although progress is slow because k8s is so difficult.
<euank> I do think a nixos-in-a-container variant that's capable of evaluating expressions, swapping out /etc symlinks, managing users.. I think that does have value.
<ldlework> It's more of a generalized "how do we interact with container-clusters without throwing everything into a container" problem
<ldlework> euank: yeah like adisbladis was saying
<euank> Even if parts of nixos modules (like services, bootloaders, filesystems etc) don't make as much sense
<ldlework> nix-shell that reaches into a nixos container but still exports all of that (somehow) to a local nix-shell
<ldlework> so direnv and friends still work
<betawaffle> what we have right now is so janky
<{^_^}> [nixpkgs] @Lassulus merged pull request #66003 → taisei: init at 1.3 → https://git.io/fjHMK
<{^_^}> [nixpkgs] @Lassulus pushed 2 commits to master: https://git.io/JfwHx
<ldlework> you know how docker has host networking?
<ldlework> there should be a mode for k8s for host networking
<betawaffle> there is
<betawaffle> we use it in a few cases
<ldlework> can you do that for development?
<betawaffle> we do, yes
<ldlework> >_>
<ldlework> lol
<betawaffle> did i misunderstand your question?
<ldlework> if you can run the cluster on the host network, thereby I'm assuming, solving the dns resolution problem, then are we back to "drop the container"?
<betawaffle> no, we only run some services with host networking
<betawaffle> we *can't* use it for everything
<betawaffle> nor would we want to
<ldlework> betawaffle: will you come back and tell us what you decided to do?
<betawaffle> definitely
<{^_^}> [nixpkgs] @Mic92 merged pull request #88949 → mu: 1.4.6 -> 1.4.7 → https://git.io/JfwPu
<{^_^}> [nixpkgs] @Mic92 pushed 2 commits to master: https://git.io/JfwQe
<euank> drop the container, generate a resolv.conf and run the devenv in a mount namespace with `unshare -m -- mount --rbind k8s-hack-resolv.conf /etc/resolv.conf` was the path I thought about when we were talking about "can you get the k8s networking resolution stuff to work on the host"
<betawaffle> we've got to figure this out in 2 weeks
<euank> because the answer is "sorta yes, but it's an awful hack"
<ldlework> i highly doubt you'll find something that isn't a hack, if you don't find someone's pet project that has solved this on github
<ldlework> and even then, it's probably still a hack underneath :)
<betawaffle> hacks are fine as long as they are better than the existing hacks :P
<ldlework> euank: really you'd want to get the cluster networking only in the nix-shell
<ldlework> i just don't know enough about linux networking to help
<ldlework> or to even know if it's possible
<euank> Huh, that's a thought. yeah, you can join a process to another network namespace.
<ldlework> That would be quite the thing though :)
<euank> i.e. `unshare -n -t=$(some-k8s-pause-container) -- nix-shell`
<betawaffle> yeah, that's possible. it's all a container is anyway. a special process
<ldlework> Interjection: Just the channel's daily invitation to become a user / contributor of Styx and to join us over at #nixos-styx! <3
pjt_014 has joined #nixos
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #nixos
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88964 → python27Packages.elasticsearch: 7.6.0 -> 7.7.0 → https://git.io/JfwQm
virus_dave has joined #nixos
<virus_dave> heyas all! (1) What's the canonical way to tell if a particular linux install is nixos? Say, from bash. (2) What about inside nix lang within the definition of a particular derivation? Something more precise than `isLinux`
turion has joined #nixos
<bqv> [ -f "/etc/NIXOS" ]
<bqv> i don't see how it would be relevant inside a nix eval
<euank> Something like `if [[ $(source /etc/os-release && echo -n $ID) == "nixos" ]]; then ...` seems like it would be the more general cross-platform way for bash to check
<{^_^}> [nixpkgs] @Frostman opened pull request #88965 → snmp_exporter: 0.17.0 -> 0.18.0 → https://git.io/JfwQl
<srid> I summarized my nixos on ovh experience briefly here. https://www.srid.ca/137ae172.html Hope I didn't neglect anything important clever
<{^_^}> [nixpkgs] @Frostman opened pull request #88966 → node_exporter: 0.18.1 -> 1.0.0 → https://git.io/JfwQ4
<cole-h> virus_dave: Why are you trying to detect NixOS?
drakonis has joined #nixos
hmpffff has quit [Quit: nchrrrr…]
<clever> srid: it will likely be much simpler, and you could skip step 1 entirely, if you use kexec
joko has quit [Quit: WeeChat 2.6]
pamplemousse has quit [Ping timeout: 272 seconds]
<srid> clever: I'll make a note of it in the post. What link should I use for kexec in the post?
<srid> The github repo?
<clever> yeah
<clever> youll want to edit the configuration.nix in there, to include the static ip config
<clever> if you get it wrong, you wont be able to ssh in, and it will reboot itself at the end of the hour
<clever> restoring the original OS
<clever> once you are in, you just format and install like you would locally
<clever> and you can start directly from the rescue shell, no need to install debian first
<srid> I'm gonna try kexec for my next nixos install on servers
<srid> clever: you can't really use kexec on VPS, can you?
<srid> like digitalocean
<clever> srid: as long as it has a kernel you control, it should work
mauli has quit [Ping timeout: 246 seconds]
drakonis_ has quit [Ping timeout: 272 seconds]
<virus_dave> @cole-h a few reasons, but here's the one reason: I have a derivation which needs to work cross-platform to install something (specifically, bazel). In most cases, bazel works fine in this fashion. However, bazel related stuff sometimes hard-codes references to shared libraries, so in nixos land those need to be re-written correctly. More generally, we have setup which needs to happen differently on our ubuntu machines that our nixos machines, so i
<virus_dave> need a reliable way to differentiate between the two both in and out of nix-lang land
<jbox> how can I install packages from nixos-unstable without using configuration.nix? I want to use nix-env
justanotheruser has joined #nixos
<clever> jbox: nix-env -iA unstable.hello
<clever> jbox: it just uses the names from `nix-channel --list`
<jbox> nix search doesn't show anything from nixpkgs-unstable, although I have it in nix-channel --list
<clever> jbox: you can reasonably assume that the names are the same between every channel
<clever> jbox: also, --add only takes effect when you --update
<jbox> clever: oh, I didn't know that. You mean nixos-rebuild --update switch, right?
<clever> jbox: no, nix-channel --update
<jbox> I just find it odd that nix search will show nixos-unstable, nixos, and nixpkgs, but not nixpkgs-unstable
zupo has joined #nixos
<jbox> oh, right. I'm thinking of nixos-rebuild --upgrade switch
<{^_^}> [nixpkgs] @Frostman opened pull request #88967 → hugo: 0.71.0 -> 0.71.1 → https://git.io/JfwQS
RRedcroft has joined #nixos
pamplemousse has joined #nixos
KeiraT has quit [Quit: KeiraT]
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88968 → python27Packages.identify: 1.4.15 -> 1.4.16 → https://git.io/JfwQN
KeiraT has joined #nixos
<lopsided98> virus_dave: NixOS provides /etc/os-release like most distros, but that isn't available within the build sandbox. Nix derivations should not (and if the sandbox is enabled, cannot) rely on any libraries installed in Ubuntu, and Nix tries very hard to avoid caring about what environment derivations are built on. At runtime, you are free to use /etc/os-release if you would like.
ok2` has quit [Ping timeout: 256 seconds]
<lopsided98> If you can make your package build and run on NixOS, it should also work (at least in terms of linking and shared libraries) on Ubuntu without modification.
ok2` has joined #nixos
asbachb has joined #nixos
maxdevjs has joined #nixos
orivej has quit [Quit: No Ping reply in 180 seconds.]
hmpffff has joined #nixos
orivej has joined #nixos
<asbachb> ,channels
<{^_^}> Largest Nix channels: #nixos, #nixos-dev, #nixos-chat, #nixos-aarch64, #nixos-security, #nixcon, #nixos-officehours, #nixops, #haskell.nix, #nix-darwin, #nixos-de, #nixos-emacs, #nixos-on-your-router, #nixos-nur, #nix-lang, #nixos-fr, #nixos-systemd, #nixos-borg, #nixos-wiki
<cole-h> asbachb: `import /root/..../default.nix {}`
<cole-h> not `import /root/.../default.nix`
<asbachb> cole-h: thanks (again).
<cole-h> :^)
blibberblob has joined #nixos
<jared-w> moved into a new house. Inherited some really interesting stuff/setups from the previous owner. But now I'm definitely slowly figuring out how to office again. Currently sitting on a kitchen table chair, using an ikea desk with 2 out of 3 monitors, and a styrofoam pad on the chair as a booster seat. Makes me feel like a toddler lol
<jared-w> but hey, at least my computer is the least buggy/janky thing about my working environment now #yaynix
o1lo01ol1o has quit [Remote host closed the connection]
<blibberblob> Hi all, I changed some configuration at some point (no idea what/when) and now my font size is tiny in a lot of GUI widgets in X11, such as firefox, gimp, file browsers, etc. It's almost unreadable. Does anyone know where this setting comes from?
<{^_^}> [nixpkgs] @Lassulus merged pull request #88624 → gnustep: update → https://git.io/Jf2Q2
<{^_^}> [nixpkgs] @Lassulus pushed 7 commits to master: https://git.io/Jfw7r
<{^_^}> [nixpkgs] @romildo opened pull request #88969 → deepin.qt5dxcb-plugin: 5.0.1 -> 5.0.11 → https://git.io/Jfw7K
o1lo01ol1o has joined #nixos
<bqv> cole-h: i once actually had several directories called "..."
<cole-h> Ouch
<kloenk> which builders can be use on mipsel-linux? because the stdenv is giving me errors on missing busybox
<bqv> no it was intentional. kid me was bad at stealth
<cole-h> lol
meh` has quit [Ping timeout: 256 seconds]
<{^_^}> [nixpkgs] @calbrecht opened pull request #88970 → python: Extend test with site-packages import → https://git.io/Jfw77
o1lo01ol1o has quit [Ping timeout: 246 seconds]
hmpffff has quit [Quit: nchrrrr…]
raghavsood has quit [Ping timeout: 245 seconds]
<{^_^}> [nixpkgs] @veprbl merged pull request #88476 → rivet: 2.7.2 -> 3.1.1 → https://git.io/Jfg0V
<{^_^}> [nixpkgs] @veprbl pushed 5 commits to master: https://git.io/Jfw5J
<{^_^}> [nixpkgs] @veprbl merged pull request #88957 → Nomacs/maintainer change → https://git.io/JfwSN
<{^_^}> [nixpkgs] @veprbl pushed 4 commits to master: https://git.io/Jfw5I
alp has quit [Ping timeout: 246 seconds]
<{^_^}> [nixpkgs] @blogle closed pull request #74283 → Adds support for infiniband network interfaces → https://git.io/JeXeU
RRedcroft has quit [Quit: leaving]
<jared-w> bqv: https://xkcd.com/981/
<{^_^}> [nixpkgs] @Lassulus merged pull request #81913 → mstflint: 4.4 -> 4.14 → https://git.io/JvwVh
<{^_^}> [nixpkgs] @Lassulus pushed 2 commits to master: https://git.io/Jfw5l
drakonis1 has joined #nixos
magnetophon has quit [Read error: Connection reset by peer]
<{^_^}> [nixpkgs] @asbachb opened pull request #88972 → postfix: 3.4.10 -> 3.4.12 -> 3.5.2 → https://git.io/Jfw5o
<{^_^}> [nixpkgs] @filalex77 merged pull request #88967 → hugo: 0.71.0 -> 0.71.1 → https://git.io/JfwQS
<{^_^}> [nixpkgs] @filalex77 pushed 2 commits to master: https://git.io/Jfw5P
<{^_^}> [nixpkgs] @filalex77 opened pull request #88973 → gleam: 0.8.0 -> 0.8.1 → https://git.io/Jfw51
<cole-h> asbachb: If your postfix bump replaces the other one, it should probably get closed :P
magnetophon has joined #nixos
<{^_^}> [nixpkgs] @asbachb closed pull request #88835 → postfix: 3.4.10 -> 3.4.12 → https://git.io/JfVYG
<asbachb> cole-h: don't stress me ^^
<cole-h> Hehe
<cole-h> I would have done it for you, but didn't want to step on any toes :)
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<asbachb> Would have been ok for me!
<bqv> jared-w: lmao
<ramses_> Any reason why we have pipe in the stdlib now which kind of resembles shell pipes, rather than compose which would resemble what most languages do? And I don't mean the `flip pipe` mentioned in the comments, but rather `flip (foldr apply)` which takes a list of functions and a value and threads the value through the functions right-to-left
zupo has joined #nixos
<bqv> what does `pipe` even do
<bqv> i've lamented the lack of a compose regularly
<ramses_> bqv: it's like a shell pipe, it takes a value and a list of functions, and threads the value through the functions left-to-right. So `pipe x [ f g h ]` is the equivalent of `echo x | f | g | h`in bash
<ramses_> But I don't find this very intuitive as it's the opposite of what most functional programming languages do
cosimone has quit [Quit: Quit.]
<energizer> haha i can hardly imagine something more intuitive than echo x | f | g | h
<bqv> lmao
<bqv> yeah i very much don't like that
<bqv> but i don't like a lot of things, hey ho
<balsoft> ramses_ You mean you'd like it to mean f (g (h x)) ?
<bqv> no, (f . g . h) x
<ramses_> balsoft: I mean I'd like to have a function `compose = flip (foldr apply)` in the stdlib, which does indeed what you wrote
<ramses_> bqv: that's the same
<balsoft> bqv: wut?
<balsoft> Ah, so I'm not crazy, it's the same
<bqv> ramses_: in this situation, . would be compose
<balsoft> ramses_: Maybe you can add a PR with such a function? I think it's a better way of discussing such things, even if the change is just one line
mauli has joined #nixos
<bqv> balsoft: basically, composing functions rather than applying a list of functions to a value
<ramses_> bqv: yeah, but without infix operators that would be very clunky in usage
veleiro`` has joined #nixos
<bqv> true
knupfer1 has joined #nixos
knupfer has quit [Quit: knupfer]
knupfer1 is now known as knupfer
<ramses_> So I do think the approach with the list is a pretty good compromise, I just find both the order of the applications and the order of the arguments very counterintuitive
chloekek has quit [Ping timeout: 246 seconds]
veleiro has quit [Ping timeout: 272 seconds]
veleiro` has quit [Ping timeout: 260 seconds]
<{^_^}> [nixpkgs] @magnetophon opened pull request #88974 → dtrx: remove p7zip, since it's unsafe → https://git.io/JfwdW
<kloenk> ramses_: Elixir hast the ‘|>‘ operator, so some functional languages have those pipes
<{^_^}> [nixpkgs] @magnetophon opened pull request #88975 → gwc: init at 0.22-4 → https://git.io/Jfwd4
<ramses_> kloenk: I wouldn't claim that no languages have this operator, but it seems to me that it's definitely not the most common order in which to do function composition
<kloenk> Yeah, but is actually quite usefully
<ldlework> pipeline operator is awesome
<ramses_> I also have absolutely no issue with `pipe`, I just find it weird that we define this one and don't have a more standard compose function, which I find more intuitive
<bqv> i mean i guess i'd be happy if the order of arguments was reversed, i can't see the benefit of partially applying "pipe x" whereas the alternative is ubiquitous
<ldlework> did you know javascript is getting the pipeline operator? :P
<bqv> npm install left-pipe
<ldlework> yeah you can get the feature today with babel
<ramses_> ldlework: I rest my case, if js has it, it must be the right thing ;)
m0rphism has joined #nixos
<ldlework> i use it in my typescript
asbachb has quit [Remote host closed the connection]
asbachb has joined #nixos
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88976 → python37Packages.jellyfish: 0.7.2 -> 0.8.2 → https://git.io/Jfwdg
<{^_^}> [nixpkgs] @filalex77 opened pull request #88977 → wrangler: 1.9.1 -> 1.9.2 → https://git.io/Jfwd2
ritchan has joined #nixos
<bqv> ldlework: i can't actually tell if you're being serious or not
<bqv> which is an indictment in and of itself
<ritchan> hi guys, I'm installing nixos on a BIOS/MBR system and it's been stuck at 'copying channel' for while now... no CPU usage, no network usage, no nothing. what is it doing?
<ldlework> bqv: it actually is getting the pipeline operator, you actually can use it today, and i actually do use it in my typescript
veleiro`` has quit [Remote host closed the connection]
<ldlework> ritchan: nappin
<ldlework> ritchan: waiting for the right moment
<bqv> heh, ok
orivej has quit [Ping timeout: 272 seconds]
<ritchan> that's not permissible - it's a computer! It's supposed to work hard for me...
orivej has joined #nixos
<ldlework> ritchan: what do you think the electric sheep are for?
<ritchan> seriously though... what does "copying channel" mean?
hmpffff has joined #nixos
pxc has joined #nixos
<simpson> ritchan: No I/O at all? vmstat might help. I'm guessing that it's copying a snapshot of nixpkgs to your disk.
<pxc> hey bqv! are you around to answer some questions about your flake.nix for your Nix config? I've been away from Nix stuff for a few days, and I'm writing my flake.nix and it's mostly a copy of yours. I just wanna make sure I actually understand everything I'm using and its motivation, so it's not too cargo cult-y
<ritchan> vmstat says no new reads/writes are happening
<bqv> oh hi
<bqv> partially, yes
<bqv> but i'm about to go eat
<bqv> feel free to ping me some, worst case i always read backlog
<pxc> oh ok, sweet
<pxc> it looks like it doesn't represent all of the channels you have in your inputs. It looks instead like a selection mechanism that lets you choose your packages, modules, and nixpkgs lib functions from different channels, and then use that throughout your config. Is that right?
<simpson> nix-env might have trouble on your target machine, perhaps because it is low on RAM.
lsix has quit [Quit: WeeChat 2.8]
<azazel> anyone recalls how that functionality when you try to run an executable in the terminal and nixos tells you in which packages you can find it?
<azazel> s/how that/what's that/
<pxc> and I guess the assumption is that usually nixpkgs.lib and to a lesser extent nixpkgs.modules are stable, so you might as well use those from master. But you want to cash in on the binary caching for one of the actual channels for your packages. Is that right?
<bqv> pxc: yeah, i did that so i can very easily switch what "channel" i want to use for {pkgs, modules, lib}
<pxc> sweet
<bqv> exactly
<euank> azazel: `command-not-found jq` would let you manually invoke it
<{^_^}> [nixpkgs] @magnetophon opened pull request #88978 → speech-denoiser: fixup prefix → https://git.io/JfwdH
<bqv> lib is extremely unlikely to break, modules are very likely to be backwards compatible and rarely break
<euank> and that's probably the keyword to try and grep / google about it
<bqv> but packages are a pain to build if they're not cached yet so i lag that to nixos-unstable
<pxc> right, ok
<ritchan> @simpson I'm running nixos-install --verbose now - it says "copying path '/nix/store/....' to 'local'. Nothing is using my RAM at the moment, 760MB/4GB used. Where is 'local'? can't be my ramdisk
<azazel> euank: I have it installed, but a friend of mine with a more recent installation hasn't it, I was wondering why?
<clever> ritchan: local means nix will just open files in /nix/store directly
<ritchan> I tried to 'du -h', or 'cp -R' this directory in /nix/store, but the process is always 'Killed'. what does that mean?
orivej_ has joined #nixos
<clever> ritchan: what does `dmesg` say?
orivej has quit [Ping timeout: 265 seconds]
<ritchan> BUG: unable to handle page fault for address:.....
<ritchan> #PF: error_code(0x0010) - not-present page
knupfer has quit [Ping timeout: 260 seconds]
<ritchan> bad RAM?
<bqv> pxc: fwiw, the nonsense i do on lines 37,43-45 are just hacks to make the shell.nix and devShell work
<euank> ritchan: if it was an oomkill, it should leave a note in `dmesg`
<pxc> bqv: ty for that tip; I'll review those lines in a moment
<euank> try running `dmesg` and see if it has any info. If it has an oomkill, it'll also tell you what and why
j-k has quit [Quit: WeeChat 2.8]
o1lo01ol1o has joined #nixos
<ritchan> I've been watching my RAM usage the whole time, the line never went up to 4GB. Besides, these processes were killed instantly.
<pxc> bqv: can you explain a little bit why that hack is necessary? I'll open up shell.nix right now
Chiliparrot has joined #nixos
<clever> ritchan: can you pastebin the entire dmesg output?
<ritchan> yup, got another kernel trace in my dmesg already.... the RAM usage went up to 1.54GB, and then went down.
<pxc> bqv: oh, is it related to how you want your configuration to work with or without a flakes-enabled Nix?
<euank> ritchan: nix also overcommits a ton of virtual memory even if it doesn't allocate real memory, so if your kernel doesn't have overcommit on, that's one possibility..
<ritchan> ok let me get on the computer
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<euank> Which is sorta what I was poking towards, but I have no clue if that's plausible really
<gchristensen> hmmm...really? I didn't know that
<ritchan> uh.... new firefox tabs there just crash
<ritchan> bad sign
<{^_^}> [nixpkgs] @nagisa opened pull request #88979 → atk: Fix buildInputs vs nativeBuildInputs → https://git.io/Jfwdj
<{^_^}> [nixpkgs] @nagisa opened pull request #88980 → gi: fix buildInputs vs nativeBuildInputs → https://git.io/JfwFJ
ritchan2 has joined #nixos
aveltras has quit [Quit: Connection closed for inactivity]
<ritchan> @euank it just worked this time....
zupo has joined #nixos
<euank> spooky. If dmesg doesn't have anything and processes were getting killed, bad ram is starting to sound more possible
ritchan2 has quit [Remote host closed the connection]
<euank> If you do figure it out what was happening, I'd be curious to hear!
<ritchan> sure. i'll check if the RAM modules are supposed to be running at DDR2-1066. memtest86 and then step back down to DDR2-800. thanks for your help!
mauli has quit [Ping timeout: 264 seconds]
<ritchan> oh my god I haven't seen this many memtest86 errors in a loooong time
<ritchan> and this is supposed to be my NAS!D:
<ritchan> D:
<evils> that's coreboot's fault
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
asbachb has quit [Ping timeout: 245 seconds]
orivej has joined #nixos
<evils> #85790
<{^_^}> https://github.com/NixOS/nixpkgs/pull/85790 (by evils, 4 weeks ago, open): memtest86plus: 5.0.1-coreboot-002 -> 5.31b
magnetophon has quit [Read error: Connection reset by peer]
<evils> their latest release is buggy, luckily memtest86.org released a new version (beta until they can get back to work and test it)
<evils> sry, memtest.org
krasnij has quit [Quit: ZNC 1.7.4 - https://znc.in]
<ritchan> i'll try with another memtest image
<ritchan> the addresses at which they fail stay the same for me across reboots and RAM speed changes - so maybe it's really a RAM error
magnetophon has joined #nixos
thc202 has quit [Ping timeout: 260 seconds]
kgz has quit [Ping timeout: 260 seconds]
lohfu has quit [Ping timeout: 256 seconds]
ramses_ has quit [Quit: Connection closed]
<{^_^}> [nixpkgs] @aycanirican pushed to update_to_snort_2_9_16 « snort: 2.9.11.1 -> 2.9.16 »: https://git.io/JfwFj
dsx has quit [Quit: Remote host closed the connection]
<{^_^}> [nixpkgs] @aycanirican opened pull request #88981 → snort: 2.9.11.1 -> 2.9.16 → https://git.io/Jfwbf
lohfu has joined #nixos
Chiliparrot has quit [Quit: My iMac has gone to sleep. ZZZzzz…]
kgz has joined #nixos
<{^_^}> [nixpkgs] @romildo opened pull request #88983 → gsettings-qt: 0.1.20170824 -> 0.2 → https://git.io/Jfwbk
Franois[m] has joined #nixos
dingenskirchen has quit [Quit: dingenskirchen]
dingenskirchen has joined #nixos
<ritchan> my RAM is so bad, memtest86+ v5.31b froze.
KindTwo has joined #nixos
<{^_^}> [nixpkgs] @nagisa closed pull request #88980 → gi: fix buildInputs vs nativeBuildInputs → https://git.io/JfwFJ
orivej has quit [Quit: No Ping reply in 180 seconds.]
<evils> jikes
<gchristensen> jikes is right
KindOne has quit [Ping timeout: 272 seconds]
orivej has joined #nixos
gustavderdrache has quit [Quit: Leaving.]
KindTwo is now known as KindOne
onla has joined #nixos
<{^_^}> [nixpkgs] @aycanirican merged pull request #88981 → snort: 2.9.11.1 -> 2.9.16 → https://git.io/Jfwbf
<{^_^}> [nixpkgs] @aycanirican pushed to master « snort: 2.9.11.1 -> 2.9.16 (#88981) »: https://git.io/JfwbD
<{^_^}> [nixpkgs] @aycanirican pushed 0 commits to update_to_snort_2_9_16: https://git.io/JfwbH
ritchan has quit [Remote host closed the connection]
simba1 has quit [Ping timeout: 240 seconds]
<bqv> pxc: yep, just so that shell.nix functions, otherwise i could just use dev-shell from the flake.nix
<bqv> (stuff like lorri depends on nix-shell rather than `nix dev-shell`)
neonfuz2 has joined #nixos
<neonfuz2> Hello
<neonfuz2> Is there any way to glob files from within nix?
<neonfuz2> specifically in my .config/nixpkgs/config.nix I am manually listing a list of patches for dwm and I'd like to just glob them instead if possible
<neonfuz2> otherwise I have to modify config.nix manually, or make a script that does it for me but idk what the best method for that is
orivej has quit [Ping timeout: 240 seconds]
Austyn0997705036 has joined #nixos
Austyn0997705036 has left #nixos [#nixos]
orivej has joined #nixos
<lewo> neonfuz2: there is a readDir builtin that you could use
fendor_ has quit [Read error: Connection reset by peer]
<cole-h> > lib.attrNames (builtins.readDir ./.)
<{^_^}> access to path '/var/lib/nixbot/state/nixpkgs' is forbidden in restricted mode
<cole-h> Well, you get the idea.
<lewo> neonfuz2: you could also find something here: https://github.com/NixOS/nixpkgs/blob/master/lib/sources.nix
<neonfuz2> readDir works perfectly here, thanks
<neonfuz2> thanks
fendor has joined #nixos
<pxc> bqv: ah, ok. I think I want to keep the devShell stuff then
hmpffff has quit [Quit: nchrrrr…]
Franois[m] has left #nixos ["User left"]
<pxc> bqv: looks like the `nixos` command you have is a replacement for nixos-rebuild, similar to the rebuild command added to the shell.nix in nixflk. Does the latest nixos-rebuild still not work with flakes atm?
<{^_^}> [nixpkgs] @matthewbauer opened pull request #88984 → openmpi: use pkgsHostTarget for gfortran → https://git.io/JfwN2
<bqv> It works fine, I just wrapped it cause nixos-rebuild is confusing and I need some extra stuff
<bqv> That command also git tags stuff
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88985 → python37Packages.elementpath: 1.4.4 -> 1.4.5 → https://git.io/JfwNa
leah2 has quit [Ping timeout: 244 seconds]
AndersonTorres has joined #nixos
<pxc> bqv: I noticed the tags on the repo. What's the advantage of tagging every build? Lets you see what config you used for a given system profile without copying your config into the nix store or something like that?
<bqv> Yep! Though actually, I do that too
<bqv> It goes to /run/current-system/flake/
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<bqv> God bless optimize-store
<pxc> ah ok, cool.
<pxc> haha yeah
<pxc> bqv: how come you make use of the passthru field while the original nixflk doesn't? I've seen it used a few places in nixpkgs but it's a very general-purpose tool so just seeing that it's used doesn't tell me much
zupo has joined #nixos
<{^_^}> [nixpkgs] @filalex77 closed pull request #77362 → imag: init at 0.10.0 → https://git.io/JvvTF
<pxc> bqv: oh, nvm... it looks like it's so you can use a nix command as a provider for git-secrets
<{^_^}> [nixpkgs] @aycanirican opened pull request #88986 → ssldump: 0.9b3 -> 1.1 → https://git.io/JfwNQ
<{^_^}> [nixpkgs] @filalex77 opened pull request #88987 → zola: 0.10.1 -> 0.11.0 → https://git.io/JfwN5
alp has joined #nixos
dasj19[m] has joined #nixos
<mudri> Any idea why I get this `undefined symbol` error when trying to build Agda from source via Cabal on NixOS? https://www.irccloud.com/pastebin/MUVxSsHe/
__monty__ has quit [Quit: leaving]
<mudri> Particularly: `<command line>: /nix/store/dh8g07rqvabf6a6c542kf5kwq4zarf22-bifunctors-5.5.7/lib/ghc-8.8.3/x86_64-linux-ghc-8.8.3/libHSbifunctors-5.5.7-1PLDiC6nz7O33RIEtINbSS-ghc8.8.3.so: undefined symbol: thzmabstractionzm0zi3zi2zi0zmD5zzRQZZUNFcq6kU1WHIrSvs_LanguageziHaskellziTHziDatatype_zdfTypeSubstitutionZMZNzuzdcfreeVariables_info`
<{^_^}> [nixpkgs] @Lassulus merged pull request #70487 → xflr5: init at 6.47 → https://git.io/JeCGl
<{^_^}> [nixpkgs] @Lassulus pushed 2 commits to master: https://git.io/JfwAe
<ldlework> If I define foo = "bar"; in a derivation, that attribute is available from the outside right
leah2 has joined #nixos
<infinisil> ldlework: Depends on what you mean with "from the outside"
o1lo01ol1o has quit [Remote host closed the connection]
<ldlework> like drv = mkDerivation { foo = "bar"; }
<ldlework> foo = drv.foo
<ldlework> ?
fusion809 has joined #nixos
<infinisil> I think so
<ldlework> But this will actually build the derivation right?
<infinisil> I mean you can just try it out
<ldlework> by accessing something on drv, it resolves drv and causes it to be built?
<infinisil> Setting foo like that will also set foo in the build environment, so yes this will rebuild the derivation if you change it
<infinisil> You can use passthru.foo = "bar" to not have that happen
<ldlework> I mean, is accessing drv.foo enough to cause it to be evaluated
asymptotically has quit [Quit: Leaving]
<ldlework> assume drv is not used in any other way
<infinisil> It shouldn't be built just with accessing that
hmpffff has joined #nixos
<ldlework> OK thanks, that was my thinking wanted to check
<infinisil> Evaluation triggering a build can only happen with IFD anyways
<ldlework> IFD?
<infinisil> ,IFD
<{^_^}> import-from-derivation (IFD) is when you evaluate nix from a derivation result, for example `import (pkgs.writeText "n" "1 + 1")` will evaluate to 2. This is sometimes problematic because it requires evaluating some, building some, and then evaluating the build result. It has been described as "such a nice footgun."
<{^_^}> [nixpkgs] @aycanirican merged pull request #88986 → ssldump: 0.9b3 -> 1.1 → https://git.io/JfwNQ
<{^_^}> [nixpkgs] @aycanirican pushed to master « ssldump: 0.9b3 -> 1.1 (#88986) »: https://git.io/JfwAC
<hexagoxel> waaait what happens if you trace a derivation? does it build it? or does it try to print all its fields and that just breaks?
<infinisil> hexagoxel: Neither
<infinisil> It just traces all fields *without* breaking
<hexagoxel> so one of my fields does not terminate?
<infinisil> No idea what you mean
gustavderdrache has joined #nixos
<hexagoxel> I have some derivation that when I try to trace it, it does not terminate.
<hexagoxel> probably some self-referencing structure?
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #nixos
<infinisil> It does not terminate without even giving infinite recursion?
lewo has quit [Remote host closed the connection]
<hexagoxel> is that an error that I might be getting? no, have not seen that.
<infinisil> Without any code or error I can't know what's going on
<hexagoxel> It just starts allocating and crashes after eating a few GB
civodul has quit [Quit: ERC (IRC client for Emacs 26.3)]
<infinisil> But that doesn't sound normal
<srid> "if builtins.currentSystem == "x86_64-linux""
<srid> What if I want to case on the hostname?
<srid> eg: import some modules only on a particular machine (but not the rest)
jsmolic has joined #nixos
<emily> you can look at config.networking.hostName
Thra11 has quit [Quit: WeeChat 2.8]
Doraemon has quit [Ping timeout: 240 seconds]
ddellacosta has quit [Ping timeout: 246 seconds]
<keithy[m]> Hi guys, does lib.mkIf have an else?
<cransom> i don't have your context, but if you need an else, you should be able to use a regular if/then/else
<hexagoxel> turns out, I have a value x that when I just print it in the `nix repl` ("x<enter>") says "[ «derivation /nix/store/.....drv» ]"
<hexagoxel> but when I "trace x {}" it does not terminate
<infinisil> hexagoxel: Try the same in a nix file with `nix-instantiate --eval` or so
<infinisil> nix repl messes with evaluation, I try to avoid it for anything other than quickly checking something
<keithy[m]> cransom ill try that then
<hexagoxel> I have a feeling it will be the same result, because this whole debugging run started with trying to nix build something
<hexagoxel> but I will try
<infinisil> If that still does it, you could try the `lib.traceSeqN <how many levels deep to trace>` function instead
<infinisil> E.g. lib.traceSeqN 1 x {}
<{^_^}> [nixpkgs] @filalex77 merged pull request #88831 → lite: 1.03 -> 1.05 → https://git.io/JfVmW
<{^_^}> [nixpkgs] @filalex77 pushed 2 commits to master: https://git.io/Jfwxe
<infinisil> And increase the number
<hexagoxel> nix-instantiate just prints the "x" as "<CODE>"
<cole-h> infinisil: I only use the repl for finding packages from `dontRecurseInto` stuff :P
<hexagoxel> I suppose this does not force it
<{^_^}> [nixpkgs] @tobim opened pull request #88988 → gcc: optimize cross-compiled libraries → https://git.io/JfwxT
<hexagoxel> ok, I changed my file from { ..; x = .. } to just x
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<hexagoxel> now it says "cannot import /nix/store/foo because /nix/store/bar.drv is not valid"
<Rusty1> q
Rusty1 has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
<hexagoxel> and it is not valid because it does not exist?
tobeportable has quit [Ping timeout: 246 seconds]
<clever> hexagoxel: nix-instantiate is read-only when you --eval
<clever> hexagoxel: you need --read-write-mode to make the changes persist
<hexagoxel> thanks, that helped
jsmolic has quit [Remote host closed the connection]
<hexagoxel> it prints [ <CODE> ]
<infinisil> hexagoxel: Use lib.traceSeqN as i showed
<hexagoxel> maybe this is all some nix repl bug?
<srid> emily: using 'config.networking.hostName' gives 'infinite recursion encountered' (I import my home manager config from configuration.nix)
dsx has joined #nixos
<{^_^}> [nixpkgs] @wchresta opened pull request #88989 → idris2: 0.2.0-840e020 -> 0.2.0 → https://git.io/JfwxG
<srid> Is there a way to delay an import so that it evaluates after the top-level configuration.nix stuff is evaluated?
tsrt^ has quit [Read error: Connection reset by peer]
hmpffff has quit [Quit: nchrrrr…]
<hexagoxel> infinisil: thanks, I will try that should I get problems outside of nix repl. For now, I will try switching to a (inotify-watch "myfile" "nix-instantiante --eval myfile")-based workflow
<infinisil> Cool, doing that too sometimes
agsdheidjd has quit [Ping timeout: 240 seconds]
mauli has joined #nixos
<hexagoxel> (if it is indeed nix repl that is at fault here, I think the repl should print a big fat warning at the start that it is experimental and buggy. This stuff has been really frustrating)
<hexagoxel> but thanks for the help
<euank> srid: where's the reference to `config.networking.hostName`? In the home-manager config?
<srid> I was importing the home-manager stuff in `imports` of configuration.nix euank so it doesn't work, because that import apparently is not recursive
<cole-h> hexagoxel: Well, the nix(1) command is explicitly experimental...
wildtrees_ has joined #nixos
lewo has joined #nixos
<cole-h> hexagoxel: `nix repl --help` -> "Note: this program is EXPERIMENTAL and subject to change."
Soo_Slow has joined #nixos
MmeQuignon has quit [Ping timeout: 272 seconds]
<hexagoxel> yeah, but if nix-repl is less reliable than build/instantiate that deserves a better hint somewhere
<euank> srid: ah, yeah, that makes sense. For my home-manager config, I've got it as `home-manager.users.<me> = import /path....` and just import the home-manager/nixos module in imports proper
<hexagoxel> just pasting a disclaimer everywhere does not help the user-base
wildtrees has quit [Ping timeout: 256 seconds]
Soo_Slow has quit [Max SendQ exceeded]
<euank> yup, exactly what I've ended up with on my machine, so if that's wrong we're both wrong together :)
<hexagoxel> wait, nix-instantiate does not have the disclaimer, only build does
Soo_Slow has joined #nixos
<hexagoxel> folks, better stop using nix build! :)
<quinn> there's a hydra build with a single row under build products called nix package, is there any way for me to download it over http?
wildtrees__ has joined #nixos
Soo_Slow has quit [Client Quit]
<energizer> why is `morph deploy` sending stuff from here to the remote instead of the remote just downloading from cache?
<infinisil> energizer: They must be using `nix-copy-closure` without --use-substitutes
<infinisil> Maybe that's configurable though
<bqv> hexagoxel: nix-build != nix build
<ldlework> When I try to add a complex structure to the `env` of runCommand it says: cannot coerce a set to a string
burkelibbey_ has quit [Quit: Connection closed for inactivity]
<ldlework> Looking at the source it seems to just do // env against the args to mkDerivation
<ldlework> So I don't understand what the problem is.
wildtrees has joined #nixos
<infinisil> ldlework: Yeah that doesn't work, because those are environment variables
wildtrees_ has quit [Ping timeout: 258 seconds]
justanotheruser has quit [Ping timeout: 265 seconds]
<infinisil> However __structuredAttrs does allow you to do this with .. (looks it up)
wildtrees_ has joined #nixos
<infinisil> ldlework: See https://nixos.org/nix/manual/
Rusty1 has joined #nixos
<infinisil> There's an explanation of it in https://nixos.org/nix/manual/#ssec-relnotes-2.0
<bqv> ldlework: arguments to a derivation become env vars
<ldlework> right
<bqv> If its a set, cant
turion has quit [Ping timeout: 272 seconds]
<ldlework> I think I just can't attach this metadata to the derivation
<ldlework> As it contains a function somewhere in there
wildtrees__ has quit [Ping timeout: 258 seconds]
<ldlework> And those can't be dumped to json
<bqv> Maybe passthru?
<ldlework> oh right
mauli has quit [Ping timeout: 246 seconds]
<ldlework> bqv: that worked
<bqv> 👌
<energizer> infinisil: thanks
<{^_^}> [nixos-homepage] @github-actions[bot] pushed commit from @edolstra to master « Update flake.lock and blogs.xml [ci skip] »: https://git.io/Jfwx5
wildtrees has quit [Ping timeout: 256 seconds]
<ldlework> bqv++
<{^_^}> bqv's karma got increased to 12
<ldlework> infinisil++
<{^_^}> infinisil's karma got increased to 299
<energizer> infinisil++
<{^_^}> infinisil's karma got increased to 300
szicari has joined #nixos
<hexagoxel> {^_^}++
<{^_^}> {^_^}'s karma got increased to 204
<infinisil> :P
<{^_^}> [nixpkgs] @nagisa closed pull request #88979 → atk: Fix buildInputs vs nativeBuildInputs → https://git.io/Jfwdj
erasmas has quit [Quit: leaving]
kvda has joined #nixos
z3t0 has joined #nixos
<z3t0> Hi
<z3t0> I am interested in using nix and have a few beginner questions
<z3t0> Whats the difference between nixos and nixpkgs?
<z3t0> I understand that one is a distribution and the other is a package manager. but what makes the nixos distr different than say ubuntu+nixpkgs
<simpson> nixpkgs is a ports tree; NixOS is a Linux distro built upon that ports tree.
<energizer> i have allowedUDPPorts = [5601]; nc -u -l $ip 5601 can hear nc -u -l $ip 5601 from other computer, but iperf --server --bind $ip --port 5601 can't hear iperf --client $ip --port 5601 from other computer. what gives?
orivej has quit [Ping timeout: 260 seconds]
<simpson> z3t0: NixOS includes a modular configuration system for systemd, mostly, but also stuff for users, bootloaders, that sort of thing.
<ldlework> z3t0: `nix` is package manager, `nixpkgs` is there the packages come from, `nixos` is an os that uses `nix` to pull packages from `nixpkgs`
<ldlework> is where*
<bqv> We need to go deeper
orivej has joined #nixos
<z3t0> Interesting, that clears a lot up for me
<z3t0> Does nix deal only with package installation, or also configuration?
<energizer> z3t0: nixpkgs is a collection of packages but bigger and more reproducible (top right https://repology.org/repositories/graphs)
<energizer> also configuration
<z3t0> I have used tools like ansible and am trying to think of how they compare. One difference clearly is that ansible doesnt do immutable/idempotent. It's more procedural decorated as declarative
jgeerds_ has joined #nixos
<z3t0> Okay so say I use nixos and I can say my system should have package A, B, C and I want the config file at /etc/A/conf to contain the contents of "abc".
<z3t0> Is that all doable?
<simpson> Yeah, sure. What Nix really highlights is that the idea of "system should have package" is actually nuanced. You want *some* packages to have access to some other packages, and in a structured manner.
<energizer> z3t0: yes, but it's often more idiomatic to configure services a config file path generated from the content of the config file
<simpson> To compare further with e.g. Ansible, a NixOS-oriented workflow will not change the state on the target system imperatively, but instead assemble the declared state in a staging area, called the Nix store, and then give you (or your daemon) a link into that store.
<z3t0> Very interesting
<energizer> so instead of having nginx look at /etc/nginx/whatever you'd have the nginx service run with --config-file ${myNginxConfig}
<simpson> The way that NixOS does whole-system atomic upgrades and rollbacks is thus not at all magic. To upgrade, first build the new state, then switch; to rollback, just switch to the previously-built state.
<z3t0> I've been delving into the functional space a lot with proramming and deployments and now I see Nix as a way to make my personal machine much more maintanabel
<z3t0> energizer: I see, kind of reminds me of docker/kubernetes style
<simpson> Kind of, yeah. In k8s, one declares a bunch of objects (Pods, Deployments, etc.) and then a cluster maintains the state according to such objects. Similarly, in Nix, one declares packaging expressions called "derivations", and those derivations are instantiated to create artifacts in the Nix store.
<{^_^}> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/2dfbe24bad4 (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
cr4y1 has quit [Ping timeout: 256 seconds]
<gustavderdrache> but instead of kubelet, it's systemd that makes sure you don't lose any logs :)
<simpson> systemd isn't essential to Nix, though. The better analogy to kubelets might be the Nix daemon.
<gustavderdrache> that's totally fair but it means i can't make my logs joke :P
<simpson> systemd might be analogous to Istio or Spinnaker, possibly.
<z3t0> Hmm this sounds cool
<pjt_014> z3t0: other note: literally anything you can implement can be a config option. case in point: https://nixos.org/nixos/options.html#minecraft-server
<z3t0> Is nix also a good choice for companies?
<keithy[m]> depends on the companies
<z3t0> I have been thinking of a good way to configure laptops for others to use. Initially my plan was to do pxeboot + centos + kickstart + ansible
<pjt_014> flyingCircus uses it I know
<keithy[m]> in a larger corporation they want so see "support"
<z3t0> keithy[m]: I guess I mean more from a technical standpoint
<ldlework> How to check if a set is empty?
<keithy[m]> tell any company that its going to take each technical specialist 6months to learn
<z3t0> If we were to use then support would = nix source code ahah and thats good enough for us
<keithy[m]> or you can have a redhat guy
<clever> > {a=42;} == {}
<{^_^}> false
<ldlework> nm stupid question
<ldlework> lol
maddo has quit [Quit: See ya]
<keithy[m]> but at home I have more control over my two servers in one weekend than I have ever seen corporately
<simpson> z3t0: From two interesting standpoints, one theoretical (the Shake/build-systems POV) and one practical (Google's Bazel build system and Midas package manager, which they invented independently), yes, the technology's obviously sound for companies.
<simpson> The bigger problem is that companies usually already exist, and thus have inertia which is going to have to be overcome in order to switch to Nix-oriented workflows.
wildtrees has joined #nixos
<z3t0> yes thats a fair assessment
<z3t0> It's definitely hard to combat inertia
<z3t0> That's a part of the reason I am trying to survey tools and technologies that are good choices for the future since we haven't settled on specific ones yet theres room to move around
smatting has quit [Ping timeout: 240 seconds]
<bqv> > {} == {}
<{^_^}> true
<bqv> Huh. Cool
<z3t0> nix is promising
<z3t0> I just looked at the github for nix and was surprised it wasn't all haskel hmm haha
<bqv> I think thats part of its attraction tbh
<bqv> Nobody seems to like stuff in haskell
<bqv> Its depressing
<pjt_014> It is an intimidating language
<pjt_014> I tried it a bit and could not get into it
wildtrees_ has quit [Ping timeout: 256 seconds]
<simpson> Well, as our Haskell build tree shows, Haskell's dominant module system has very brittle versioning. It's a tough language to maintain.
<pjt_014> tried learning FP with Elixir, which was much easier
<pjt_014> didn't they switch to a mire nixlike one to fix that?
<z3t0> I haven't ever used it, definitely got scared away from looking at it from afar
o1lo01ol1o has joined #nixos
wildtrees_ has joined #nixos
<{^_^}> [nixpkgs] @lilyball opened pull request #88991 → bat: 0.15.1 -> 0.15.3 → https://git.io/JfwpF
<pjt_014> z3t0: I can certainly recommend Elixir if you don't need super advanced FP stuff, it's *really* nice.
<lovesegfault> If i wanted to cross-compile gcc, how can I do that?
<pjt_014> I learned it after getting fed up with multithreading in python
<lovesegfault> like just ad-hoc to see how long it takes
<simpson> lovesegfault: pkgsCross might have something not in cache.
<pjt_014> lovesegfault: nix build -f channel:nixos-unstalbe pkgsCross.archname.gcc
<pjt_014> something like that
<lovesegfault> pjt_014: Oh, awesome, thanks
<lovesegfault> pjt_014++ simpson++
<{^_^}> simpson's karma got increased to 22
<{^_^}> pjt_014's karma got increased to 5
<pjt_014> thanks! :)
<pjt_014> lovesegfault: but
<pjt_014> do pkgsCross.foo.bar 1st
<pjt_014> that'll download the autocomplete data
<pjt_014> lovesegfault: then pkgsCross.[tab] will tell you what's available
<lovesegfault> is aarch64-linux aarch64-multiplatform?
wildtrees has quit [Ping timeout: 240 seconds]
o1lo01ol1o has quit [Ping timeout: 256 seconds]
wildtrees__ has joined #nixos
<pjt_014> lovesegfault: yes, I use that one with my raspi-3b regularily
<pjt_014> raspberryPi is for the pi 1 & 2 apparently
<pjt_014> I can't test for those, but the raspberryPi target *does* work with the pi zero
mbrgm_ has joined #nixos
justanotheruser has joined #nixos
wildtrees_ has quit [Ping timeout: 258 seconds]
<{^_^}> [nixpkgs] @romildo merged pull request #88603 → enlightenment.enlightenment: 0.23.1 -> 0.24.0, cleanup and fixes → https://git.io/Jf2w7
<{^_^}> [nixpkgs] @romildo pushed 13 commits to master: https://git.io/Jfwph
philr_ has joined #nixos
<z3t0> pjt_014: thanks for the recommend! elixir/erlang has been on my wishlist for a while... now I just need an excuse/project to use them
mbrgm has quit [Ping timeout: 265 seconds]
<{^_^}> [nixpkgs] @romildo merged pull request #88791 → nixos/lumina: use xsession provided → https://git.io/JfVeL
mbrgm_ is now known as mbrgm
<{^_^}> [nixpkgs] @romildo pushed 5 commits to master: https://git.io/Jfwhv
niksnut has quit [Ping timeout: 260 seconds]
<{^_^}> [nixpkgs] @romildo merged pull request #88891 → enlightenment.efl: 1.24.1 -> 1.24.2 → https://git.io/JfVdj
<{^_^}> [nixpkgs] @romildo pushed 2 commits to master: https://git.io/JfwhT
ynotperez has joined #nixos
fendor has quit [Ping timeout: 246 seconds]
<{^_^}> [nixpkgs] @romildo merged pull request #88900 → deepin.deepin-icon-theme: 15.12.71 -> 2020.05.21 → https://git.io/JfVxl
<{^_^}> [nixpkgs] @romildo pushed 2 commits to master: https://git.io/JfwhI
<{^_^}> [nixpkgs] @romildo merged pull request #88901 → deepin.disomaster: 5.0.0 -> 5.0.1 → https://git.io/JfVpB
<{^_^}> [nixpkgs] @romildo pushed 2 commits to master: https://git.io/JfwhL
<{^_^}> [nixpkgs] @romildo merged pull request #88902 → deepin.udisks2-qt5: 5.0.0 -> 5.0.3 → https://git.io/JfVh4
<{^_^}> [nixpkgs] @romildo pushed 2 commits to master: https://git.io/Jfwhm
<{^_^}> [nixpkgs] @ryantm merged pull request #88228 → snippetpixie: 1.3.1 -> 1.3.2 → https://git.io/Jfz06
<{^_^}> [nixpkgs] @ryantm pushed 2 commits to master: https://git.io/JfwhO
<{^_^}> [nixpkgs] @romildo merged pull request #88907 → deepin.go-lib: 5.0.0 -> 5.4.5 → https://git.io/Jfwey
<{^_^}> [nixpkgs] @romildo pushed 2 commits to master: https://git.io/JfwhZ
<{^_^}> [nixpkgs] @r-ryantm opened pull request #88992 → python27Packages.pysmb: 1.1.28 -> 1.2.1 → https://git.io/Jfwhl
<lovesegfault> pjt_014: got it, thanks :)
<{^_^}> [nixpkgs] @zowoq opened pull request #88993 → gitAndTools.gh: 0.8.0 -> 0.9.0 → https://git.io/JfwhR
geekthattweaks has quit [Quit: Connection closed for inactivity]
wildtrees__ has quit [Quit: Leaving]