<{^_^}>
nixpkgs-channels#26 (by changlinli, 2 days ago, open): Update README to reflect why this repo is archived
andreas303 has quit [Remote host closed the connection]
lord| has joined #nixos
Acou_Bass has joined #nixos
Dotz0cat has quit [Ping timeout: 246 seconds]
andreas303 has joined #nixos
<selfsymmetric-mu>
samueldr: Thanks for helping us find our way. :)
selfsymmetric-mu has quit [Remote host closed the connection]
Dotz0cat has joined #nixos
jbox has joined #nixos
astrofog has joined #nixos
<jbox>
if anybody uses influxdb here, could you send me a paste with your influxdb configuration from configuration.nix? I'm having a hard time figuring out what all I should and shouldn't specify
o1lo01ol1o has joined #nixos
o1lo01ol1o has quit [Ping timeout: 260 seconds]
hnOsmium0001 has quit [Quit: Connection closed for inactivity]
keithy[m] has joined #nixos
<keithy[m]>
Hi there, I am looking for the best place in configuration to put a startup script to run a setpci command on boot.
<keithy[m]>
not sure it's worth a whole systemd unit
lord| has quit [Ping timeout: 265 seconds]
icey_ has quit [Ping timeout: 240 seconds]
lord| has joined #nixos
pushqrdx has joined #nixos
icey_ has joined #nixos
<infinisil>
keithy[m]: systemd units aren't expensive, so I'd just go for it
<infinisil>
Also, systemd lets you define exactly what "on boot" means
<keithy[m]>
I figured..
<keithy[m]>
beginners guide?
<aidenholmes>
I'd use cron for that
Acou_Bass has quit [Ping timeout: 256 seconds]
<aidenholmes>
here an example in my config:
<aidenholmes>
```
<aidenholmes>
systemCronJobs = [
<aidenholmes>
services.cron = {
<aidenholmes>
enable = true;
<aidenholmes>
$ grep -A 5 services.cron /etc/nixos/configuration.nix
<aidenholmes>
"@reboot tony syncthing --no-browser"
<aidenholmes>
];
<aidenholmes>
};
<aidenholmes>
```
<aidenholmes>
oh damn that sent as multiple messages didn't it, sorry
<clever>
aidenholmes: you just want a systemd service, cron is being horribly abused, lol
<clever>
aidenholmes: services.syncthing.enable = true; will set one up for you
<aidenholmes>
I tried that at first, it runs syncthing as root and sets the home folder to /var/lib/syncthing
<clever>
aidenholmes: services.syncthing.user
<keithy[m]>
i'm using systemd got confused when keybouad was using alternative quote character
<aidenholmes>
ah, too late on my system then lol, I don't want to risk having to setup the folders again, but I'll stop recommending cron for syncthing on nixos
mbrgm has quit [Ping timeout: 260 seconds]
mbrgm_ has joined #nixos
mbrgm_ is now known as mbrgm
chloekek has quit [Remote host closed the connection]
icey_ has joined #nixos
phaebz has quit [Remote host closed the connection]
<pushqrdx>
so i still have a very strange feeling when i do migration changes on nixos and i am sure it stems from ignorance
<pushqrdx>
i was hopping through many unstable commits all the day and i got 40 generations and 60gb nix store
<pushqrdx>
if i garbage collect how clean the system will be, brand new?
<colemickens>
pushqrdx: nixos doesn't do anything special with your data.
<colemickens>
pushqrdx: I've seen you asking about state and data before, nixos generations do not rollback data. They do not clean tmp files. They don't clear caches.
gentauro has quit [Read error: Connection reset by peer]
icey_ has quit [Ping timeout: 260 seconds]
<colemickens>
If you GC, the only thing that will change is what paths are in /nix/store and the in nix store DB.
<pushqrdx>
i asked about that before? srry i don't remember
<colemickens>
(and of course any OS-level config changes that were part of the nixos configuration)
<pushqrdx>
so what tmp/cache files get left of? only home dir?
gentauro has joined #nixos
turlando has quit [Ping timeout: 256 seconds]
<colemickens>
pushqrdx: I just feel like I saw you asking about the rollbacks + state/data management, and just kinda wanted to offer up these facts to help clarify; that's all.
<colemickens>
pushqrdx: for me, most of my "drifting state" on a nixos system come from ~/ and /var/lib/....
<colemickens>
pushqrdx: there are "advanced" techniques where you can configure the entire system to be "wiped", except for white-listed exceptions.
<colemickens>
(also, I use boot.tmpOnTmpFs and boot.cleanTmpDir so my temp files get wiped regularly)
<pushqrdx>
colemickens so there's stuff aside from home that won't be cleaned up by gc
<colemickens>
pushqrdx: potentially. If you activate postgres, load it up with data, and then disable it, nixos will not delete that data, so /var/lib/postgres might still contain data.
<colemickens>
pushqrdx: on the other hand, all of the configuration files for postgres, and the systemd unit, and the binaries for it... those things would be removed once you disabled them and ran GC
<colemickens>
I don't know your exact end goal, but there is also "NIXOS_LUSTRATE":
<colemickens>
" Support for NIXOS_LUSTRATE was added in NixOS 16.09. The act of "lustrating" refers to the wiping of the existing distribution. Creating /etc/NIXOS_LUSTRATE can also be used on NixOS to remove all mutable files from your root partition (anything that's not in /nix or /boot gets "lustrated" on the next boot. "
<pushqrdx>
colemickens so GC won't delete the database, i'd love to be concious about those places where stuff are left of so i can manually go there and delete things if necessary
<pushqrdx>
for instance a use case now is after a day of hopping through MANY stuff, i'd want to clean everything up as if i just installed nixos
<pushqrdx>
without formatting
<colemickens>
That's NIXOS_LUSTRATE then. Pretty easy, set that file, reboot, done.
<pushqrdx>
and i'd want to really get rid of all traces of GC'ed stuff
<pushqrdx>
and it won't redownload anything again right?
<colemickens>
correct, the only thing that would remove store paths is the GC at the end.
<colemickens>
and at that point, your system config (especially the running one) would still be a valid GC root.
<colemickens>
You'd lose things postgres of course though.
<colemickens>
If you reactivated it, it would be redownloaded. (because of the gC)
moet has joined #nixos
<pushqrdx>
yeah, understandable so NIXOS_LUSTRATE is just a file that if present nixos will throw out old mutable data on next reboot
Acou_Bass has joined #nixos
<pushqrdx>
will it be automatically removed after one reboot or do i manually remove it?
<pushqrdx>
also will it affect home in anyway?
zarel_ has quit [Ping timeout: 260 seconds]
zarel has joined #nixos
<simpson>
It will remove /home. Anything not in /nix or /boot, including /home. Don't use it on systems where you have existing data that you want to preserve!
<simpson>
It's important to grok the context. Lustrating is for cloud machines that need to be hosed down before usage. You could think of a pressure washer; I think of nasty corrosive cleaners used in chip fabrication.
<pushqrdx>
so it's really as if i formatted and reinstalled nix, with the exception that i keep the store and don't have to redownload stuff from the internet
<simpson>
(Actually, I do think of a pressure washer. I had an accident as a teenager where I lost a chunk of a finger because my hand was hit by a high-pressure water stream. Be careful with power tools.)
<simpson>
Yes, exactly. Keeping the store has another important use: Nix itself lives in the store, so this enables post-lustration bootstrapping without having to reinstall Nix itself, which would be truly a drag.
<pushqrdx>
this is excatly what i want to do rn cause after a day and 60gb of store i settled on some config that i want to persist but get rid of everything else and start as if i just installed it cleanly
<pushqrdx>
simpson now you made me afraid of pressure washers ;D
<simpson>
Ah. Part of the power of Nix is that you can always pretend that you just started from a clean installation. Lustration won't clear out space in the store; you'll need to GC instead.
ravndal has joined #nixos
cr4y1 has quit [Ping timeout: 264 seconds]
<pushqrdx>
with this info now i can finally stop reinstalling it from usb like a dumdum because i always knew at the back of my head that there's some nasty left overs after a day of fiddling around
<pushqrdx>
waster a lot of internet quota doing that though :D
<colemickens>
This would be another good blog post.
<pushqrdx>
colemickens i am stacking a bunch of these Q/A things, tbh nix and especially nixos is the best linux experience i ever had
<colemickens>
:)
<pushqrdx>
and i tried a lot, never had the freedom and control also awareness that i felt here
teto has quit [Ping timeout: 272 seconds]
m0rphism has joined #nixos
<bqv>
d.nnr
<bqv>
this is partly a h-m curiosity
<colemickens>
bqv is that your version of "covfefe"
<bqv>
but it's getting frustrating to iterate on configs to change something in my home-manager profile, because i have to build my whole network of systems
<bqv>
anyone got a better model for that?
<bqv>
colemickens: it means hello
<colemickens>
oh! neat. hello!
<pushqrdx>
i learned a hard lesson today though, never blindly upgrade (replacing current gen) on nix unstable :D
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage-packages.nix: automatic Haskell package set update »: https://git.io/JkneG
Acou_Bass has quit [Ping timeout: 272 seconds]
<pushqrdx>
i wonder though what if i somehow only excluded home from Lustration, and kept the whole system at a frozen state
hnOsmium0001 has joined #nixos
<pushqrdx>
what side effects could that entail
<pushqrdx>
as far as i understand it won't affect nix-shell or any store thing anyway
<pushqrdx>
and the only mutable place i want as my playground is my home
<jbal[m]>
I'm packaging some scripts that need `jq` and a few other tools, what's the best way to inject `jq` into them? `sed -e 's:jq:${pkgs.jq}/bin/jq:' ...`? `nix-shell` somehow?
teto has quit [Ping timeout: 272 seconds]
<ajs124>
you could also wrap them with a PATH containing the dependencies
<Graypup_>
anyone know how to get a qemu-system-user and a cross compiler?
<jbal[m]>
That would probably be cleaner and less fragile than `sed` hacks I suppose.
<Graypup_>
I've figured out the cross compiler part
<Graypup_>
but I don't know how to get a qemu-system-user
<ajs124>
Graypup_: do you want binfmt or just the qemu-system-user to run something manually?
<Graypup_>
ajs124, it's ok to just have the qemu-system-user
<Graypup_>
in fact i don't even mind if i have to statically link stuff
<Graypup_>
what I'm trying to do is build a test harness for an ARM assembly algorithm
<Graypup_>
so I'd (ideally) like rust cross compilation and a qemu to actually run
<ajs124>
ok. I don't know that off the top of my head, but there is boot.binfmt.emulatedSystems
<Graypup_>
I took that qemu-user override but it was trying unsuccessfully to build a bunch of python crap for some reason, ultimately depending on p11-kit which was failing
<ajs124>
not sure if this will work with any nix versions except the specific one I have right here, but:
<ajs124>
gives me something that seems to not run x86 binaries
<ajs124>
anyway. I'm off. should have gone to bed hours ago.
<wykurz>
hi, I'm trying to use nixops from latest master and running into a problem with existing deployment: "unknown resource type ‘ec2’" - has anyone seen that?
mzan has quit [Quit: No Ping reply in 180 seconds.]
mzan has joined #nixos
sigmundv__ has quit [Read error: Connection reset by peer]
sigmundv__ has joined #nixos
raghavsood has joined #nixos
<bqv>
ok so my solution was to create a flake target that just builds my local machine and runs switch-to-configuration test, rather than deploying my full system
acarrico has quit [Ping timeout: 264 seconds]
<wykurz>
ok, I figured out I need to use an AWS plugin with master. super confusing how to do that
<{^_^}>
[nixpkgs] @thoughtpolice pushed 2 commits to master: https://git.io/JknIA
<wykurz>
ah, ok. creating a shell from nixops-aws repo seems to get me what I need...
<Graypup_>
ajs124, looks like that causes me some fail since if I am in a crossSystem of arm, it will just resolve to the """"native"""" bash and build me a bash for arm, which is not what I wanted
<Graypup_>
maybe I have to do it from a native nixpkgs?
orivej has quit [Ping timeout: 246 seconds]
o1lo01ol1o has joined #nixos
<Graypup_>
weiiiiird so I get a store path from that but it doesn't exist, and nix-store -r doesn't know how to build it either
<andrewrk>
I'm on 20.03.3258.86fa45b0ff1 (Markhor) - is there an easy way to get the latest vscode?
zupo has quit [Read error: Connection reset by peer]
o1lo01ol1o has quit [Ping timeout: 246 seconds]
<Graypup_>
i mean, the disk eating solution to this is to import nixpkgs master and grab vscode out of it, probably :)
<vsiddharth>
That worked, thank you! Is there documentation for these options anywhere apart from https://nixos.wiki/wiki/Flakes
ManiacOfMadness has joined #nixos
<vsiddharth>
I was having trouble finding documentation for flakes in general :)
<jbal[m]>
I can't remember how I found that one out lol. I remember trying file: etc... before figuring it out
<jbal[m]>
That said. If your submodules are tracking remote repositories, you're better off pointing your inputs there. However, it's great for testing
aw has quit [Quit: Quitting.]
spacefrogg has quit [Quit: Gone.]
aw has joined #nixos
<vsiddharth>
It's in the case that different repos track different commits. Thank you again!
spacefrogg has joined #nixos
<jbal[m]>
Yeah, flakes aren't very well documented at the moment. Nix in general could use better documentation, I find myself having to use GitHub's search function a lot
<vsiddharth>
Which repos do you generally look at? nixpkgs or nix?
<matthewcroughan_>
I understand what it means to build my whole flake, but what does it mean to only build that bit? What happens when I build that? What is happening automatically and what do I have to do manually?
<matthewcroughan_>
Doing something that DOESN'T require switching/activating, I don't understand that bit yet.
Havvy has joined #nixos
justanotheruser has quit [Ping timeout: 260 seconds]
<jbal[m]>
When used with nix build instead of nixos-rebuild, you're working with derivations instead of nixos configs
<matthewcroughan_>
right, and it's that difference that I don't understand at all
<matthewcroughan_>
both are `nix build`, yet the output is so different?
<jbal[m]>
So `github:colemickens/nixpkgs-wayland#obs-studio` is find me `outputs.packages.${system}.obs-studio` and build it like you would with nix-build
<matthewcroughan_>
When I `gcc` something, I get files output in a bin/ dir, what happens when I `nix build` I `nixos-rebuild`
<matthewcroughan_>
lol ok, so the flake is a redirector to a nix file?
<matthewcroughan_>
the flake literally disambiguates the location of a nix file?
<matthewcroughan_>
so why can't I just nix build github:colemickens/nixpkgs-wayland/pkgs/obs.nix or something?
<matthewcroughan_>
or the raw nix file
<jbal[m]>
Because nix doesn't work in files, it works in nix language expressions.
<matthewcroughan_>
hmm
<matthewcroughan_>
so could I make a nix file locally that DOES do what I just said?
servo has quit [Ping timeout: 246 seconds]
<matthewcroughan_>
uses some builtin nix function to do that?
<jbal[m]>
The nix expression type that corresponds to building a package is the derivation. Which is everything that is needed to build a package including fetching the actual code, dependencies, etc...
<jbal[m]>
A flake can be thought of as a bag of derivations (and also nixos system configs)
<jbal[m]>
little sed hack I made for patching in dependency paths to shell scripts: `sed -i -e '1 a export PATH=${builtins.concatStringsSep ":" (map (x: "${x}/bin") buildInputs)}' *.sh`
<charukiewicz>
is <nixpkgs> a special channel name on NixOS? Seems to work in my nix expressions even when I don't have a channel named 'nixpkgs' in my ~/.nix-channels (nor does the root user)
<charukiewicz>
Specifically, I can `import <nixpkgs> {}` without issue in my .nix files
eoli3n has joined #nixos
<immae>
charukiewicz: it’s the content that you target via the environment variable: NIX_PATH=nixpkgs=some/path
<immae>
you can name it however you like
<immae>
(and target other places than ~/.nix-channels)
cosimone has joined #nixos
<charukiewicz>
Ah right, forgot it reads NIX_PATH rather than ~/.nix-channels. Thanks.
benny_ is now known as benny
tboston has joined #nixos
<jbal[m]>
If you want it to not work, use pure mode :)
<jbal[m]>
Flakes are pure by default
ericsagn1 has quit [Ping timeout: 272 seconds]
<charukiewicz>
I'm using `import <nixpkgs>` to bootstrap to access fetchFromGitHub, then using fetchFromGitHub to download my pinned package set
<jbal[m]>
Speaking of flakes, is there a quick way to update all of a flake's inputs other than specifying every single one via --update-input?
<jbal[m]>
--recreate-lock-file would do it I suppose, but would that not have other side effects?
<etu>
jbal[m]: Should be fine I think, it's generated to begin with, and you probably have your lock-file commited so you can read the diff
<etu>
Seems to work fine for me :)
<jbal[m]>
ty, I guess I'll just use that
<jbal[m]>
etu++
<{^_^}>
etu's karma got increased to 28
saschagrunert has joined #nixos
* etu
migrated to flakes just a week ago pretty much
thc202 has joined #nixos
ManiacOfMadness has quit [Ping timeout: 256 seconds]
<jbal[m]>
That also won't work in pure mode though (requires the hash to be known ahead of time. I guess you could use a particular commit and hash /shrug
asheshambasta has joined #nixos
cole-h has quit [Ping timeout: 260 seconds]
<{^_^}>
[nix] @jbaum98 opened pull request #4262 → Fix deadlock in nix-store when max-connections=1 → https://git.io/Jkn6U
<{^_^}>
[nix] @zimbatm closed pull request #3170 → libexpr: add position to builtins.trace → https://git.io/JeuTj
meatcar has joined #nixos
gxt has quit [Remote host closed the connection]
<{^_^}>
[nix] @zimbatm closed pull request #3680 → libutils/hash: rename Base to HashEncoding → https://git.io/JfSRt
gxt has joined #nixos
<inquisitiv3>
I'm currently looking at the JUnit "definition" ("expression"? what do you call package definitions in Nix?) in `pkgs/development/java-modules/junit/default.nix`. The attribute `meta.broken` is set to `true`. What does that mean? I could not find any information in `pkgs/build-support/release/ant-build.nix`.
<jbal[m]>
Broken means known not to build, PRs welcome
<jbal[m]>
Best place to start is to look for the commit that added broken = true, and see if it has any comments
o1lo01ol1o has joined #nixos
vandenoever has joined #nixos
vandenoever has joined #nixos
sangoma has quit [Read error: Connection reset by peer]
<jbal[m]>
Gave it a look and it's not marked broken on master, nixos-unstable, nixos-20.09 on GitHub but I could be missing something
<jbal[m]>
What channel are you on?
<{^_^}>
[nix] @zimbatm opened pull request #4263 → libstore: always use the socket if it exists → https://git.io/JknD4
civodul has joined #nixos
<{^_^}>
[nixpkgs] @expipiplus1 opened pull request #103957 → vulkan-tools-lunarg: init at 1.2.141.0 → https://git.io/JknDK
o1lo01ol1o has quit [Ping timeout: 264 seconds]
gthm has joined #nixos
RowanG has joined #nixos
<RowanG>
Hello everyone! I'm looking to package a Haskell application which uses only stack as it's build system: (https://github.com/TorXakis/TorXakis). I have no clue how to do this.
cyphase has quit [Ping timeout: 272 seconds]
<RowanG>
Even a normal build fails. When I clone the repo create a shell with stack and run `stack build` It errors with: `stack can only control the ghc-variant of its own GHC installations. Please use '--no-system-ghc'.`
<RowanG>
When I add the `'--no-system-ghc'` flag as instructured it also fails: `stack's Nix integration is incompatible with '--no-system-ghc'. Please use '--system-ghc' or disable the Nix integration.`
sangoma has joined #nixos
werner292 has joined #nixos
NeoCron has joined #nixos
werner291 has quit [Ping timeout: 272 seconds]
werner292 is now known as werner291
cyphase has joined #nixos
kalbasit has quit [Ping timeout: 240 seconds]
sgrunert has joined #nixos
risson[m] has quit [Quit: Idle for 30+ days]
saschagrunert has quit [Ping timeout: 264 seconds]
srenatis has joined #nixos
srenatis is now known as srenatus
cfricke has joined #nixos
orivej has joined #nixos
hlolli has joined #nixos
bn_work has quit [Quit: Connection closed for inactivity]
<sephii>
Is there a way to include a Python package in the environment of another package? Something like `python3Packages.python-language-server.withPackages(ps: [ ps.pyls-black ])`?
<Netsu>
So I got "error: attempt to call something which is not a function but a string with context, at (string):1:6"
<sephii>
I tried installing it with `python3Packages.withPackages(ps: [ ps.python-language-server ps.pyls-black ])` but then I get a lot of collisions between this and other python packages installed on my environment
<yorick>
sephii: so just withPackages [ python-language-server pyls-black ]
<vika_nezrimaya>
yorick: yep! .withPackages constructs a PYTHONPATH consisting of listed packages
<vika_nezrimaya>
one package will find the other package on this path or its own dependencies (which are propagatedBuildInputs) with no problems at all
<mkaito>
is there an easy way to construct a shell derivation with all the inputs from two other derivations?
cosimone has joined #nixos
<vsiddharth>
Hey, I'm trying to build a singularity image using singularity-tools.buildImage, and it's getting stuck right after "writing superblocks and filesystem accounting information". I think it's a problem with qemu and possibly mkfs. I've enabled libvirtd and set qemu to be qemu-kvm, is there any other reason why it's so slow?
andreas303 has quit [Remote host closed the connection]
vonfry has left #nixos ["ERC (IRC client for Emacs 27.1)"]
andreas303 has joined #nixos
berberman has quit [Ping timeout: 264 seconds]
berberman has joined #nixos
vikanezrimaya has joined #nixos
vikanezrimaya has quit [Client Quit]
ericsagn1 has quit [Ping timeout: 260 seconds]
vika_nezrimaya has quit [Ping timeout: 265 seconds]
<emilsp>
has anyone seen issues with gnome-shell/wayland where some windows just don't get updated as often as they should? Moving them around or resizing seems to fix the issue. Specifically, I'm having issues with the wayland enabled firefox and virt-viewer/virt-manager.
justanotheruser has quit [Ping timeout: 260 seconds]
werner292 has joined #nixos
werner291 has quit [Ping timeout: 272 seconds]
werner292 is now known as werner291
simonpe^^ has joined #nixos
<simonpe^^>
Will `builtins.fetchGit { url = "..."; ref = "foobar"; }` re-fetch the foorbar branch every time I run it or will it re-use the first checkout it did?
<gulplante>
I am trying to build a project that uses OpenGL and cmake. I have the opengl module enabled. FIND_PACKAGE(OPENGL) fails. Anyone have experience with similar things?
<simpson>
gulplante: Without knowing anything else, it's likely that you want to add `libglvnd` to your buildInputs; this is a shim library designed to ease the lookup of libGL.
<simpson>
(Lucky 10000: This is because libGL.so.1, the actual shared object, has to obey a specification for how it's linked; at the same time, though, vendors like to provide their own shared object.)
orivej has joined #nixos
<typetetris>
Hi! Whats an easy way to generate a self signed certificate with nixos?
<otavio>
Hello; does someone has any doc explaining how I can maintain a overlay or private nixpkgs repo?
<simpson>
otavio: Private forks of nixpkgs are literally git repositories and are administered in the typical fashion. For example, you can use standard git+ssh in order to authenticate pushes and pulls.
<otavio>
simpson: also, when working on something we'd like to upstream, what is the best workflow? fork nixpkgs? and how I make it use it here in our local install?
<simpson>
typetetris: I think that it depends on which daemon you're trying to put the certificate into. I don't think that we have configuration for e.g. nginx that makes a self-signed cert easier than Let's Encrypt.
<simpson>
otavio: Since you'll have to make PRs to nixpkgs in order to get stuff upstream, yes, at some point you'll have to work from a local fork of nixpkgs which you can use to build and test.
<typetetris>
simpson: Thanks. Grepping through nixpkgs pointed me to minica
<typetetris>
seems good enough for test systems
<simpson>
Ah, great.
<simpson>
otavio: https://nixos.org/manual/nix/stable/#env-NIX_PATH The NIX_PATH environment variable is an easy way to locally temporarily change which nixpkgs you're using. In combination with direnv and nix-shell, this can lead to a smooth locally-isolated environment.
Darkmatter66_ has quit [Quit: ZNC 1.7.5 - https://znc.in]
<gulplante>
It also fails to FIND_PACKAGE(GLM) even though I can manually set the path for the cmake config for this. I am at a loss for OpenGL and glew as their out paths do not seem to include cmake configs
<simpson>
Oh, in a nix-shell? Not sure, sorry.
domogled has joined #nixos
<gulplante>
Thanks anyway; I am trying to simply build a project, not package it. I am enrolled in a course and they use some overly complicated Cmake build setup for the assignments...
<simpson>
Oh, that's an interesting perspective. I would use nix-build to build a project; "packaging" it by writing a derivation is a basic requirement.
<simpson>
gulplante: Yeah. We have support for cmake, so you may not have to do that much effort.
<{^_^}>
[nixpkgs] @eraserhd opened pull request #103969 → kakounePlugins.openscad-kak: init at unstable-2020-11-16 → https://git.io/Jkc80
<Di4na>
Hello everyone, so if there is a PR that is already merged in unstable (from 2 months ago) that i would need to merge to 20.09, is there an expected way to get that ?
<srhb>
Di4na: Is it something that should be backported, or something you want to pull in locally only?
<pushqrdx>
simpson i have a question about lustration would it also delete my nix config, i.e /etc/
acarrico has joined #nixos
<simpson>
pushqrdx: I don't remember, but probably!
<gulplante>
simpson: Ah, of course. I did not think about the fact that I am casting away help from standard build scripts and such by not writing a derivation. Thanks, I will give it a try.
<srhb>
gulplante: And you should get a shell more or less "for free" from that, too :)
<pushqrdx>
simpson well that kinda sucks? like how would the system be reconfigured again :D just copy my old /etc/nixos back and that's it?
<Di4na>
srhb: backported. I can easily do a branch and cherry pick, the problem is that it will drop elixir 1.6. Basically i need that PR in 20.09. https://github.com/NixOS/nixpkgs/pull/98649 because we put erlang 23 in 20.09 but rebar2 does not compile well on it and break elixir being built
<gulplante>
srhb: Right. Cool because that is a nicer workflow when doing assignments.
<Di4na>
I mean i can deal without, but i do think it would be better if we merge it in 20.09 too
<srhb>
Di4na: I imagine that's unlikely to get backported, since it would break users of it, though I don't know that ecosystem.
<Di4na>
srhb: it does break users of it _already_ :d
<simpson>
pushqrdx: Perhaps one could check a copy of configuration.nix into the Nix store! I don't remember how it's done in tools which use lustration. Honestly, I'm pretty sure that you're looking at the wrong tool for the job; if you just want a cleaner system, then continue to refactor your imperative /home state into home-manager or etc.
<{^_^}>
[nixpkgs] @kfollesdal opened pull request #103970 → pythonPackage.python-crontab: init at 2.5.1 → https://git.io/Jkc48
<srhb>
Di4na: Perhaps some of its maintainers know better. :)
<srhb>
Di4na: That increases the chance! :)
<srhb>
Di4na: Opening a backport PR against release-20.09 and describing your reasoning is probably the best way to start the discussion. :)
<pushqrdx>
simpson i don't want a cleaner system i want to nuke everything except my /etc/nixos and stuff in the store that belong to this generation
<pushqrdx>
because i played too much yesterday and i have a 65Gb nix store with tons of garbage all over the place :D
<simpson>
pushqrdx: Yeah, I don't see how lustration helps with that; the garbage is coming from *inside* the Nix store.
<pushqrdx>
simpson how is it going from inside if the packages that produced it are no longer active? they were active during my tests by now i moved to other ones
<pushqrdx>
like for instance i installed all the desktop environment and all the display managers yesterday and tried them all
<srhb>
pushqrdx: If you're not using them anywhere (that is, your system no longer references them) just nix-collect-garbage :)
<simpson>
Use your disk-usage utility of choice and see for yourself how much is in /nix/store.
<srhb>
pushqrdx: Optionally with --delete-older-than 4d, or however many days of generations you no longer want to have available.
GuillaumeChrel[m is now known as gcher
<srhb>
er, you *want* to have available.
<pushqrdx>
what i am trying to achieve is not simple garbage collection, i want to get rid of the mutable stuff that was indeed created by those packages and put all over the mutable paths in the system
<srhb>
Are you sure there's that much? If that's the case, it sounds like you want something like grahams erase your system-thing.
gcher has quit [Quit: authenticating]
gcher has joined #nixos
<srhb>
It does not exist in NixOS by default at least. :)
<simpson>
Like, what kind of stuff? Trying out different desktop software is not going to leave much around; there will be stuff in /home, I guess, but that's not something we can help much with. (That's up to XDG and others.)
<pushqrdx>
alright what about anything that wrote into /var ?
<srhb>
pushqrdx: No tools out of the box.
<simpson>
Well, (1) like what? (2) it is quite up to you whether to nuke /var, if that's what your disk-usage utility tells you.
<pushqrdx>
simpson alright so i'll ask for the sake of understanding and not feeling bad and keep reinstalling from usb :D
<pushqrdx>
simpson what are the places that might be mutated and might contain garbage after a lot of fiddling?
<simpson>
Well, yes, that's where I'm headed; I'm hoping to help you understand how Nix works.
<pushqrdx>
how can i make sure that i got a clean slate after a GC
<simpson>
There *aren't* such places, other than the Nix store itself, and the store is managed like a heap according to live references.
<pushqrdx>
as clean as formatting and reinstalling, except keeping my home and /etc
<simpson>
It doesn't make sense to try to get the store into a single canonical "clean" state.
sangoma has quit [Ping timeout: 246 seconds]
<pushqrdx>
aside from the store cause i am sure GC cleans it out and only keeps the used by this generation stuff
<pushqrdx>
gc --delete-old i mean
<simpson>
(Well, okay, there's /boot and the bootloader, but that's because bootloaders are somewhat impure. You may have to manually examine /boot from time to time.)
<simpson>
Part of the point of NixOS is to reduce the traditional anxiety of Wintel sysadmins, that a misbehaving machine needs a complete reinstallation from scratch on a freshly-formatted MBR.
gxt has quit [Remote host closed the connection]
gxt has joined #nixos
<pushqrdx>
this is the feeling i still retain from my past experience with macOS, other linux distros
<pushqrdx>
so after what i did yesterday and all the jumping around nix rebuilds, (40+ generations) i feel very dirty about :))
<simpson>
Sure. Distros which follow the FHS can have similar issues, although I've never personally experienced them. Certainly, at scale, it is far easier to reformat and reinstall than anything else.
<srhb>
pushqrdx: NixOS explicitly avoids any questions of state outside of /nix by default. Have you read the erase your darlings blog post?
<simpson>
But on Nix, it doesn't matter. Just collect garbage if you need more disk space, and then move on.
<pushqrdx>
i read the darlings post but it made me feel like nixos also needs some house keeping outside simple garbage collection
<srhb>
pushqrdx: But did you see the amount of buy-in it takes?
<{^_^}>
[nixpkgs] @DianaOlympos opened pull request #103971 → elixir_1_6: remove backport to 20.09 → https://git.io/Jkc0U
<srhb>
And: NixOS makes erase your darlings possible. :)
adamCS has quit [*.net *.split]
qz has quit [*.net *.split]
cruxeternus has quit [*.net *.split]
cruxeternus has joined #nixos
adamCS has joined #nixos
qz has joined #nixos
<pushqrdx>
yeah that is awesome, i even learned that the usb only boots of 2 directories
<pushqrdx>
boot and nix
<simpson>
pushqrdx: IMO if you got /home onto a separate disk from the rest of your system's boot disk, then that would be a bigger step than anything in the blog post. (I presume it's not explicitly in the post because it's rather rude to tell people to purchase more hardware.)
<srhb>
The post assumes "free" datasets (zfs)
<simpson>
Like, you don't *need* to do what's being done in that post. What you need right now is to run nix-collect-garbage with appropriate flags.
<gchristensen>
oh dear, a misunderstanding of my post?
<simpson>
Sorry, please set me straight.
<pushqrdx>
simpson appropriate flags is --delete-old you mean
<pushqrdx>
any more useful ones?
<gchristensen>
simpson: I'm sure you have the right idea
<gchristensen>
simpson: I don't think you misunderstood
sangoma has joined #nixos
<srhb>
fwiw pushqrdx, I agree that unless you have good reason, you probably don't _need_ something as heavy as erase your darlings, I'm only trying to emphasize that it is possible, if you really want it, but it's not free.
Di4na has quit [Quit: Leaving]
<pushqrdx>
so morale of the story aside from /boot /home /var all the system is immutable and is symlinked from the store according to my configuration, if i gc that's 90% of the way
<srhb>
It seems to me that you're being very, shall we say, thorough. And that's fine. But I think expecting it of NixOS out of the box isn't really realistic, because it requires opting in for every piece of state you want to keep explicitly.
<srhb>
pushqrdx: Yeah..
heyitsrama has joined #nixos
<pittma>
has anyone been able to get Thunderbird 78.3 gpg stuff to work?
<pushqrdx>
i am being thorough just for the sake of 2 things, first i want to be aware of the system, second i like to feel in control of any garbage thrown onto the system, for instance when i was on macOS i knew all the little places apps would through stuff into
<pushqrdx>
and i'd go and make sure no garbage is left behind
<gchristensen>
I hear that
<pushqrdx>
so after switching to nixos i am still having that feeling
<pushqrdx>
that there might be some garbage around that i don't know about :D
<simpson>
What does your disk-usage utility tell you?
<srhb>
pushqrdx: Second fwiw -- I'm likely to end up with erase your darlings as well, because I feel the same way, and I'm willing to invest in it.
<qyliss>
I know exactly how you feel
<qyliss>
one thing I do is make my home directory read only
<srhb>
pushqrdx: Just managing expectations ;-)
<srhb>
NixOS+erase your darlings is a whole new level of statelessness. I like it. Some people really won't. :P
<siraben>
`texlive.combined.scheme-medium` seems to be missing a lot of packages, wrapfig, rotating, capt-of, minted etc.
heyitsrama has quit [Ping timeout: 265 seconds]
Sanchayan has quit [Quit: leaving]
<siraben>
Can I specify those declaratively?
<srhb>
siraben: Do you know that you can add packages to any of the schemes?
<quidome[m]>
It occurred to me that these are both electron apps, no idea if it has anything to do with the crashes though.
<quidome[m]>
I'm experiencing random crashes with two of the apps I run on my laptop, being: rambox and element. Anyone else having the same issues?
<gchristensen>
qyliss: how often do you run in to software which is unhappy about that? iirc pulseaudio wasn't thrilled at one point
heyitsrama has quit [Ping timeout: 260 seconds]
<quidome[m]>
o funny , just found mentions of coredumps in the journal
<pushqrdx>
srhb i get really irritated by drifting state :D
orivej has quit [Ping timeout: 260 seconds]
<srhb>
pushqrdx: I sympathize. I'll stop trying to talk you out of it. ;)
<pushqrdx>
xD
<gchristensen>
you probbaly want a filesystem with "free" datasets then
kalbasit has joined #nixos
<qyliss>
gchristensen: for the longest time pulse was the only thing I allowed to use .config
<qyliss>
but eventually I wrote a patch for it
cfricke has quit [Quit: WeeChat 2.9]
__monty__ has joined #nixos
<qyliss>
and changed it use XDG_DATA_HOME for the dynamic data stuff
<fgaz>
is + the best way to concatenate paths?
<pushqrdx>
i got rid of pulse audio and using pipewire now very seamless so far, everything is working as expected and i get really low latency in carla
<fgaz>
ex. <nixpkgs> + "/nixos/lib"
<clever>
fgaz: <nixpkgs/nixos/lib>
<clever>
it works the same way as <foo> in c/c++
<qyliss>
pushqrdx: oh yeah I'm looking forward to trying pipewire
<clever>
when in #include lines
<Ankhers>
Is anyone successfully building flutter apps in NixOS? I'm just wondering if you have a setup that you could share because when I try I get an error when trying to download deps because the nix store is read only (which makes sense).
<fgaz>
clever: I'm taking pkgs as input, so I can't do that
<clever>
fgaz: yeah, then + is what you want, like you showed
<pushqrdx>
qyliss installing it and disabling pulse on nix was a breeze, and all the usual stuff like volume/media keys, firefox etc work as if pulse is installed
<pushqrdx>
jack apps run as if jack is installed
<pushqrdx>
very smooth so far
<qyliss>
I never got round to working volume keys lol
<clever>
numkem: nix will query all caches in parallel (i think), and then use that priority to decide which to use, when 2 caches have a given path
<numkem>
lordcirth: long story short, I have my own hydra and because of a new version of nix/hydra I can't use minio for store_uri so it's now using nix-server which is rather slow
kim0 has joined #nixos
<numkem>
lordcirth: doing the same for my binary cache shows it has a priority of 30... yet it's what it's using all the time
<tomturbo>
hello, I can't figure out how to get distributed builds to work. I have set up nix.buildMachines, set nix.distributedBuilds to true and verified that it is possible for root to connect to the build user on the build host using the ssh key in nix.buildMachines.*.sshKey. however, when running "nix-build -j0 -A hello" with verbose output, I find nothing in the output that would suggest that the build host
<jophish>
ha, wait_for_console_text is only used 5 times
<tomturbo>
was utilized
philr has quit [Ping timeout: 260 seconds]
erasmas has joined #nixos
teto has joined #nixos
johnny101 has quit [Ping timeout: 264 seconds]
<jophish>
tomturbo: anything in journalctl -u nix-daemon?
<{^_^}>
[nixpkgs] @alyssais pushed commit from @vdemeester to release-20.03 « youtube-dl: 2020.11.01.1 -> 2020.11.12 »: https://git.io/JkcMX
<{^_^}>
[nixpkgs] @alyssais pushed commit from @vdemeester to release-20.09 « youtube-dl: 2020.11.01.1 -> 2020.11.12 »: https://git.io/JkcM1
mthst has quit [Ping timeout: 240 seconds]
<tomturbo>
jophish: hm, I've noticed that the nix-daemon was stopped on my build host. I've started it again and ran the build again, but no dice
<tomturbo>
what is surprising to me is that the build succeeds at all, according to the docs, -j0 should prevent the package being built locally
<jophish>
it's not already built or something XD
arlid has joined #nixos
pushqrdx has quit [Remote host closed the connection]
johnny101 has joined #nixos
<{^_^}>
[nixpkgs] @alexjg opened pull request #103976 → wrapProgram for phpdbg in pkgs.php* → https://git.io/JkcD3
<tomturbo>
that is very possible :) I've now run "nix-collect-garbage -d" and it deleted "...hello-2.10.drv" and "...hello-2.10.tar.gz.drv". after doing that and running nix-build again, it still seems to build locally, even with j0
<{^_^}>
[nixos-homepage] @garbas pushed to redesign-features « work in progress »: https://git.io/JkcD6
<arlid>
Hi all, I'm having problems creating a nix-shell with openssl library
<arlid>
fg
<Ariakenom>
some channels are named nixpks-* and some nixos-*. and nix and nixos have different types of version numbers. im a bit confused
<arlid>
This is my default.nix with import <nixpkgs> {};stdenv.mkDerivation { name = "rust"; buildInputs = [ openssl pkg-config ];}
<{^_^}>
[nixos-homepage] @garbas pushed 49 commits to redesign-features: https://git.io/JkcyI
<arlid>
but I get nix-shellbash: no match: /nix/store/lwcrmj44j6s5ww3j0ybar2jc7kf9ddzq-openssl-1.1.1g-dev/lib/lib* this error
<jophish>
tomturbo: no idea, but I wonder if there's a difference between `nix-build -j0` and `nix build --max-jobs 0`
<tomturbo>
jophish: I've tried it out and saw the same behavior, according to the man page they refer to the same option tough
<jophish>
very weird, and it's for sure building locally and not fetching from a cache?
<tomturbo>
hm, it is very possible that it is fetching it from a cache. I'll try overriding a different package to make sure it is building it from source
heyitsrama has joined #nixos
<tomturbo>
ahh, looks like that was the problem: I built nginx with libressl and it showed that the package was built on the build host, thanks for your help!
<simpson>
I wonder if, as a matter of practicality, we could think about stuff which ought to be removed *after* release. Like, yes, we agree that it needs to be changed, but not now, but at the next opportunity.
sgrunert has quit [Remote host closed the connection]
<enteee>
Does somebody else also have issues with spice usb redirection on current unstable?
s34m has quit [Quit: s34m]
<enteee>
with virtualisation.spiceUSBRedirection.enable = true, spice-client-glib-usb-acl-helper should be installed with setuid and cap_fowner+ep (according to doc), but on my system it only ends up having the cap.
<{^_^}>
[nixpkgs] @jonringer merged pull request #98202 → python3Packages.sphinxcontrib-autoapi: init at version 1.5.1 → https://git.io/JU0RY
<{^_^}>
[nixpkgs] @jonringer pushed commit from @karolchmist to master « Add sphinx autoapi 1.5.1 »: https://git.io/Jkc5j
rajivr has quit [Quit: Connection closed for inactivity]
<{^_^}>
[nixpkgs] @gnidorah opened pull request #103980 → cde-gtk-theme: add ability to override palette → https://git.io/Jkcbd
<enteee>
hmm, if I do set setuid manually on spice-client-glib-usb-acl-helper it works just fine. Wondering now if something changed in security.wrappers that would explain this. Digging deeper.
<rogerr>
in the generated vimrc file, it has the set shortmess=I i added to extraConfig, but that doesn't get respected when i run nvim i still see the intro message
<{^_^}>
[nixpkgs] @NinjaTrappeur opened pull request #103985 → autogen: make man output reproducible → https://git.io/JkcjX
<{^_^}>
[nixpkgs] @NinjaTrappeur closed pull request #103985 → autogen: make man output reproducible → https://git.io/JkcjX
hlolli_ has quit [Remote host closed the connection]
hlolli_ has joined #nixos
<{^_^}>
[nixpkgs] @NinjaTrappeur opened pull request #103986 → autogen: make man output reproducible → https://git.io/JkCvf
iH8c0ff33 has joined #nixos
sbetrium has joined #nixos
aasg has quit [Quit: killed]
pushqrdx has joined #nixos
aasg has joined #nixos
<pushqrdx>
one problem still remaining in my nix configuration, adding myself to the i2c group properly
<pushqrdx>
i want to be able to use ddcutil without sudo, and i added "i2c" to my groups
<pushqrdx>
but i still get premission denied
<pushqrdx>
i asked before and someone told me to do something with udev but i forgot what or how :D
iH8c0ff33 has quit [Ping timeout: 272 seconds]
werner292 has joined #nixos
iH8c0ff33 has joined #nixos
<srhb>
pushqrdx: I told you to setup the udev rules, yeah. I think they're actually packaged in one of the packages you mentioned, so you'll just have to add that to your udev packages.
<ToxicFrog>
Note also that if you're changing your group membership that takes effect only on a new login.
werner291 has quit [Ping timeout: 272 seconds]
werner292 is now known as werner291
<ToxicFrog>
(i.e. a nixos-rebuild alone won't do it, you need to start a new login session)
<srhb>
pushqrdx: I don't remember the name of the package though.. dd something?
<{^_^}>
[nixpkgs] @NinjaTrappeur closed pull request #103986 → autogen: make man output reproducible → https://git.io/JkCvf
<pushqrdx>
srhb what is the udev packages, do you mean ddcutil?
<pushqrdx>
ToxicFrog yeah but that isn't the problem i can see i am in the group
<srhb>
pushqrdx: services.udev.packages takes a list of packages and installs their udev rules (if they have any)
<srhb>
Which will eg. set the group ownership of device nodes etc.
<srhb>
pushqrdx: And yes, ddcutil indeed.
euandreh has joined #nixos
nullheroes has quit [Quit: WeeChat 2.9]
<srhb>
pushqrdx: So, adding that package to your udev packages should do the trick.
iH8c0ff33 has quit [Ping timeout: 240 seconds]
<{^_^}>
[nixpkgs] @fabianhjr opened pull request #103987 → crystal: refactor and 0.34 -> 0.35.1 → https://git.io/JkCJe
<{^_^}>
[nixpkgs] @NeQuissimus opened pull request #103988 → nano: Update script, test → https://git.io/JkCJU
pushqrdx has quit [Remote host closed the connection]
<pushqrdx>
srhb running groups i can't see i2c even though it's there in my extraGroups in nix conf
<srhb>
pushqrdx: Did you add your user to it?
<srhb>
And what's the ownership of the device node?
<pushqrdx>
i am not familiar with udev so i don't understand the last question, the answer to the first question is yes
<srhb>
`ls -l /dev/i2c` :)
<pushqrdx>
ls: cannot access '/dev/i2c`': No such file or directory
<srhb>
pushqrdx: Ah, I thought you added i2c_dev to boot.kernelModules last time.
<pushqrdx>
i added it, and i can run sudo ddcutil and control brightness normally
<pushqrdx>
idk how or why /dev/i2c is not accessible or there
<pushqrdx>
even though ddcutil clearly uses it under sudo
<srhb>
Maybe my information is outdated and that's not the right name at all.
<pushqrdx>
it is though, like if i run ddcutil without sudo i get
<pushqrdx>
Open failed for /dev/i2c-1: errno=EACCES(13): Permission denie
<srhb>
Oh, right.
<srhb>
So, ls -l that one :)
<pushqrdx>
ls: cannot access 'dev/i2c-1': No such file or director
<pushqrdx>
:D
<srhb>
You're missing a / at the front there.
<pushqrdx>
fuck me :D
<pushqrdx>
hhh yeah, so crw------- 1 root root 89, 1 Nov 16 21:52 /dev/i2c-1
<pushqrdx>
it's root owning it still
<srhb>
OK, maybe the rules aren't in the right place in that package, hang on.
<srhb>
They're not, they're in share for some reason. You can just set the rule in services.udev.extraRules then: [ ''KERNEL=="i2c-[0-9]*", GROUP="i2c", MODE="0660"'' ];
<srhb>
pushqrdx: And then we should check about that group since it doesn't show up for you: `grep i2c /etc/group`
<pushqrdx>
there supposed to be an = after extraRules before then right?
<srhb>
It's still multiple rules (just separated by newlines)
<pushqrdx>
for the sake of understanding why the == after kernel but not with others?
<pushqrdx>
unless it's a typo ;D
<srhb>
pushqrdx: You'd have to look up udev rules syntax for that. However, it's something like: The == _matches_ things, and the right hand side = sets things
<srhb>
pushqrdx: So, for device nodes matching that glob, set group i2c and mode 0660
<pushqrdx>
ah, makes sense, thanks for explaining though i really appreciate it
<srhb>
sjkelly1: Essentially that first box takes the place of import <nixpkgs> {}, but instead uses builtins.fetchTarball to get an exact revision rather than fetching it off your NIX_PATH
<sjkelly1>
srhb: thanks! I was forgetting "with" at the start.
kim0 has quit [Quit: Connection closed for inactivity]
aasg has joined #nixos
euandreh has left #nixos ["ERC (IRC client for Emacs 27.1)"]
<pingiun>
my python application sends emails, which uses socket.getfqdn() to get the EHLO name. however on nix this resolves to "localhost" which google doesn't like
<pingiun>
how can I make sure socket.getfqdn() returns the actual fqdn instead of localhost on nixos?
johnny101 has joined #nixos
<pingiun>
(this probably has to do with /etc/hosts, but I don't know what to change)
<ToxicFrog>
What does `hostname -f` in the terminal output?
<lordcirth>
pingiun, the simple way is: networking.hosts = { "155.138.154.104" = [ "atlas" ]; }; . Not sure if it's a good way.
vika_nezrimaya has joined #nixos
wpcarro has quit [Read error: Connection reset by peer]
vdemeester has quit [Read error: Connection reset by peer]
wpcarro has joined #nixos
ryjm has quit [Ping timeout: 256 seconds]
vdemeester has joined #nixos
vikanezrimaya has joined #nixos
aristid has quit [Read error: Connection reset by peer]
bradparker has quit [Read error: Connection reset by peer]
mitsuhiko has quit [Read error: Connection reset by peer]
sorear has quit [Read error: Connection reset by peer]
aristid has joined #nixos
bradparker has joined #nixos
mitsuhiko has joined #nixos
mthst has quit [Remote host closed the connection]
ryjm has joined #nixos
sorear has joined #nixos
tokudan has quit [Remote host closed the connection]
tokudan has joined #nixos
cosimone has quit [Quit: cosimone]
vika_nezrimaya has quit [Ping timeout: 256 seconds]
civodul has quit [Quit: ERC (IRC client for Emacs 27.1)]
<{^_^}>
[nixpkgs] @thanegill opened pull request #104006 → pythonPackage.uvicorn 0.11.5 -> 0.12.2 and fix tests on darwin → https://git.io/JkCCv
virus_dave has joined #nixos
inkbottle has joined #nixos
<pingiun>
how do I use the oneOf type in my modules? like how can I check which type was chosen?
zebrag has quit [Ping timeout: 246 seconds]
<clever>
pingiun: it behaves just like a string or int type, and the config value will just return one of the valid values
<pingiun>
ah of course
BlessJah_ has joined #nixos
inkbottle is now known as zebrag
<clever>
and nixos will error out of its not valid, and your nix expr will never see an invalid one
<pingiun>
so I'm using submodules as the subtype, how do I check if a key exists?
<pingiun>
oh there is an operator for that, nvm
BlessJah has quit [Ping timeout: 260 seconds]
stree has quit [Quit: Caught exception]
stree has joined #nixos
<NemesisD>
i've noticed when i enable remote builds that nix seems to just choose one of the machines when i'm building a project and builds there. I expected it would maybe send batches across all the machines and then gather them back up. is this how it's intended to work?
<jackdk>
ajs124: it doesn't need to be a cloud expert; most of the change is pretty sh-elly
<jackdk>
NemesisD: you might need to twiddle the size parameters you tell nix, because it probably thinks that there's capacity on the first build machine
<NemesisD>
jackdk: so for example, my laptop, the place where i'm building locally is an 8 core i7. i have a server that's an 8 core i5. i'm not sure how nix determines the capacity/speed of the local machine. do i need to add it, i.e. '--builders "ssh://my-server - - 8 1; ssh://localhost - - 8 2"? and do i need to explicitly pass a `-j` with a high number so it tries to saturate all builders or should it do that automatically?
<jackdk>
NemesisD: see https://nixos.org/manual/nix/stable/#chap-distributed-builds , in particular point 5, 'The “speed factor”, indicating the relative speed of the machine. If there are multiple machines of the right type, Nix will prefer the fastest, taking load into account.'
<ajs124>
jackdk: my comment was regarding numkem's quest for docs on closureInfo. my bridge is just being slow.
<jackdk>
ajs124: ah ok
<ajs124>
why is it "docs" anyways. documentations? plural?
fendor has quit [Remote host closed the connection]
<jackdk>
NemesisD: I don't know what "taking load into account" means, but I think there are tuning considerations here. let me see if I can find the docs
<jackdk>
NemesisD: oh it's just there too, scroll down to table 17.1 and all ch17 in general
<NemesisD>
jackdk: i'm curious if "prefer the fastest" implies that it will always choose one and only one machine
<Boomerang>
What is the best way to setup the current time in a buildPhase to get reproducible builds? Or is nix supposed to set that for me?
<jackdk>
NemesisD: I don't know, and I'd have to source-dive to find out. since I'm unfamiliar with the nix codebase and don't have time to dig, sorry. Anecdotally, I've found that's seems it will fill the fastest machine before trying to fill the next, but that was for a single machine with a single remote builder and may not be true in general
zupo has joined #nixos
eoli3n has quit [Ping timeout: 264 seconds]
<NemesisD>
jackdk: fair enough. thanks for your help! i'll look into it deeper when i get a chance.
<jackdk>
Boomerang: Is the derivation you're trying to write sensitive to local time? I haven't tripped up on it myself. I would expect patching away dependence on local time to be easier than teaching the clocks to lie?
<Boomerang>
I have managed to make the configuration code not depend on the time, but it still writes files that end up in a tarball and they have the current timestamp
<jackdk>
right. because the build process will change the timestamp of files in $out to 1970-01-01 but not repack the tarball?
<Boomerang>
Yes I think that's the reason. I'm a bit fuzy on the details
<Boomerang>
So the process writes files and then puts them in a tarball without leaving a chance to nix to change their timestampes
<Boomerang>
So either I can lie about the current time to the process or untar, change timestamp, retar?
shibboleth has quit [Quit: shibboleth]
<jackdk>
to be clear, you are generating this tarball as part of your buildPhase?
virus_dave has joined #nixos
<Boomerang>
For more details, I am patching setuptools in nixpkgs. The tarball and some of the files it contains are generated by a call to `setup.py sdist --formats=gztar` in the buildPhase
<{^_^}>
[nixpkgs] @cdepillabout pushed 3 commits to release-20.09: https://git.io/JkClp
<jackdk>
also you'll need to ensure that setuptools is using gnutar not bsdtar and I dunno if that's true on darwin?
<jackdk>
I'm going to have to bow out of this sorry
<Boomerang>
Alright, thanks for your help! :)
asbachb has joined #nixos
<pistache>
what is the best way to be able to use the Nix language with the standard library (`lib`), but without the NixOS modules ?
<pistache>
should I just use disabledModules to disable everything I can find, or is there a better way ?
<pistache>
I'd like to reuse the standard library to define my own modules, and to be able to use some of the nix tooling to evaluate these modules (namely, nix-instantiate)
`slikts has quit [Ping timeout: 246 seconds]
<jackdk>
Boomerang: btw the reason I think you need to force gnutar is that bsdtar doesn't have the --mtime flag
mananamenos has joined #nixos
<Boomerang>
Good to know!
<asbachb>
Can someone try `nix-shell -p meld` and check if ther's any icons.
<mananamenos>
hi, suddenly my laptop doesn't show the correct time on the clock. Im in Madrid, Spain timezone. The clock shows one hour late.
astatine has joined #nixos
<Boomerang>
jackdk: It seems like setuptools does support some of the tar options (like --owner and --group) but not --mtime it seems :(
Dotz0cat has joined #nixos
<pistache>
asbachb: toolbar and tab icons are fine, and I see no icons in the menu
<asbachb>
pistache: What's your window manager?
<pistache>
asbachb: i3
<asbachb>
mh. Maybe I'm facing a wayland issue.
`slikts has joined #nixos
<pistache>
asbachb: I've had some problems with icons in the past, I fixed them by installing some missing packages
<asbachb>
pistache: Do you remeber which packages?
<pistache>
asbachb: I'm looking
<mananamenos>
hmm, so my `sudo hwclock` shows the correct time, but the gnone on nixos show one hour late. What is this issue?
<pistache>
asbachb: I use home-manager to set gtk.iconTheme.package to pkgs.hicolor-icon-theme, and I also have gnome2.gnomeicontheme and gnome3.defaultIconTheme installed
<pistache>
I think I needed those two last packages to fix some missing icons, but I'm not completely sure
<pingiun>
does types.oneOf not work with submodules?