<{^_^}>
[nixpkgs] @veprbl pushed commit from @btlvr to master « inspectrum: add qt wrapper, cleanup (#80144) »: https://git.io/Jvl6A
Emantor has joined #nixos
wildtrees has quit [Quit: Leaving]
xkapastel has joined #nixos
h0m1 has quit [Ping timeout: 272 seconds]
h0m1 has joined #nixos
markus1189 has quit [Ping timeout: 240 seconds]
markus1189 has joined #nixos
nixosnewb has joined #nixos
<nixosnewb>
Does anyone know how to mount an HFS+ volume in nixos? There's an hfsprogs package but no hfsplus package and I tried adding it to boot.supportedFilesystems and it didn't appear to add it as a mount option
<tnks>
I'm realizing that top-level programs built from Haskell source don't seem to be statically compiled. This seems to create download way more than needed. Is this pretty well known/justified?
<mojjo>
Looks like a nix-hash cannot be purely derived from a git commit id. Otherwise there would be no need for `nix-prefetch-git`. Can someone point me to some reference that explains the difference of the two?
<gchristensen>
the nix hash is the hash of the content itself, the git hash is the hash of every commit which lead to this moment
zarel_ has joined #nixos
<mojjo>
Ok, Looks like recently `xyz2nix` CLI tools (based on `nix-prefetch-git`) are getting replaced with just nix expressions using 'import from derivation'.They use `builtin.fetchGit` which only requires a git revision and no nix hash. I was wondering if this is the way to go and if there may be any drawbacks. Basically: Is this strictly pure from the
<mojjo>
nix perspective?
<gchristensen>
,IFD
<{^_^}>
import-from-derivation (IFD) is when you evaluate nix from a derivation result, for example `import (pkgs.writeText "n" "1 + 1")` will evaluate to 2. This is sometimes problematic because it requires evaluating some, building some, and then evaluating the build result. It has been described as "such a nice footgun."
<gchristensen>
it is a nice footgun. not a good idea typically. it can cause evaluation to be much much slower.
zarel has quit [Ping timeout: 265 seconds]
<{^_^}>
[nixpkgs] @bhipple opened pull request #80164 → rust: update docs on legacyCargoFetcher; remove unnecessary defaults → https://git.io/Jvl1J
domogled has joined #nixos
orivej has quit [Ping timeout: 265 seconds]
domogled has quit [Ping timeout: 260 seconds]
<mojjo>
yeah, it's kind of like macro expansion. mhh, if it's only performance I'd not mind. Comparing to: writing a `xzy2nix` cli, maintaining it, integrating it in the build pipeline, storing the generated result.... no?
<{^_^}>
[nixpkgs] @Frostman opened pull request #80165 → Go bump → https://git.io/Jvl1Y
<gchristensen>
if you have 1 thing you're building, okay. if you have 2, I'd rather go without IFD
<mojjo>
ok.. but apart from this. I wonder why `builtins.fetchGit + just branchname` is allowed. with this the expression is not pure anymore. However, how about `builtins.fetchGit + rev`? This should always produce the same output for the same input, thus the expression should be pure, right?
<gchristensen>
builtins.fetchGit isn't IFD
<mojjo>
"apart from this" ^
<bhipple>
mojjo: just branchname is not allowed on pure evaluation mode without a hash
<gchristensen>
bhipple: I'm going to let you take over, and I'm going to sleep :)
<bhipple>
The builtins fetchers are generally just meant for fetching NixPkgs or some bootstrap libs, not for fetching all of your packages.
palo1 has joined #nixos
mexisme has quit [Ping timeout: 265 seconds]
<mojjo>
how to turn on pure eval mode?
<mojjo>
:christensen good night :)
<bhipple>
There's a tradeoff between just specifying some mutable "master" link vs. being really reproducible, where the latter is obviously more robust but may be much more work to specify
<bhipple>
The nix community's response is usually to write codegen tools that compute the immutable versions from the mutable references, and check-in the results of that, so it's deterministic/clear/up-front, but there are some tools people have been experimenting with to try to make that workflow easier
xkapastel has quit [Quit: Connection closed for inactivity]
palo has quit [Ping timeout: 240 seconds]
palo1 is now known as palo
<bhipple>
https://nixos.org/nix/manual/ mentions pure evaluation mode a couple times, though amusingly it doesn't actually say how to turn it on :D
<bhipple>
The flag is just --pure at the cmdline to turn it on
<mojjo>
^ well, who would wonder in a 'purely functional' dependency manager
<bhipple>
the nice thing is it's really scale-able, even with 100K+ packages at a NixPkgs level it's all easy to freeze all the way down. Like a lockfile for your whole OS :)
<bhipple>
The documentation and discoverability is not our strong suit :'(
mauli has quit [Ping timeout: 245 seconds]
v88m has joined #nixos
captn3m0 has quit [Ping timeout: 268 seconds]
captn3m0- has joined #nixos
<mojjo>
`$ nix-build --pure-eval test.nix warning: ignoring the user-specified setting 'pure-eval', because it is a restricted setting and you are not a trusted usererror: access to path '/home/.../test.nix' is forbidden in restricted mode`
<bhipple>
Indeed, because /home/.../test.nix is an impure file specified by filesystem location!
mauli has joined #nixos
<bhipple>
You may be interested in https://www.youtube.com/watch?v=UeBX7Ide5a0 (the Nix Flakes system), which is trying to strike that balance between complete top-to-bottom reproducibility vs. easy-to-update local development while hacking around
<bhipple>
(It's still a WIP and not implemented on master)
<mojjo>
I watched this.. and I'm using `niv` until this is stable.
<mojjo>
but it would be weird to manage all language package deps with `niv`. Maybe if it would support nesting.
<mojjo>
another question: if I use `nix-prefetch-url` what exactly gets hashed? In other words: the hash, is it nix specific or not?
dansho has quit [Ping timeout: 260 seconds]
<bhipple>
It is not nix specific. Generally it's a base32 encoded sha256.
<bhipple>
If the hash type is "recursive", it'll be a hash over the directory contents; otherwise, it's a hash of the file, just like sha256sum would return. You can play with it at the cmdline with `nix-hash --type sha256 --flat <file>` and verify.
<{^_^}>
[nix] @bhipple opened pull request #3359 → doc: mention how to turn on pure evaluation mode in manual → https://git.io/Jvl11
<bhipple>
^ For adding --pure-eval to the nix manual
<bhipple>
with that I'm going to sleep; take care!
bvdw has quit [Read error: Connection reset by peer]
bvdw has joined #nixos
domogled has quit [Client Quit]
<konobi>
Does anyone happen to know of any good articles for nix/nixos that are more narrative heavy? ie: more step-through and have a concrete endpoint. For example, documenting the process of installing, configuring and running/supporting the users perfect desktop setup. I'm looking for pre-existing ones to use as a comparison point, as this is something I'm looking to write myself
<NoctisLabs>
When Nix updates a package does it use deltas or does it download it from scratch?
<clever>
NoctisLabs: each derivation is downloaded in full, but if a dependency hasnt changed, it reuses the copy it already had
jmeredith has quit [Quit: Connection closed for inactivity]
cole-h has quit [Ping timeout: 240 seconds]
alexherbo2 has quit [Ping timeout: 240 seconds]
<NoctisLabs>
Right, that makes sense. I don't see why a dependency would need to be redownloaded. Do you know of any discussion of adding delta-like functionality for decreased bandwidth usage and faster updates? Some of us live in the middle of nowhere and don't get good internet :)
mexisme has joined #nixos
mexisme has quit [Client Quit]
cinimod`` has joined #nixos
cinimod` has quit [Ping timeout: 240 seconds]
mac10688 has quit [Ping timeout: 265 seconds]
<{^_^}>
[nixpkgs] @Ailrun opened pull request #80167 → Update lean to 3.5.1 → https://git.io/JvlMf
mexisme has joined #nixos
mojjo has quit [Ping timeout: 260 seconds]
bhipple has quit [Ping timeout: 240 seconds]
amir has joined #nixos
chimay has joined #nixos
<{^_^}>
[nixpkgs] @gnidorah opened pull request #80168 → Update my packages → https://git.io/JvlMk
kapil_ has quit [Quit: Connection closed for inactivity]
<qasaur>
konobi: there are a few blog posts for mac osx/nix-darwin scattered around the internet, I can think of a few of them that that are pretty narrative heavy
<qasaur>
konobi: Sander van der Burg's blog is also a good place for the kind of articles you are looking for I think: http://sandervanderburg.blogspot.com
linarcx has joined #nixos
<konobi>
qasaur: if you have some links of highlights you could share that'd be appreciated, unfortunately attempting the normal google fu for nix is a bit of a barrier and gives scattershot results =0/
<qasaur>
konobi: haha, yes, I've experienced that as well, there are a lot of nix-related things that aren't indexed by google - i'll see if I can dig up anything in my records
<konobi>
thanks
opthomasprime has joined #nixos
opthomasprime has left #nixos [#nixos]
<linarcx>
Guys, how use my current zsh and all it's theme and configs in nix-shell?
<linarcx>
I want for example have debugPhase and releasePhase too. how do that?
cinimod`` has quit [Ping timeout: 268 seconds]
zupo has joined #nixos
mexisme has quit [Ping timeout: 240 seconds]
<immae>
linarcx: the short answer is `phases = "debugPhase releasePhase";` (you have to specify the standard ones too though I think), the longer answer is to look at setup.sh (pkgs/stdenv/generic/setup.sh) which is the script that does all the job
<immae>
function genericBuild (almost at the bottom)
<linarcx>
immae: Hmm.. but i want to run those command seperately. for example sometimes i want to run debugPhase and sometimes run releasePhase. Do you have any practical sample?
o1lo01ol1o has quit [Remote host closed the connection]
<immae>
Oh it looks like you can simply do postPhases = "releasePhase" and then it will just be appended to the list (as the last stage)
<aanderse>
clever: a while ago you shared a snippet with me on how to have the nixpkgs channel from my nixops box pushed out to all managed servers. works great, thanks! follow up question: is there any way to push out my overlay packages from the nixops box so every managed server can run `nix-shell` etc... on packages in the overlay?
chloekek has joined #nixos
<immae>
aanderse: if your overlays are in /some/path/to/overlays, then you just have to write a derivation containing the files in that path, and then target it where due (usually ~/.config/nixpkgs as user, but I guess there is a system-wide equivalent too)
dingenskirchen has quit [Remote host closed the connection]
<immae>
(look for nixpkgs.overlays in the options, it’s even simpler than what I said above :p )
sb0 has quit [Quit: Leaving]
dingenskirchen has joined #nixos
Chiliparrot has joined #nixos
bvdw has quit [Read error: Connection reset by peer]
bvdw has joined #nixos
iqubic` has joined #nixos
<aanderse>
immae: I'm looking to make packages on my nixops overlay available to all servers i deploy to in tools like nix-shell. I'm not sure that what you're saying accomplishes that?
gnidorah has quit [Quit: Connection closed for inactivity]
iqubic` has quit [Client Quit]
iqubic has quit [Ping timeout: 240 seconds]
iqubic has joined #nixos
<immae>
why wouldn’t it if you add it to the targets’s nixpkgs.overlays configuration?
<immae>
(NB: I never tried that, so the best option is to try it and see if it works)
linarcx has quit [Read error: Connection reset by peer]
linarcx has joined #nixos
<immae>
Ok reading the code I think it may not work properly. However this page lists another option: https://nixos.wiki/wiki/Overlays adding nixpkgs-overlays to NIX_PATH
<{^_^}>
[nixpkgs] @JohnAZoidberg pushed 2 commits to master: https://git.io/JvlQP
domogled has joined #nixos
NobbZ has joined #nixos
<NobbZ>
Hi! my regular user can't use `nix` related commands anymore since a `nixos-rebuild switch` this morning. The user sees a "access denied" to the daemons socket. The socket itself is 666 and owned by root:root.
<{^_^}>
[nixpkgs] @JohnAZoidberg pushed 2 commits to master: https://git.io/JvlQd
<NobbZ>
during a rebuild I see warnings related to my locale beeing invalid, as well as "Failed to start basic.target: Unit -.mount is masked." This repeats for "graphical.target", "local-fs.target", "multi-user.target" and "swap.target".
<{^_^}>
[nixpkgs] @JohnAZoidberg pushed 2 commits to master: https://git.io/Jvl7P
nikola_i has quit [Ping timeout: 240 seconds]
zupo has joined #nixos
<DigitalKiwi>
thefloweringash++
<{^_^}>
thefloweringash's karma got increased to 8
<Orbstheorem>
Hello! Given the path to a derivation and the NixOS config used that built the system where the derivation is found, how can I locate the derivation expresion in Nixpkgs?
kahiru has quit [Ping timeout: 260 seconds]
<tilpner>
Orbstheorem: If you mean "I want the Nix expression that produced this derivation", you can't reliably
<tilpner>
Orbstheorem: nix edit -f '<nixpkgs>' foo will open the expression for foo in <nixpkgs> in EDITOR
<mananamenos>
hi, the command `sudo baobab` show the first screen called devices and locations and states that there are 55GB available from the total of 484GB, however once i click on the system button, i see all the tree of the directory `/` and it states that only 274GB are used. I don't understand then why i only have 55GB left instead of 485GB-274GB?
<Orbstheorem>
tilpner: I don't have nix-edit :o
kahiru has joined #nixos
<tilpner>
Orbstheorem: But your value of <nixpkgs> may have changed in the meantime, and if you don't do any pinning, it may be hard to determine the exact version
<tilpner>
Orbstheorem: nix edit, not nix-edit
<tilpner>
> builtins.unsafeGetAttrPos "hello" pkgs # also this
<tilpner>
But again, different nixpkgs commit, if you don't pin it
xkapastel has quit [Quit: Connection closed for inactivity]
<NobbZ>
Someone able to help with my problem described above?
<Orbstheorem>
tilpner: I know it's from my latest switch because I got it with `nix-store -q --deriver`. Even if it's not reliable I could still use it ^^
* Orbstheorem
has been `ag`'ing nixpkg way too much to find the deriver expression xD
<tilpner>
Orbstheorem: I still use rg -uuui 'foo =' a lot
<Orbstheorem>
I'd like to be able to inject a spy during a `nix-build` to backtrace derivations xD
<Orbstheorem>
Bonus points: By default and garbage-collected with the drv gcRoot :P
fusion809 has quit [Remote host closed the connection]
<mananamenos>
if i build and install a packages from master branch `nix-build -A hello; nix-env -i $(readlink result)`, will it get nix-garbade-collected?
<mananamenos>
does `nix-env -i ..` create a symlink in the directory /nix/var/nix/gcroots?
<gchristensen>
`nix-build -A hello` will create a GC root (./result is a GC root)
<gchristensen>
nix-env -i adds it to the profile, and the profile has GC root as well
<{^_^}>
[nixos-org-configurations] @edolstra pushed 4 commits to master: https://git.io/JvlF8
<mananamenos>
gchristensen: so after building a package from master i should install with `sudo nix-env -i` for it to exist systemwise, and not be able for garbage collection procces, right?
<{^_^}>
[nixpkgs] @dirkx opened pull request #80181 → Update redwax modules to their latest versions. Remove compatibility … → https://git.io/JvlFE
mauli has joined #nixos
<{^_^}>
[nixpkgs] @dirkx closed pull request #80181 → Update redwax modules to their latest versions. Remove compatibility … → https://git.io/JvlFE
<mananamenos>
gchristensen: thank yuou
<gchristensen>
mananamenos: what I mean by that is: if you don't install it, but if you build it and don't delete the ./result symlink, it will not be garbage collected.
<mananamenos>
ok, i'm a bit confused however about packages installation, `nix-env` without sudo seems to install them in user profile. However i use consiguration.nix for all the packages. Now im building lutris package from master. So before installing it, i should delete the one declared in configuration.nix and install the new one in user space with nix-env, right?
<gchristensen>
mananamenos: usually, it is better to use systemPackages for everything
linarcx has quit [Ping timeout: 268 seconds]
ddellacosta has joined #nixos
nikola_i has quit [Quit: Leaving]
<mananamenos>
gchristensen: i could this in my systemPackages `[ emacs, tmux, (import (fetchTarball "channel:nixos-unstable") {}).lutris ]`
ryanartecona has quit [Read error: Connection reset by peer]
mauli has quit [Ping timeout: 272 seconds]
chagra_ has joined #nixos
justanotheruser has quit [Ping timeout: 272 seconds]
ryanartecona has joined #nixos
cole-h has joined #nixos
mauli has joined #nixos
<amanjeev>
can someone please help me installing citrix_workspace? I am looking at https://nixos.org/nixpkgs/manual/#sec-citrix and I run the nix-prefetch-url and get the path and hash. I do not know how to use that information to build citrix_workspace after. Do I need to write a build script? Or do I just use something like nix-build ...?
acarrico has quit [Ping timeout: 265 seconds]
<amanjeev>
Or is there a way I can just add the identifier to environment.systemPackages?
<mananamenos>
i could enter nix-shell of lutris package in master branch. However when i add this (import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/master.tar.gz") {}).lutris to my system packages and try rebuild, i get *error: Package ‘steam’ in /nix/store/bvqgflybq4l06698wk7kk1w1pfksbp92-source/pkgs/games/steam/steam.nix:34 has an unfree license (‘unfreeRedistributable’), refusing to evaluate.*. I have `ni
<mananamenos>
xpkgs.config.allowUnfree = true;` in my configuration.nix. Also steam is my system packages too, and without that line, it install fine
<cole-h>
Curious as to why you're fetching the nixpkgs tarball and not just adding it as a channel?
is_null has joined #nixos
<mananamenos>
cole-h: right, (import (fetchTarball "channel:nixos-unstable") {}).lutris. I was trying with this line first, but it failed in the same way.
<cole-h>
Still curious why you wouldn't use `{ pkgs ? <nixos-unstable>, ... }` (I think that's how it's done) and then get `pkgs.lutris`. Though I don't know the difference between both approaches, this one is what I would have done
<cole-h>
Or even `pkgs = import <nixos-unstable> { };`
opthomasprime has left #nixos [#nixos]
<{^_^}>
[nixpkgs] @dirkx opened pull request #80187 → Two test-cases/example uses for RedWax modules. → https://git.io/JvlNV
<mananamenos>
cole-h: I use system packages from the stable channel, it is the first time i need one from unstable channel
<cole-h>
If you have a reason for not using that shorthand, maybe try adding `{ allowUnfreeRedistributable = true; }` to ~/.config/nixpkgs/config.nix
<{^_^}>
[nixpkgs] @skykanin opened pull request #80188 → colorz: init at 1.0.3 → https://git.io/JvlNw
<cole-h>
IIRC, configuration.nix applies to system packages, and not user packages, etc.
nlbh^ has quit []
kahiru has quit [Remote host closed the connection]
justanotheruser has joined #nixos
ryanartecona has quit [Quit: ryanartecona]
iqubic has joined #nixos
mananamenos has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @jonringer opened pull request #80189 → pythonPackages.babelgladeextractor: disable for python2 → https://git.io/JvlAf
<linarcx>
How prevent packages to remove when we run garbage collector.
<linarcx>
I don't use nixos. i'm on void-linux machine.
<infinisil>
linarcx: They won't be removed if you have them installed
<linarcx>
infinisil: I don't install them actually. I use nix-shell and direnv. and every time i enter in a directory that has a default.nix it'll start to download all items that i specified in `buildInputs`.
<linarcx>
But `nix-collect-garbage` will remove all packages.
<amanjeev>
can I just refer to a package in my store as `environment.systemPackages = with pkgs; [ /nix/store/0n7lnr58a19nwzd7ccq0kvybnk3kylvj-linuxx64-19.12.0.19.tar.gz ... `
<amanjeev>
Trying to install Citrix Workspace app
<ajs124>
amanjeev: why not just use citrix_workspace_19_12_0?
justanotheruser has quit [Ping timeout: 272 seconds]
<{^_^}>
[nixpkgs] @vbgl pushed commit from @marsam to master « dune_2: 2.2.0 -> 2.3.0 »: https://git.io/Jvlpu
<{^_^}>
[nixpkgs] @primeos pushed to release-20.03 « google-chrome*: Add the newly required dependencies »: https://git.io/Jvlpz
Izorkin has quit [Ping timeout: 240 seconds]
cjpbirkbeck has quit [Quit: cjpbirkbeck]
<amanjeev>
ajs124, it actually installed citrix workspace. I now only get errors about missing ICA file or appserv.ini :)
<amanjeev>
thank you for your help. I had no idea why I was making things more complex than they needed to be :D
<amanjeev>
I mean the errors about missing ICA file are legit becaue I do not have those yet. So I am assuming it works.
shibboleth has joined #nixos
<tnks>
I'm confused by `nix-env`. If I run `nix-env --install niv` it builds and installs Niv. If I do it again, it's computes the expression, but does nothing (reusing the cache). But if I do a `nix-collect-garbage`, the dependencies needed to make niv are removed, though the executable is still installed in my profile... however this executable cached in /nix/store is no good it seems, because `nix-env --install niv` just
<tnks>
downloads all these dependencies and rebuilds Niv needlessly. What's going on?
Izorkin has joined #nixos
iqubic has quit [Quit: ERC (IRC client for Emacs 28.0.50)]
<tnks>
For what it's worth... I don't get the same problem with `nix build nixpkgs.niv`. But I was just using `niv-env` to symlink up my profile. And I don't mind the generation-management `nix-env` does. But to use `nix-env` I need to figure out how to not have these cache misses.
<{^_^}>
[nixpkgs] @JohnAZoidberg pushed 2 commits to master: https://git.io/Jvlh8
<niksnut>
it says "*mostly* an alias"
captn3m0 has joined #nixos
<niksnut>
it does more, namely deleting old profile generations
bhipple has joined #nixos
cyphase has quit [Ping timeout: 260 seconds]
<pie_[bnc]>
clever: is it possible to get the attributes of an mkderivation? i want to "override" something using stdenv to use libsForQt5.mkDerivation
knupfer has joined #nixos
domogled has joined #nixos
<clever>
pie_[bnc]: .override can change the args on line 1, so you can swap out the stdenv it receives
<pie_[bnc]>
clever: currently dealing with this mess: https://bpaste.net/H76A im passing CMAKE_CXX_FLAGS but its ignoring it...i managed to get it to build manually outside of nix by addin the -I to some cmake state file earlier though..
<clever>
pie_[bnc]: have you tried clangStdenv?
<pie_[bnc]>
no i havent even heard of that
<pie_[bnc]>
after searching some code , apparently this variant works cmakeFlags = [ "-DCMAKE_CXX_FLAGS=-I${llvmPackages.libclang.out}/include" ];
<{^_^}>
[nixpkgs] @JohnAZoidberg pushed 2 commits to master: https://git.io/Jv8fI
kleisli_ has joined #nixos
<{^_^}>
[nixpkgs] @danbst merged pull request #80179 → nixos/postgresql: Change local auth method from ident to peer → https://git.io/Jvldn
<{^_^}>
[nixpkgs] @danbst pushed commit from @gtgteq to master « nixos/postgresql: Change local auth method from ident to peer (#80179) »: https://git.io/Jv8fm