<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage-packages.nix: automatic Haskell package set update »: https://git.io/JJJWH
<nwm_>
just wondering is there something inherit about nix store that couldn't be replicated with a global 'namespace' say /abi/$triplet/{bin,lib} appended or prepended with the result hash?
ris has quit [Ping timeout: 272 seconds]
<dminuoso>
nwm_: Hold on, how's that different from what nix is doing right now?
<gchristensen>
nwm_: what is the abi for /nix/store/jrgsj6agnrys3p6kmmq39mskap2nmbkk-nixos-nineish.png ?
<gchristensen>
or /nix/store/fqgnbkz5da612y4fph9yv358zfgvspv6-backlight.sh ?
<nwm_>
my idea of multiarch
<gchristensen>
looking at the world from the eyes of ABI excludes the vast majority of what is in the nix store
<jlv[m]1>
It looks like `fileSystems` doesn't support encrypted ZFS datasets? Boot failed when I tried.
<nwm_>
you would still have various other dirs as well
<nwm_>
just with prefixed or suffied hashes to contents
<gchristensen>
Nix has very few rules, and it applies and enforces them with utmost strictness. it doesn't have many/any escape hatches or "but in this case ..." behaviors and this is to its benefit
<gchristensen>
so maybe it could do that, but then I have to ask "why bother?"
<nwm_>
selinux, apparmor any path based lsm (unless that has been solved)
<nwm_>
well selinux isn't path based
<gchristensen>
yeah but why do that when instead I could say executing
<gchristensen>
bash can ONLY access EXACTLY /nix/store/mxaxvp33wg9sim8qh2kkw041v492bvxj-libunistring-0.9.10 /nix/store/hjng28vbd73qq9iz9j8r397x19aa8fp9-libidn2-2.3.0 /nix/store/xg6ilb9g9zhi2zg1dpi4zcp288rhnvns-glibc-2.30 /nix/store/l3r589zmhwb3jm2r456brdrmwyh07c1g-ncurses-6.1-20190112 /nix/store/91gbbh9rpvyl7jgwvfgh94mhjrdvdnjr-readline-7.0p5 /nix/store/hrpvwkjz04s9i4nmli843hyw9z4pwhww-bash-4.4-p23
<gchristensen>
why go the muddy route of ABIs when I already know exactly what is needed?
<energizer>
it would be nice to do that path-based sandboxing
<energizer>
by default
<gchristensen>
agreed
<simpson>
nwm_: I'm still curious as to what kinds of threats you're hoping to mitigate. What do you currently do for path-based security, and what are your requirements like in Nix-land?
<gchristensen>
energizer: I was looking at writing an LSM for this, I think it is a great idea. I would also very much like to experiment with eliminating the use of PATH.
<energizer>
gchristensen: that would be cool! i'd love to follow along if you've got a repo somewhere
<gchristensen>
I'm not nearly capable enough to write an LSM :(
<gchristensen>
but PATH I think is actually fairly reasonable to do in many cases. for example, abathur already solved what I consider the hardest possible source of needing PATH: bash, with resholved
<nwm_>
I don't think you would need an LSM, apparmor could do what you want, rules would need to be generated though
<nwm_>
well a custom lsm
<gchristensen>
it would for what I want to do
camsbury has quit [Ping timeout: 246 seconds]
<gchristensen>
which is a program should never be able to access anything outside of its closure unless explicitly marked in some fashion. for example, `free` shouldn't call other programs so this would be fine by default. but `xargs` does, and would need to be marked as being able to inherit the callables of the parent scope
<energizer>
a hacky version could probably use firejail/bubblewrap to just wrap all binaries
<energizer>
linux security modules abathur
lambda-11235 has joined #nixos
<gchristensen>
apparmor and selinux are written from the approach that you have no idea what you have and you're just trying to add rules until it works, and I think Nix brings enough structure to the build process and run-time closure to do something much smarter
<abathur>
<3 energizer that was my best guess from the wiki disambig but there were more than one plausible
<{^_^}>
energizer's karma got increased to 22
nwm_ has quit [Ping timeout: 260 seconds]
<jlv[m]1>
Is support for mounting encrypted ZFS datasets on boot something I can probably expect eventually? Or is there some technical limitation making it infeasible? I feel like it should be possible.
<jlv[m]1>
gchristensen: doesn't appear to work for encrypted datasets. It may work for encrypted pools. Boot failed when I tried it, and I had to rollback.
<{^_^}>
[nixpkgs] @marsam pushed commit from @r-ryantm to release-20.03 « targetcli: 2.1.51 -> 2.1.53 »: https://git.io/JJJlK
<jlv[m]1>
My ZFS configuration has an unencrypted pool containing an encrypted dataset.
<gchristensen>
zfs doesn't have unencrypted pools :/
<gchristensen>
only encrypted datasets
<gchristensen>
encrypted pools*
<jlv[m]1>
gchristensen: I mean the topmost dataset (the one with the pool name) is unencrypted.
<gchristensen>
yeah I think that works fine
<gchristensen>
elvishjerricco: does that work for you ^ ?
<jlv[m]1>
gchristensen: I should clarify that I'm trying to prompt for the key. The documentation mentions something about promp only being supported for root pools.
<elvishjerricco>
Is there a way to make a nixos test for that? Entering a passphrase in stage 2?
proofofkeags has quit [Ping timeout: 256 seconds]
cinimod has joined #nixos
<gchristensen>
you can type at the console
<gchristensen>
and I think read from the console
<elvishjerricco>
gchristensen: Well I'm talking about `nixpkgs/nixos/make-test.nix` i.e. something automated
<gchristensen>
me too
<elvishjerricco>
Oh, then I'm confused :P
<elvishjerricco>
"you can type at the console" does not sound automated
<evils>
you can send keystrokes to the test vm, and OCR the output
<gchristensen>
I think it doesn't have to OCR if it is without a gui
<evils>
may not have to be OCR xD
<elvishjerricco>
Yea there's no relevant GUI output, aside from making sure that plymouth accepts input.
ok2` has joined #nixos
sbetrium has quit [Quit: sbetrium]
sbetrium has joined #nixos
h0m1 has quit [Ping timeout: 260 seconds]
astrofog has joined #nixos
<{^_^}>
[nixpkgs] @purcell opened pull request #91908 → libpromhttp: init at 0.1.1, build in combination with libprom → https://git.io/JJJ4i
h0m1 has joined #nixos
orivej has quit [Ping timeout: 260 seconds]
orivej_ has joined #nixos
jlv[m]1 has quit [Quit: authenticating]
jlv[m]1 has joined #nixos
cole-h has joined #nixos
cole-h has quit [Client Quit]
<jlv[m]1>
(Lets try this again. After some Matrix server debugging): elvishjerricco, gchristensen: `neededForBoot` fixed it! That was easier than I expected. After seeing the documentation, I thought I'd have to deal with manually mounting the dataset and starting dependent services on every boot.
evanjs has quit [Read error: Connection reset by peer]
nuncanada has quit [Remote host closed the connection]
nuncanada has joined #nixos
<jlv[m]1>
The documentation for `boot.zfs.requestEncryptionCredentials` is a little deceptive, but I guess it won't be an issue once that pull request is in.
<moosnat>
hello, I'm trying to package Renode with Nix. Renode's build process depends on an external binary resources repository -- can I fetch it in addition to the source repo at fetch time?
<{^_^}>
[nixpkgs] @marsam opened pull request #91911 → kbs2: init at 0.1.1 → https://git.io/JJJRg
Jonathan73 has quit [Remote host closed the connection]
<moosnat>
so I've got `let resources = fetchurl { }; in stdenv.mkDerivation { }`, and when I try to symlink the binary resources into the source tree, it seems like I'm in the resources store path
nixbitcoin_ has joined #nixos
nixbitcoin has quit [Ping timeout: 240 seconds]
nwm_ has joined #nixos
hellrazo1 has joined #nixos
<moosnat>
oh wait I think I solved it
pjt_tmp has joined #nixos
cinimod has joined #nixos
sbetrium has quit [Quit: sbetrium]
sbetrium has joined #nixos
cole-h has joined #nixos
cinimod has quit [Ping timeout: 260 seconds]
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #nixos
rajivr has joined #nixos
zanc has quit [Read error: Connection reset by peer]
cinimod has joined #nixos
zanc has joined #nixos
<fps>
hmm, i'm building an sdcard for a raspberrypi and i'd like to include all store paths in the image that were needed to build it in the first place..
slack1256 has quit [Remote host closed the connection]
<fps>
something like a "build closure" if that's a thing
<ar>
jybs: ok. so i have https://dpaste.org/ZOGh in my configuration.nix, and when i pull in transmission in my containers, it pulls in the patched version
<jybs>
I still don't understand why that works though?
<ar>
jybs: i don't remember anymore why it works either
MaxGitt has quit [Ping timeout: 245 seconds]
<jybs>
:)
knupfer has quit [Ping timeout: 256 seconds]
<notgne2>
jybs: every overlay in nixpkgs.overlays changes your NixOS package set, so calling `pkgs.transmission` somewhere else no refers to this patched version of transmission
<notgne2>
in most NixOS services you can just override the package used in `.package` of the service, but sometimes you can't or just want to make sure you're using the same patched version everywhere else too, which is why overlays are useful
<jybs>
Yeah - but why did the orginal method not work?
sbetrium has quit [Quit: sbetrium]
<notgne2>
jybs: like ryantm mentioned, the attribute is `.package` not `.packages`, I can't see anything wrong with it otherwise
FRidh has joined #nixos
<jybs>
yeah changed that
<jybs>
overlay doesn't work either :(
sbetrium has joined #nixos
<notgne2>
that might be due to naming jybs, if you don't set `.package` explicitly it will use a specific version depending on your system.stateVersion
<notgne2>
so for example if your stateVersion is 20.03 it will use a package called `postgresql_11`, so thats what you would need to override
<fps>
same for config.nixkpks.allow... and without the attribute path
<fps>
config.nixpkgs.allow...
<jybs>
notgne2: just to be clear, changing the version that postgresql overrides will change the version I get in the container
<jybs>
It's just the patch is not applied
<notgne2>
so instead of `postgresql = super.postgresql_11.overrideAttrs (old: {` you would need `postgresql_11 = super.postgresql_11.overrideAttrs (old: {` or whatever version you are trying to alter, and if you don't intend on using the default version for your system stateVersion then be sure to explicitly set it too (if you have an overlay altering `postgresql_11` you can just do `.package =
<notgne2>
pkgs.postgresql_11`)
txt-file has quit [Quit: Leaving]
<jybs>
I'm using postgresql = pkgs.postgresql_12.overrideAttrs (attrs: { ... });
<jybs>
notgne2: That says cannot coerce to a string on line 1
<fresheyeball>
anyone know about node2nix?
<fresheyeball>
I need to override the source of a package to a nix path
<fresheyeball>
but I get "do not know how to unpack source archive"
<fps>
ok, for a2jmidid: the version used in the nix package doesn't have the check for aarch64 yet. so that explains the build failure
<jybs>
ok that works
<jybs>
Thanks notgne2 - I still don't get why it didn't work in the let section though
<notgne2>
oh, the top line was meant to be `with import <nixpkgs> {`, not sure how that disapeared
<jybs>
Yeah got it
<jybs>
It's happily applying my patch now
<notgne2>
fresheyeball: I'm not sure about node2nix (I use pnpm2nix) but afaik you should be able to set `doUnpack = false;` or something, or maybe `unpackPhase = ":";`
<fresheyeball>
grr
<fresheyeball>
still no
orivej has quit [Ping timeout: 246 seconds]
nwm_ has quit [Ping timeout: 260 seconds]
simba2 has joined #nixos
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
sbetrium has quit [Quit: sbetrium]
sbetrium has joined #nixos
<fps>
ok, so i fixed the package in my local nixpkgs checkout. how do i nixos-rebuild against that checkout?
<chagra>
Is it normal that updates through `nixos-rebuild switch --upgrade` are large? I use the stable release but every time I update it seems to pull most of my packages from the online cache again if I update with 1 week or longer intervals
kleisli_ has quit [Ping timeout: 260 seconds]
<srhb>
chagra: Yes. Due to the way Nix works, if something deep in the dependency tree (say, glibc) changes, everything does.
<srhb>
chagra: Contrast to other operating systems where dependents are "drop-in" and don't necessarily need to change if a dependency does.
<chagra>
oh ok I understand
<chagra>
thank you
<srhb>
eyJhb: At a guess, the qemu-vm module isn't in the default module list.
chagra has quit [Quit: WeeChat 2.7.1]
<srhb>
eyJhb: Because loading it really does make the system a qemu vm.
sbetrium has quit [Quit: sbetrium]
sbetrium has joined #nixos
<pie_>
eyJhb: pet peeve of mine. not everything shows up
<pie_>
eyJhb: idk off the top of my head but some things dont get processed into that list presumablz because the system doesnt know about it
<fps>
hmm, i enabled services.jack.jackd but it doesn't get installed as WantedBy, etc.. and systemctl complains: The unit files have no installation config (WantedBy=, RequiredBy=, Also=,
dansho has quit [Remote host closed the connection]
<fps>
when i call systemctl enable jack or systemctl enable jack-session
turlando has joined #nixos
dansho has joined #nixos
lsix has joined #nixos
sangoma has joined #nixos
<fps>
oh ok, it gets started by udev rules once an audio device appears
o1lo01ol1o has joined #nixos
cr4y1 has joined #nixos
Maxdamantus has quit [Ping timeout: 264 seconds]
dermetfan has joined #nixos
<fresheyeball>
I am pulling my hair out on this thing
<fresheyeball>
I just want to override the source of a node module with node2nix
Maxdamantus has joined #nixos
<tobiasBora>
Hello, I'd like to know, how does nix manage the "merge" of two strings? Indeed, two modules (zfs and luks) defines the same postDeviceCommands string, and they are not merged in the good order: I'd luks to be the first string in the concatenation, and it appears to be zfs...
<tobiasBora>
energizer: I don't know what is separatedStrings, so not sure ^^' I just know that two modules define the same "boot.initrd.postDeviceCommands", and that they are not merged in the good order...
<energizer>
tobiasBora: what is the type of boot.initrd.postDeviceCommands?
<tobiasBora>
energizer: symphorien : any idea how I could modify the module? I'd love to be able to say something like "modules.system.boot.luksroot/boot.initrd.postDeviceCommands = mkBefore modules.system.boot.luksroot/boot.initrd.postDeviceCommands", but no idea which syntax I would need to use...
sigmundv has joined #nixos
<typetetris>
Are there many people using rust + nix? Has there been a survey about such stuff?
cfricke has joined #nixos
zupo has joined #nixos
<srhb>
typetetris: I don't think there's been a survey, but my gut feeling is "yes, there's an overlap"
<srhb>
typetetris: the whole haskell-nix-rust thing seems to attract the same kinds of people
<fps>
i could replace these links with github links instead
<nate48423>
the american government and denaro are getting my human brain they are able to have me not able to comprehend and change my taste of drinks and food at times( example mt dew tasting like water). can you please tell your world leaders to help me I am nathan biernatt if you have questions you can message me
<{^_^}>
[nixpkgs] @fps opened pull request #91920 → a2jmidid: fix compilation on aarch64-linux → https://git.io/JJJKn
domogled has joined #nixos
sbetrium has quit [Quit: sbetrium]
sbetrium has joined #nixos
<fps>
when building an sdcard installer image, even when i'm adding sdImage.compressImage = false to my expression i see the root fs being compressed and again decompressed
fendor has quit [Remote host closed the connection]
emmanuel` has quit [Ping timeout: 240 seconds]
sigmundv has quit [Ping timeout: 258 seconds]
sigmundv has joined #nixos
asymptotically has joined #nixos
whald has quit [Remote host closed the connection]
whald has joined #nixos
<typetetris>
Hmm somehow my gnupg.agent stopped working ...
<{^_^}>
[nixpkgs] @Mic92 merged pull request #91882 → pidgin: now builds and runs on osx → https://git.io/JJJqh
mzan has quit [Ping timeout: 240 seconds]
civodul has joined #nixos
o1lo01ol1o has joined #nixos
ScottHDev has joined #nixos
<ScottHDev>
raspberrypi
<fps>
pi!
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<ScottHDev>
oups, thought I was writing in the search channel bar...
o1lo01ol1o has quit [Ping timeout: 260 seconds]
<fps>
uuh, maybe the raspberry foundation can call a newer model raspberrytau if it's twice as fast as the pi :)
<fps>
cause tau = 2*pi :)
<ScottHDev>
would be funny
nikita` has joined #nixos
CSP-GLOBAL has joined #nixos
<fps>
and they would bring attention to the tau vs. pi struggle ;)
<fps>
hmm, my pi still reacts to pings, but a ssh login is not possible anymore and the sdcard light is on constantly.. maybe it just doesn't find the time to run the ssh daemon..
orivej has joined #nixos
<fps>
a kernel build and two nix-env -i's at the same time might be too much for the little bugger
Jackneill has quit [Read error: Connection reset by peer]
ScottHDev has quit [Remote host closed the connection]
nixbitcoin has quit [Ping timeout: 240 seconds]
ScottHDev has joined #nixos
zanc has quit [Ping timeout: 240 seconds]
mzan has joined #nixos
<patagonicus>
fps: I had something similar happen when I ran something memory intensive (I think nix-env -i without -A) and it was just spending all it's time on the OOM killet because there was no swap configured.
<fps>
patagonicus: hmm, i might kill it then and add some swap. the thought of swap on an sdcard pains me tremendously though
<patagonicus>
Yeah, but for some things you just need some swap - at least on an RPi3. The max RAM RPi4 is probably better off in that regard.
<patagonicus>
It doesn't seem to use it much though. I think the images are configured to try to avoid swap as much as possible via the swappiness setting, although I'm not sure.
<{^_^}>
[nixpkgs] @edolstra merged pull request #91835 → nixos-container: Pass through several Nix flags → https://git.io/JJfFD
<patagonicus>
Does nixpkgs require signing a Contributor License Agreement for contributing? I can't find anything about it in the contributing docs, so I'm assuming "no", but I wanted to make sure as my employer doesn't let sign them without approval. :)
<srhb>
patagonicus: No :)
<patagonicus>
fps: I think that should work. There's a setting somewhere in the derivation that allows changing it IIRC.
<patagonicus>
shrb: great, I think that means that there's almost no hoops I have to jump through. :)
lunik1 has quit [Ping timeout: 240 seconds]
lunik1 has joined #nixos
o1lo01ol1o has quit [Remote host closed the connection]
<dminuoso>
Mmm, Im building haskell stuff via cabal v2- in a nix-shell and this package has a pkgconfig-depends on libsodium, how do I make libsodium available to pkg-config?
kleisli_ has joined #nixos
fooker has joined #nixos
eoli3n_ has quit [Ping timeout: 246 seconds]
eoli3n__ has joined #nixos
meh` has joined #nixos
<pbogdan>
dminuoso: how did you set up your shell? IIRC haskell derivations take {library,executable}PkgconfigDepends where you could specify those deps
<dminuoso>
Its not a haskell derivation
<dminuoso>
Its just a stdenv derivation so I can nix-shell into it, and then invoke `cabal v2-`
<dminuoso>
(We dont use nix for Haskell at the moment)
gxt_ is now known as gxt
eoli3n__ has quit [Remote host closed the connection]
<pbogdan>
ah ok; not sure then, I would try just adding pkg-config to nativeBuildInputs and libsodium to buildInputs then
<pbogdan>
dunno if that would work though
<dminuoso>
pbogdan: Oh wow! This must be a cabal bug.
EsperLily has quit [Remote host closed the connection]
<dminuoso>
If I dont spceify pkg-config in nativeBuildInputs, then I get the following error message:
<dminuoso>
cabal: The pkg-config package 'libsodium' version ==1.0.18 is required but itcould not be found.
<dminuoso>
Thanks.
eoli3n_ has joined #nixos
cosimone has quit [Quit: Quit.]
eoli3n_ has quit [Remote host closed the connection]
<Mic92>
also it should have internet by default afaik
dansho_ has quit [Quit: Leaving]
<nh2[m]>
Mic92: yeah I just started stealing parts of that :D it's not quite clear to me if it's going to work though from an Ubuntu host, or address this specific issue of nix complaining about the absence of that .drv file, given that it doesn't even exist in the host
<nh2[m]>
Mic92: do you happen to know where the qemu state is stored? I created, insde the vm, a dir `/root/mydir`, and it's there even after rebooting the vm (or even re-building it with slightly different config)
<Mic92>
nh2[m]: it creates a file in the current working directory
<nh2[m]>
Mic92: ah thanks, that must be `nixos.qcow2`
<{^_^}>
[nix] @edolstra merged pull request #3678 → Add a way to get all the outputs of a derivation with their label → https://git.io/JfSnk
knupfer has joined #nixos
markus1189 has quit [Ping timeout: 265 seconds]
<{^_^}>
[nix] @edolstra closed pull request #3764 → Fix segfault if a file from an invalid searchpath-entry is attempted to get built → https://git.io/JJfWg
<sphalerite>
<3 timokau[m] making tools that make things easier (previously: nix-bisect, now: drv-level why-depends script)
<{^_^}>
timokau[m]'s karma got increased to 5
<timokau[m]>
Thanks sphalerite, I love to hear that people are using those things :) I only really added a tiny bit of sugar on erictapen's work for the why-depends script though.
<karantan>
is it possible to schedule nixos-rebuild switch with crontab? I try to do that but I'm getting the following error: https://pastebin.com/vnsyQ5Xa
<chiiba>
I was creating my own service. It's literally just a `script` which runs a shell-script. I'll just keep debugging, probably I goof'ed something up.
<chiiba>
b42: ^
domogled has quit [Remote host closed the connection]
<chiiba>
s/shell-script/a command over an ssh connection/g
<karantan>
hmm looks like a good alternative. but I would still prefer to call nixos-rebuild within my python script so that it can detect if there was a problem with the rebuild
<karantan>
if there was a problem it can notify me (and maybe prevent other server to do the rebuild)
drougler has joined #nixos
<drougler>
test
<chiiba>
b42: All good, the actual problem was ssh asking for host fingerprint confirmation.
<{^_^}>
[nixpkgs] @peterhoeg pushed 0 commits to u/mdbtools: https://git.io/JJJbv
bisexual has joined #nixos
nate48423 has quit [Ping timeout: 260 seconds]
<bisexual>
hello
<{^_^}>
[nixpkgs] @CheariX opened pull request #91948 → <!-- To help with the large amounts of pull requests, we would appreciate your reviews of other pull requests, especiall… → https://git.io/JJJbk
<bisexual>
when installing with the live usb, do i have the option to not install kde as a desktop environment
<{^_^}>
[nixpkgs] @jtojnar pushed 2 commits to release-20.03: https://git.io/JJJbo
<bisexual>
CRTified[m] where would i configure this
alexherbo2 has quit [Ping timeout: 260 seconds]
alexherbo27 is now known as alexherbo2
nate48423 has quit [Ping timeout: 256 seconds]
<bisexual>
do i edit `/etc/nixos/configuration.nix` before i install?
<CRTified[m]>
bisexual: in the (standard) installation process, you'll use `nixos-generate-config` to create a default configuration for the system you are installing. There will be a `hardware-configuration.nix` and a `configuration.nix`. You'll edit the second one
<CRTified[m]>
Yes :)
nate48423 has joined #nixos
<CRTified[m]>
You can also change options there lateron (and apply them with `nixos-rebuild switch`, for example)
kaliumxyz has quit [Remote host closed the connection]
<bisexual>
i tried gobolinux before this, liveusb didnt even boot
<bisexual>
nixos worked right off the bat
<bisexual>
alright thank you for the info
<bisexual>
bye now
ashesham` has joined #nixos
growpotkin has joined #nixos
zupo has joined #nixos
mniip has joined #nixos
<evils>
bisexual: CRTified[m]: yea i missed the *not*, just having no mention of plasma/kde in your config will cause it to not be installed
zanc has quit [Ping timeout: 260 seconds]
Scriptkiddi has quit [Quit: killed]
mrpi has quit [Quit: killed]
ajs124 has quit [Quit: killed]
das_j has quit [Quit: killed]
nate48423 has quit [Read error: Connection reset by peer]
<{^_^}>
[nixpkgs] @jtojnar pushed commit from @r-ryantm to master « robin-map: 0.6.2 -> 0.6.3 »: https://git.io/JJJNy
<gchristensen>
simpson: I can't find it in the logs ... did you have a suggestion on an LSH I could play with? ideally on the cli?
nomeata has joined #nixos
<simpson>
gchristensen: `nix-shell -p pythonPackages.tlsh`, and then `import tlsh` in a Python shell, for the package nwm_ mentioned. Also libpHash, as `phash`.
<gchristensen>
ah right on, thanks
<fresheyeball>
morning folks
<fresheyeball>
I am in a tight spot on a project, and pulling my hair out
<fresheyeball>
I have to get a nix build of a javascript project to work
<fresheyeball>
and the package.json file contains a relative path to a resource.
<fresheyeball>
No matter what I do with node2nix, I can't get it to build.
<fresheyeball>
I have tried a custom edit of the package.json
<fresheyeball>
editing the generated files to symlink in the dependency at different stages
ntpcx has joined #nixos
<fresheyeball>
override the source from the generated code
<fresheyeball>
nothing
<fresheyeball>
either it uses the node2nix generated code for this dep, and I set it to a nix source
<fresheyeball>
and it can't figure out how to unpack it
<turion>
fresheyeball: Can't you generate a .nix with node2nix and edit that manually?
<fresheyeball>
turion: yes I have done that
<turion>
What goes wrong there?
ntpcx has quit [Client Quit]
<{^_^}>
[nixos-search] @adisbladis pushed to description-english « Use english analyzer for descriptions »: https://git.io/JJJAX
<fresheyeball>
so if I do that, and set the source for the dep, it says it can't unpack it
<fresheyeball>
setting things like unpackPhase = ":", or doPack = false;
<fresheyeball>
do nothing
<{^_^}>
[nixos-search] @adisbladis opened pull request #110 → Use english analyzer for descriptions → https://git.io/JJJAM
<turion>
How do you set the source? What error occurs?
<fresheyeball>
I set the source by editing the generated nix, and passing a nix path
<fresheyeball>
I also tried adding node2nix files in that dependenciy and setting the source to
<turion>
You mean a store path?
<fresheyeball>
src = ../../mydep; <- unpack fails
<turion>
Ah ok
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<turion>
Sometimes src = .. doesn't work, I don't really understand why
<fresheyeball>
turion: its another project built with node2nix
<fresheyeball>
that is a dependency of this project built with node2nix
nomeata has quit [Quit: Client exiting]
<simpson>
gchristensen: Yeah, it's fun stuff to play with. There's no industry standard yet, and you may find that the principles are transferable; a lot of it comes down to stuff like trees of hashes.
<gchristensen>
nice
<turion>
fresheyeball: And why would you set src to it? It sounds more like you want to `import ../../mydep {}`
<fresheyeball>
yes, I gave a few examples of me attempting that in different ways
<fresheyeball>
one by setting the source, another by directly symlinking it
<turion>
I don't understand why either is necessary or a good idea
<fresheyeball>
turion: how would you provide the dependency?
sangoma has joined #nixos
<fresheyeball>
one way or another it needs to work the way it does outside of nix, when package.json contains a relative path
<turion>
fresheyeball: so I'm assuming that there is a file ../../mydep/default.nix
confus has joined #nixos
<fresheyeball>
yes, generated by node2nix
<fresheyeball>
and that does build
<confus>
quick question, I've come across this in a nix file:
<confus>
what's the deal with the single quote after env?
<fresheyeball>
confus: it's just part of the variable name
<fresheyeball>
it's common in functional lanugages to allow ' in variable names
<fresheyeball>
it's pronounced "prime"
<confus>
I see so basically like var_ oder _var or something in other languages
<fresheyeball>
confus: yes
<turion>
fresheyeball: So `import ../../mydep {}` should give you the derivation. Can't you write let mydep = import ../../mydep {}; in blablabla { buildInputs = [ mydep .. ] }?
<confus>
thx, thought it might have some special syntactical meaning or something for special tooling, but that makes sense
maier has quit [Ping timeout: 256 seconds]
ddellacosta has joined #nixos
<alexherbo2>
how to install a xkb file?
<immae>
gchristensen: you’re listed in the maintainers list for travis, there seems to be an issue in there: Travis nix integration installs Nix package manager AFTER the environment variables provided by the user. Thus the nix installer (which sources a nix-daemon.sh script) will override the `NIX_PATH` environment variable from the user. Is that on purpose? How are we supposed to customize the nix path?
<immae>
(doing an export later in the build script?)
<{^_^}>
[nixpkgs] @ekpdt opened pull request #91953 → Add binary jsonnetfmt to go-jsonnet package → https://git.io/JJJhI
proofofkeags has quit [Ping timeout: 256 seconds]
cantstanya has quit [Remote host closed the connection]
shibboleth has joined #nixos
maier has quit [Ping timeout: 246 seconds]
<{^_^}>
[nixpkgs] @Bsami opened pull request #91954 → Fix typos in documentation (#91934) → https://git.io/JJJhG
<karantan>
how can I get NIX_PATH value in .nix file?
cantstanya has joined #nixos
<karantan>
one way would be define it in let in block as "NIX_PATH=/root/.nix-defexpr/channels:nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos:nixos-config=/etc/nixos/configuration.nix:/nix/var/nix/profiles/per-user/root/channels"
<karantan>
but I don't want to hardcode it. maybe this value will change at one point
<karantan>
btw I need this so that I can export it while calling some script in crontab
<karantan>
so this should work: "export NIX_PATH=${builtins.nixPath}"?
<turion>
adisbladis: But how do I do that then if I build a package in nixpkgs? How would I do that in a nix-shell?
<karantan>
hmm yeah looks like it's working
<karantan>
cool tanx
<{^_^}>
[nixpkgs] @c00w opened pull request #91956 → lib: Create make-btrfs-fs library to match make-ext4-fs. → https://git.io/JJJhd
tpw_rules has joined #nixos
<tpw_rules>
hi everyone. i've got nix set up on my machine and i'm trying to dig into it to understand how it works.
nate48423 has quit [Ping timeout: 256 seconds]
<infinisil>
karantan: No that won't work, see the output of {^_^}, builtins.nixPath contains the parsed entries
<turion>
fresheyeball: And if you build mydep directly, you don't get that error?
<fps>
hmm, i wonder: can i use gparted to change the boot partition size [and the root partition size] on raspberrypi 4 install?
<infinisil>
karantan: You can use what cransom suggested instead for this
<fps>
/boot has run full..
nate48423 has joined #nixos
<fresheyeball>
turion: correct, it works
<karantan>
yes, I just figured that out. I'll go with builtins.getEnv.
<turion>
I'm not entirely sure why that fails, but sometimes things behave strangely when you import a relative path that is not a subdirectory of the current directory
<fps>
i would take out the sdcard out of it and plug it into a machine with sdcard reader
<fresheyeball>
it only fails when used as a dependency
<fresheyeball>
or to be clearer, the dep doesn't fail
<fresheyeball>
the consuming project fails
<turion>
fresheyeball: Can you add a builtins.trace "mydep is being called" to mydep and see whether that is called at all?
sbetrium has quit [Quit: sbetrium]
<tpw_rules>
in an overlay, if i say somepackage = super.somepackage.override { somedep = self.etc };, do all the other dependencies come from super?
<turion>
My suspicion is that because of the path, it doesn't get picked up correctly. I had something similar today. My solution was to push to some git repo and then use builtins.fetchGit with a fixed rev
quinn has joined #nixos
orivej_ has quit [Ping timeout: 256 seconds]
orivej has joined #nixos
sbetrium has joined #nixos
<turion>
How do I work with all of nixpkgs in a nix-shell?
<turion>
Or rather, with one python package in a nix-shell?
<turion>
I mean, the two obvious ways don't work:
<turion>
error: cannot auto-call a function that has an argument without a default value ('stdenv')
<infinisil>
tpw_rules: Hm nah. super.somepackage was originally called with `self.callPackage ./path/to/package {}`, and self.callPackage takes all deps from self
<{^_^}>
[nixpkgs] @jtojnar pushed commit from @r-ryantm to master « baobab: 3.34.0 -> 3.34.1 »: https://git.io/JJJjX
<infinisil>
tpw_rules: And `super.somepackage` is about the same as `self.callPackage ./path/to/package {}`
<infinisil>
because super.somepackage refers to how somepackage was defined before the overlay
hellrazo1 has joined #nixos
<tpw_rules>
infinisil: but the examples say to use super.callPackage ./path
<infinisil>
Hm okay it doesn't actually matter, both super.callPackage and self.callPackage use self for dependencies
<tpw_rules>
why is that? how does that affect custom callPackages (like libsForQt5.callPackage)
<tpw_rules>
i guess they originally wrap the regular callPackage
<infinisil>
So the concept of `super` is just that it's what the set was before the current overlay being applied
<tpw_rules>
yeah that makes sense
<infinisil>
But wherever callPackage is defined, there's no concept of "the set before the overlay where callPackage is called"
<infinisil>
There's just "the set before the overlay where callPackage is *defined*"
justanotheruser has quit [Ping timeout: 260 seconds]
smatting has quit [Ping timeout: 246 seconds]
<tpw_rules>
ah ok
sangoma has joined #nixos
confus has quit [Remote host closed the connection]
<infinisil>
But yeah ultimately it's using lib.callPackageWith
nate48423 has joined #nixos
<tpw_rules>
i was curious because i wanted to make an overlay that resulted in a separate set of packages. like i can override something like glibc (though that's not my goal) and instead of recompiling every single package, i can install the packages which need the override from a separate set. and i don't have to be like myBlah1 = super.Blah1.override {glibc = super.myGlibc }; over and over, it will get used automatically like usual
<scoates>
thank you to anyone who played a role in getting the nix installer to work on Catalina.
<infinisil>
I think you could do this with `self: super: { otherPkgs = self.extend (self: super: { glibc = super.glibc.override ...; }); }`
nate48423 has quit [Ping timeout: 246 seconds]
drakonis has joined #nixos
<tpw_rules>
then i could do like nix-env -iA pkgs.otherPkgs.blah1 ?
<infinisil>
Yea
nate48423 has joined #nixos
<tpw_rules>
neat
<infinisil>
(untested)
proofofkeags has quit [Ping timeout: 258 seconds]
<tpw_rules>
well i will test it shortly
<infinisil>
Might want to check out how pkgsCross/pkgsStatic/i686Linux are defined
<infinisil>
Though I don't think what they do is possible without modifying nixpkgs itself
drougler has joined #nixos
drougler has left #nixos [#nixos]
<tpw_rules>
so extend just applies an overlay to the whole set of packages, then stores it as a member of the set of current packages instead of returning a new set of packages
<tpw_rules>
or, well, returns the new set of packages as the current set + the overlaid current set. vs just the overlaid current set
sangoma has quit [Read error: Connection reset by peer]
<bkv>
armin: kinda worrying
<armin>
bkv: yea
sangoma has joined #nixos
<armin>
just listening with netcat, let's see what that thing is trying to get
<colemickens>
infinisil: tbh I forgot I had tbb in my config, it's 9.5 for me, I'm rebased on nixos-unstable-small
<colemickens>
idk about the 9.0.9 sources missing. (I wondered if they pull source for too-old of builds for security reasons, idk?)
fendor has quit [Remote host closed the connection]
philr_ has quit [Ping timeout: 260 seconds]
<colemickens>
hm, sound doesn't work with TBB though? that's pretty odd.
nate48423 has quit [Ping timeout: 256 seconds]
<fps>
hmm, is there a way to retain intermediate all build inputs so that they don't get GC'ed?
<fps>
s/intermediate all/all intermediate/
nate48423 has joined #nixos
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #nixos
<turion>
infinisil: The shell doesn't really do what I need. I need a shell where I can run buildPhase and checkPhase. This shell tries to build my package (but fails obviously, which is what I want to debug)
<gchristensen>
fps: that is a big part of what lorri is for
sangoma has quit [Ping timeout: 260 seconds]
o1lo01ol1o has quit [Remote host closed the connection]
<{^_^}>
[nixos-homepage] @edibopp pushed to integrate-nix-dev « Integrate nix.dev tutorials as a flake »: https://git.io/JJUvm
asymptotically has quit [Ping timeout: 240 seconds]
<fps>
gchristensen: hmm, that seems to be targetted at nix-shell like things. i'm just building aarch64 images on my raspberrypi4 and don;t want to lose e.g. 4h compile time for the kernel and things :)
o1lo01ol1o has joined #nixos
<gchristensen>
ah
zeromorphism has joined #nixos
rooke has joined #nixos
<tpw_rules>
so i have a derivation and i want to modify one of its function arguments. the problem is that i don't know what its original value is (and i don't want to depend on it anyway) so i can't just say callPackage ./derivation { arg = modify default_arg }; . not sure how to accomplish what i want
asymptotically has joined #nixos
Czen1 has joined #nixos
<fps>
but it's a more general question i think: nix only retains store paths as dependencies when it finds the hash of the build input somewhere in the build output and "forgets" those that do not show up
<fps>
i'd like to do away with that optimization and retain all build inputs as dependencies. that would at least solve my problem..
matias_ has quit [*.net *.split]
ml| has quit [*.net *.split]
ericnoan has quit [*.net *.split]
Czen has quit [*.net *.split]
ryantm_ has quit [*.net *.split]
never_released has quit [*.net *.split]
troydm has quit [*.net *.split]
choward has quit [*.net *.split]
ToxicFrog has quit [*.net *.split]
xantoz has quit [*.net *.split]
benny has quit [*.net *.split]
endocrimes has quit [*.net *.split]
puffnfresh has quit [*.net *.split]
simpson has quit [*.net *.split]
pepesza has quit [*.net *.split]
wadkar has quit [*.net *.split]
arianvp has quit [*.net *.split]
shapr has joined #nixos
kandinski has joined #nixos
craige has joined #nixos
ericnoan has joined #nixos
marek has joined #nixos
notgne2 has joined #nixos
puffnfresh has joined #nixos
bob_twinkles has joined #nixos
ryantm_ has joined #nixos
wadkar has joined #nixos
matias_ has joined #nixos
turion has quit [Ping timeout: 264 seconds]
suchar has joined #nixos
<fps>
oh well, i need to clean up anyways right now so i'll live with the fact of rebuilding things..
<fps>
tpw_rules: not sure, but couldn't you do an overlay and replace the function that produces the package with a shim that inspects the arguments, does its thing and then calls the original package?
ml| has joined #nixos
nate48423 has quit [Read error: Connection reset by peer]
bsima has joined #nixos
karantan has quit [Ping timeout: 246 seconds]
benny is now known as Guest3237
turion has joined #nixos
nate48423 has joined #nixos
<tpw_rules>
fps: i'm not sure how to keep the argument set the same so that the callPackage still works
<fps>
tpw_rules: have your function accept the same arguments?
<tpw_rules>
but i don't know them. i want this to apply to multiple packages
<fps>
i'm a complete noob with regards to nix and overlays..
<fps>
tpw_rules: oh so you don't want to write one specific one, but a generalized mechanism
<tpw_rules>
yes
<fps>
you need some sort of introspection then. i guess callPackage itself might give hints because it somehow figures out what arguments to pass to a function
adamCS has joined #nixos
<fps>
the nix pills have a section on how callPackage does its magic, but i never read it
<turion>
infinisil: Ah great, thanks :) is this workflow documented or described somewhere? There's a lot I still don't understand about it
proofofkeags has joined #nixos
shibboleth has quit [Quit: shibboleth]
<turion>
I get `program 'git' failed with exit code 128` all the time since I added a lot of builtins.fetchGit. How do I find out which one is failing?
<tpw_rules>
oh it turns out a makeOverridable'd function can be overriden with a function that calculates new arguments instead of just a set that replaces them
<turion>
infinisil: How can I develop with such a shell? For example, if I do straight $buildPhase, it says `FileNotFoundError: [Errno 2] No such file or directory: 'setup.py'`
bennofs_ has joined #nixos
<{^_^}>
[nixpkgs] @colemickens opened pull request #91962 → pythonPackages.html-sanitizer init at 1.9.1 → https://git.io/JJUJe
<turion>
I vaguely remember there is something something stdenv, but I can't remember and I can't find it on the internet
<turion>
clever: Same
<turion>
It's a python package
<clever>
turion: how did you launch nix-shell?
<turion>
clever: nix-shell -A python3Packages.cassandra-driver
<turion>
(in my local nixpkgs where I'm hacking around on the tests)
bennofs has quit [Ping timeout: 256 seconds]
proofofkeags has joined #nixos
<turion>
ooh, I missed unpackPhase
<turion>
https://nixos.org/nix/manual/#examples-12 helps some way to understand how to work with nix-shell, but it doesn't tell you the difference between buildPhase and $buildPhase
<gchristensen>
turion: the nixpkgs docs might help answer that -- Nix doesn't dictate that there is a buildPhase
<clever>
turion: yeah, you have to run all of the phases in order
<turion>
gchristensen: But the difference between $buildPhase and buildPhase isn't mentioned anywhere
<turion>
clever: And I somehow have to magically know all the phases?
<clever>
turion: `buildPhase` is a bash function, `$buildPhase` is a bash vairable, that then gets parsed as a single bash statement (and corrupts the cmd if it had newlines in it)
<clever>
turion: `echo $phases`
<clever>
or just `genericBuild` to run all of them
<gchristensen>
turion: hopefully the nixpkgs documentation on stdenv will help
<turion>
clever: echo $phases doesn't say anything
<clever>
turion: where in in the nix-shell when you did that?
<turion>
I'm more looking for resources on how to properly develop a derivation in a nix-shell
bdju has quit [Ping timeout: 256 seconds]
bdju has joined #nixos
kleisli_ has quit [Remote host closed the connection]
kleisli_ has joined #nixos
zupo has joined #nixos
sangoma has quit [Read error: Connection reset by peer]
sangoma has joined #nixos
<turion>
What if all the build phases were their own derivations? So if I need to repeat checkPhase because I've changed a test, I don't need to rebuild
<clever>
and then hydra has to copy that 20gig between build machines
HackerFoo[m] has joined #nixos
<turion>
clever: Well, it needn't be the default. But in principle it would be possible in some cases?
<gchristensen>
at the lowest level of things, all things built by nix is an attribute set of environment variables, a command to run, and some arguments. it is definitely possible :P
<AmandaC>
clever: damn, didn't notice that, nice, that'll get rid of some of my code then!
<multun>
what
<hexo>
that odhlasenie should have been logout
<multun>
env | grep your_locale
simba2 has joined #nixos
<hexo>
LANGUAGE=sk
<hexo>
LOL
<hexo>
where does it come from?
<multun>
(cd /etc; grep -rne sk)
<multun>
(expect noise)
<multun>
oh wait
<multun>
it's nixos, it wont work, sorry about that
noudle has quit []
mumuluxi has joined #nixos
<hexo>
yuuuuup
<hexo>
i've grepped /etc for sk
<hexo>
and nothing come out
<clever>
hexo: grep doesnt follow symlinks by default
<clever>
and nixos heavily uses symlinks in /etc/
<hexo>
aaah
eoli3n__ has joined #nixos
wucke13 has joined #nixos
<clever>
grep -Lr i think?
<hexo>
grep -Rn ?
<qyliss>
isn't it just -R ?
eoli3n_ has quit [Ping timeout: 256 seconds]
<clever>
man pages can confirm
<evanjs>
Isn't the code inside a mkIf only evaluated if the condition is true? Or is it evaluated anyway?
<patrickod>
hey there. I'm trying to run through the PR checklist for my first contribution to nixpkgs and running into an issue with the "nix path-info" size check https://github.com/NixOS/nixpkgs/pull/91969
<clever>
evanjs: its a bit tricky, when you do `mkIf condition { key1 = ...; key2 = ...; }`, it will magically transform into `{ key1 = mkIf condition ...; key2 = mkIf condition ...; }`
<patrickod>
running nix path-info -rS /run/current-system doesn't show the looking-glass-client package as being installed even though I have done so from my local nixpkgs repo. I'm new to nix - is it possible there's a second "store" for these locally-installed packages?
<clever>
evanjs: that lets condition depend on key3, and lazyness can figure your 2 things out later
<clever>
evanjs: but key1 and key2 must be valid options
ebopp has joined #nixos
<evanjs>
patrickod: there's a separate profile, but everything is still sourced from /nix/store
<hexo>
that thing with slovak makes no sense at all!
<evanjs>
clever: gah alright. How might I work it out for potentially invalid/nonexistent options? e.g. virtualisation/image options that might not exist as the modules are not imported by default
<hexo>
i've grepped nowhere
<patrickod>
aye looking at the link for the client binary it's pointed to the /nix/store but it's not listed in the path-info output
<clever>
evanjs: use plain `if` and carefully ensure you dont have infinite recursion
lsix has joined #nixos
nikita` has joined #nixos
<hexo>
so, how to force english?
<hexo>
and even better question
<hexo>
why is only about 1/5 of strings in slovak?
<{^_^}>
[nix] @bburdette opened pull request #3773 → Add lines-of-code and show-trace features to new error format. → https://git.io/JJUTj
<multun>
probably because most aren't translated
<hexo>
grep: static/systemd/system/getty.target.wants/autovt@tty1.service: No such file or directory
<hexo>
Zhody v binárnom súbore static/cups/path/bin/ppdmerge
<hazel[m]>
requesting knightsofthelambdacalcul.us/.well-known/openpgpkey/policy works fine, but .well-known/openpgpkey/policy/hu/<long-hex-string> gives 404
<hazel[m]>
even though the file exists! `systemctl status nginx` shows `13: Permission denied` even though the file is readable by the nginx group
<hazel[m]>
* requesting knightsofthelambdacalcul.us/.well-known/openpgpkey/policy works fine, but .well-known/openpgpkey/hu/<long-hex-string> gives 404
<hazel[m]>
`/var/www/html/.well-known/openpgpkey/hu/6kpqg9fmkbcykn1bsep69chn6jifpngr` to be exact but i don't think that's important
<{^_^}>
[nixpkgs] @LnL7 merged pull request #91532 → ansifilter: extend build to include Darwin → https://git.io/JfjCU
<{^_^}>
[nixpkgs] @drewrisinger opened pull request #91971 → conan: 1.25.0 -> 1.27.0 & unbreak with six upgrade → https://git.io/JJUko
asymptotically has quit [Quit: Leaving]
cosimone has joined #nixos
ursuta has joined #nixos
<colemickens>
hm, so can I query the nix daemon for things like "who started the builds that are running right now" ?
nDuff has joined #nixos
<infinisil>
I doubt it
<cole-h>
Not easily. IIRC, the last time a daemon-related question was asked, it was noted that the daemon has no real docs with regards to interfacing with it... You'd have to read the implementation
<niksnut>
cole-h: no
<niksnut>
the daemon does not have that state
<cole-h>
Ah, so it doesn't hold that information period. Got it, sorry.
<niksnut>
in the future it might become multi-threaded, which would make it easier to query this
nate48423 has quit [Ping timeout: 246 seconds]
<cole-h>
👀
<cole-h>
That would be really cool
<niksnut>
but currently we fork a child for every incoming connection, so there is no process that knows all the current builds
<cole-h>
niksnut: Oh, I see. Is it possible to query the daemon for all the children (or I guess find them some other way) and get some information that way?
<_d0t>
bkv: in this case it's about stack and ghc. What I want is not to add ghc into the project dependencies via nix if the distro isn't nixos because this way ghc is likely to be already installed by stack.
<alexherbo2[m]>
I want to change the username and home directory to
<lopsided98>
_d0t: depending on tools from outside Nix is basically antithetical to Nix's goals
<lopsided98>
the whole point is that builds are pure
<bkv>
yeah, and usually a bad plan
<Alonzo>
Hi, Is there a recomended method for ensuring specific directories are symlinked in home-manager.I have two drives on my machine, and would like to keep /home on the SSD but would like to relocate ~/Desktop ~/Documents ~/Downloads ~/workspace etc to my HDD.I could just create symlinks but I would prefer it declaired in a nix config.
<_d0t>
doesn't matter really. The build is run through stack anyway.
<_d0t>
Whether to invoke nix-shell or not, that's entirely on stack.
<bkv>
Your result will use the system glibc though, for example
<_d0t>
True and this is fine.
<_d0t>
This would actually be preferred in case of non-nixos distros.
<lopsided98>
But the point is that Nix purposely doesn't have a way of detecting NixOS.
<_d0t>
There is `isDarwin` and other similar functions. I'm pretty sure Darwin isn't NixOS :)
<gchristensen>
(NixOS and Nix have no special relationship other than it is possible to build NixOS with Nix)
<bkv>
…nixos on darwin
<gchristensen>
_d0t: "darwin" is a type of kernel
<lopsided98>
Sure, but those don't introspect the running system, they just return whether Nix is currently being told to build for Darwin
<gchristensen>
there is an `isLinux` to match `isDarwin`
<_d0t>
gchristensen: true, but again, it's a type of kernel not supported by nixos.
<bkv>
It is supported
<bkv>
Thats why its there
<_d0t>
by nixpkgs, not nixos. If that's a valid distinction.
<bkv>
Well, ok
<gchristensen>
nixos is nothing special according to nix
<_d0t>
gchristensen: i'm aware of this. But anyway, I was curious if this was possible. Seems not.
<bkv>
What you're trying to do seems obtuse enough that I think it would be easier to just not use nix for it
<_d0t>
nah, I'll just skip this check and make everyone download an extra copy of ghc.
<lopsided98>
If you really want to do it, you could probably use builtins.readFile "/etc/os-release" and then parse the result
<_d0t>
not my bandwidth lol
<gchristensen>
_d0t: are you just trying to see if the host is NixOS, or are you trying to do this from within a Nix expression?
<_d0t>
ghuntley: the latter.
<gchristensen>
yeah, fundamentally we don't want you to do that
<_d0t>
like, for example, imagine `nativeBuildInputs = [ stuff ] ++ (if isNixOS then [ more stuff ] else [])` in a derivation.
<_d0t>
this is want i was looking for
<clever>
_d0t: why do you need extra stuff on nixos?
<{^_^}>
[nixos-homepage] @github-actions[bot] pushed commit from GitHub Actions to master « Update flake.lock and blogs.xml [ci skip] »: https://git.io/JJULb
<gchristensen>
I look at that and I think oh gosh now you have multiplied by 2 the number of things users need to account for when they're reporting bugs or diagnosing problems building
<_d0t>
clever: I described a bit earlier
<_d0t>
gchristensen: it's not an open source software anyway. There's maybe a dozen people who's gonna build this.
<_d0t>
and the nix code there is already a mess, so it's not like I'm about to make it any worse :P
<gchristensen>
it is making it worse, though
<_d0t>
I'm not doing it because there is no easy way.
MightyJoe has quit [Quit: I'm out!]
lzmartin1 is now known as lzmartinico
<clever>
_d0t: what extra things do you depend on when on nixos? why can you not depend on them outside of nixos?
o1lo01ol1o has quit [Remote host closed the connection]
<_d0t>
clever: because they are very likely to be available outside of nix.
<clever>
_d0t: are they programs you expect to find in $PATH?
<_d0t>
clever: it's about stack and ghc. Stack manages ghc on its own, so it doesn't make a lot of sense to have multiple copies of the same ghc version installed.
cyraxjoe has joined #nixos
<clever>
_d0t: things in the nativeBuildInputs wont be available at runtime, and system stuff (from apt-get) cant be used inside a derivation
<clever>
_d0t: so it is unlikely to work either way
<_d0t>
clever: ghc is a compiler. It's not needed in runtime.
<clever>
_d0t: at build-time, the stuff from the system (such as apt-get) wont be visible to the derivation
<clever>
_d0t: so you still need to tell nix you depend on ghc
_d0t has quit [Changing host]
_d0t has joined #nixos
Alonzo has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @NeQuissimus pushed 6 commits to release-20.03: https://git.io/JJUqU
<therivercass>
oh... actually just found the problem. it can only start when my vpn is disabled. that's unfortunate
eoli3n__ has quit [Ping timeout: 240 seconds]
shibboleth has joined #nixos
<nwm_>
gid lookup might be slow but the nix store would on a ext, xfs, etc with 2^32 dirs probably have other issues
Czen1 is now known as Czen
un-cons-cionable has joined #nixos
<nwm_>
posix only mandates 2^16
<gchristensen>
I'm coming at it from a perspective of total reproducibility, so the gid would need to be consistent for every on every machine forever. maybe that restriction could be relaxed
nate48423 has joined #nixos
pr06lefs has joined #nixos
therivercass has quit [Remote host closed the connection]
cyraxjoe has quit [Quit: I'm out!]
<CRTified[m]>
Anyone here who has time to have a look at #64165 ? I'm currently available if there are any remaining questions :)
<cmk_zzz>
would it be possible to use nixos containers without root and with a stand-alone configuration file? They seem to be a perfect candidate for setting up development test environements. Lets say the development repository contains a container.nix file and I could locally just start a container from it. Is this possible?
<duairc>
Is it possible, from within a NixOS submodule, to set the value of a top-level config?
<duairc>
Specifically I have a submodule that I reuse in several places that has a `port` attribute, and I'd like to add its value to (the top-level) `networking.firewall.allowedTCPPorts` from within the submodule
<slack1256>
duairc: See how openssh does it. It should be possible somehow.
<clever>
duairc: dont think so, thats usually handled by a normal module, that extracts the copies out and sets other options
<clever>
extracts the options out*
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
nate48423 has joined #nixos
<duairc>
Okay, cool. It's not a big deal and it seemed kind of dubious anyway, but I was curious if there was a way
<{^_^}>
[nixpkgs] @Mic92 opened pull request #91974 → stdenv: make -nostdinc work as intended → https://git.io/JJUqb
whald has quit [Remote host closed the connection]
whald has joined #nixos
<benschza>
Does anyone have experience installing Python package python-control with slycot? When installing slycot, both pypi2nix and pip both fail trying to install cmake with `ModuleNotFoundError: No module named 'skbuild'`. Both cmake and scikit-build are installed via Nix already.
<hazel[m]>
78 apparently brings improvements for wayland so i'm hyped for that
<benschza>
Nice. How do you use Wayland, which window manager/DE on NixOS?
orivej has quit [Read error: Connection reset by peer]
orivej_ has joined #nixos
<hazel[m]>
sway on nixos
Neo-- has quit [Ping timeout: 244 seconds]
<hazel[m]>
i am also playing with hikari (in unstable) -- i like it more but it has some notable quirks, being the project of one person
<hazel[m]>
waiting on a fix for Minecraft and then it will be my day to day wm
<hazel[m]>
my setup is configured such that I can set `hazel.graphicalSession.desktop` to one of `sway` or `hikari` and it will rebuild accordingly, which is nice for swapping between them if/when hikari breaks
<Jake[m]1>
Do you have it working with automatically starting on login? I still have to run "startsway" each time.
<AmandaC>
I stole something from someone's .nix where it'll auto-login with mintty, then my shell has "if tty == /dev/tty1; startsway; end"
<{^_^}>
[nixpkgs] @veprbl pushed commit from @framp to master « PerconaToolkit: use shortenPerlShebang (#91921) »: https://git.io/JJUO9
erasmas has quit [Quit: leaving]
nate48423 has joined #nixos
cyraxjoe has quit [Client Quit]
<gchristensen>
I have a server which receives an SSH connection Very Often (about 10 times every 5 minutes) and it starts a new session-xxxxxx.slice every time. `journalctl -f -u <tab>` then blocks my terminal for Some Time and then eventually says "Display all 14770 possibilities?". is there a way to, like, prune these, or compact them, or just not auto-complete them, or..?
fendor has quit [Quit: Leaving]
cyraxjoe has joined #nixos
cyraxjoe has quit [Client Quit]
civodul has quit [Quit: ERC (IRC client for Emacs 26.3)]
cyraxjoe has joined #nixos
CodeKiwi is now known as DigitalKiwi
simba2 has quit [Ping timeout: 244 seconds]
dfsanf has joined #nixos
arjen-jonathan has quit [Ping timeout: 240 seconds]
shibboleth has quit [Quit: shibboleth]
pr06lefs has quit [Ping timeout: 260 seconds]
NeoCron has quit [Ping timeout: 258 seconds]
abrar has quit [Quit: WeeChat 2.7.1]
nwm_ has quit [Ping timeout: 260 seconds]
ptol3my[m] has joined #nixos
dermetfan has quit [Ping timeout: 260 seconds]
<hazel[m]>
i did it i set up pgp
<hazel[m]>
and i only pulled out a bit of my hair
<tpw_rules>
this doesn't work on my lubuntu 20.04 nix install: nix-shell -p 'python38.withPackages(ps: with ps; [ zstandard ])'
<hazel[m]>
what's the error?
<tpw_rules>
it says there's a collision because both zstandard and the zstd module it imports include the zstd cpython bindings
<tpw_rules>
collision between `/nix/store/j5w6bhaba6p6in8qz763gkz259424r53-python3.8-zstd-1.4.5.1/lib/python3.8/site-packages/zstd.cpython-38-x86_64-linux-gnu.so' and `/nix/store/6jm2lbix0paw38ydvnpjlrqlgyf463n4-python3.8-zstandard-0.13.0/lib/python3.8/site-packages/zstd.cpython-38-x86_64-linux-gnu.so'
mbrgm_ has joined #nixos
mbrgm has quit [Ping timeout: 246 seconds]
mbrgm_ is now known as mbrgm
<AmandaC>
around that message should bea hint for how to fix it, I think?
<AmandaC>
Something about setting priorities
<AmandaC>
oh wait, that's for nix-env not nix-shell, might be different
zanc has quit [Ping timeout: 265 seconds]
dingenskirchen has quit [Remote host closed the connection]
zanc has joined #nixos
mbick[m] has joined #nixos
o1lo01ol1o has quit [Remote host closed the connection]
o1lo01ol1o has joined #nixos
thc202 has quit [Ping timeout: 244 seconds]
justanotheruser has quit [Ping timeout: 265 seconds]