<johnramsden>
Does anyone know if 'system.autoUpgrade.enable' and 'system.autoUpgrade.channel' can continue to be used if instead of using standard channels, git is being used?
Supersonic112 has quit [(Disconnected by services)]
Supersonic112_ has joined #nixos
Supersonic112_ is now known as Supersonic112
s33se_ has joined #nixos
mbrgm has quit [(Ping timeout: 276 seconds)]
s33se has quit [(Ping timeout: 260 seconds)]
mbrgm has joined #nixos
pxc1 has quit [(Ping timeout: 260 seconds)]
piecesofquiet has joined #nixos
mkoenig has quit [(Remote host closed the connection)]
<piecesofquiet>
anyone know how to disable git using x11-ask-pass or whatever the graphical prompt is? i've got gitMinimal installed but it's still there
Jackneill has quit [(Ping timeout: 260 seconds)]
johnramsden has quit [(Ping timeout: 255 seconds)]
Guest23948723 has joined #nixos
spinus has quit [(Ping timeout: 240 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] aneeshusa closed pull request #27061: groff: Add site.tmac to fix man page coloring (staging...add-site-tmac-for-groff) https://git.io/vQEvg
NixOS_GitHub has left #nixos []
Guest23948723 has quit [(Ping timeout: 260 seconds)]
Guest323789 has joined #nixos
Zer000 has quit [(Remote host closed the connection)]
<Guest323789>
clever: hey I managed to get luks going. realized I needed to make the partition table and just luksFormat sda1 instead. 1 ? though: why does it ask for my password twice on startup? Seems like grub needs it then nixos needs it
ryantrinkle has joined #nixos
<Guest323789>
clever: also wanted to hop on and say thanks for all your help with this!
aneeshusa has quit [(Ping timeout: 248 seconds)]
calvertvl has joined #nixos
jgertm has joined #nixos
zeus_ has quit [(Remote host closed the connection)]
zeus_ has joined #nixos
zeus_ has quit [(Ping timeout: 246 seconds)]
Guest323789 has quit [(Ping timeout: 260 seconds)]
schoppenhauer has quit [(Ping timeout: 260 seconds)]
schoppenhauer has joined #nixos
filterfish has joined #nixos
copumpkin has quit [(Quit: My MacBook Pro has gone to sleep. ZZZzzz…)]
copumpkin has joined #nixos
rootnode has joined #nixos
phreedom has quit [(Remote host closed the connection)]
ryanartecona has joined #nixos
moet has joined #nixos
aneeshusa has joined #nixos
calvertvl has quit [(Quit: leaving)]
ebzzry has joined #nixos
justelex_ has joined #nixos
filterfish has quit [(Remote host closed the connection)]
filterfish has joined #nixos
filterfish has quit [(Ping timeout: 255 seconds)]
justelex_ has quit [(Ping timeout: 260 seconds)]
pxc1 has joined #nixos
filterfish has joined #nixos
filterfish has quit [(Remote host closed the connection)]
filterfish has joined #nixos
filterfish has quit [(Ping timeout: 260 seconds)]
jgertm has quit [(Ping timeout: 276 seconds)]
vaibhavsagar has quit [(Ping timeout: 260 seconds)]
joehh has quit [(Ping timeout: 248 seconds)]
cheshircat has quit [(Quit: WeeChat 1.7.1)]
zeus_ has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] hectorj opened pull request #27162: consul_exporter: init at 0.3.0 (master...prometheus-consul-exporter-init-0.3.0) https://git.io/vQVg5
NixOS_GitHub has left #nixos []
Wizek has joined #nixos
Wizek_ has joined #nixos
Rajsun has quit [(Remote host closed the connection)]
ok2` has quit [(Quit: Getting off stoned server - dircproxy 1.2.0)]
threshold has quit [(Ping timeout: 240 seconds)]
swflint has quit [(Ping timeout: 240 seconds)]
lassulus has quit [(Ping timeout: 240 seconds)]
r0bby has quit [(Ping timeout: 240 seconds)]
sorcus has quit [(Ping timeout: 240 seconds)]
TheAppleMan has quit [(Quit: No Ping reply in 120 seconds.)]
jonafato has quit [(Ping timeout: 240 seconds)]
pSub has quit [(Quit: No Ping reply in 180 seconds.)]
jeaye has quit [(Ping timeout: 240 seconds)]
michalrus_ is now known as michalrus
swflint_away is now known as swflint
teozkr_ is now known as teozkr
r0bby_ is now known as r0bby
cheshircat has quit [(Client Quit)]
jonafato has joined #nixos
cheshircat has joined #nixos
cheshircat has quit [(Client Quit)]
cheshircat has joined #nixos
cheshircat has quit [(Client Quit)]
cheshircat has joined #nixos
kini has quit [(Quit: No Ping reply in 180 seconds.)]
fre has joined #nixos
cheshircat has quit [(Client Quit)]
kini has joined #nixos
cheshircat has joined #nixos
cheshircat has quit [(Client Quit)]
cheshircat has joined #nixos
cheshircat has quit [(Client Quit)]
cheshircat has joined #nixos
lassulus has joined #nixos
nckx has quit [(Ping timeout: 246 seconds)]
hyper_ch has quit [(Ping timeout: 240 seconds)]
cheshirc1 has joined #nixos
cheshirc1 has quit [(Client Quit)]
nckx has joined #nixos
hyper_ch has joined #nixos
marsel has joined #nixos
oahong has joined #nixos
oahong has quit [(Changing host)]
oahong has joined #nixos
k2s has joined #nixos
k2s has quit [(Ping timeout: 260 seconds)]
katyucha has quit [(Killed (verne.freenode.net (Nickname regained by services)))]
katyucha_ is now known as katyucha
eacameron has quit [(Remote host closed the connection)]
katyucha_ has joined #nixos
aneeshusa has quit [(Ping timeout: 255 seconds)]
armijn has quit [(Ping timeout: 240 seconds)]
AndreasLutro has quit [(Ping timeout: 240 seconds)]
armijn has joined #nixos
marsel has quit [(Ping timeout: 248 seconds)]
jeaye has joined #nixos
filterfish has joined #nixos
AndreasLutro has joined #nixos
Itkovian has joined #nixos
MercurialAlchemi has quit [(Ping timeout: 276 seconds)]
fre has quit [(Ping timeout: 240 seconds)]
MercurialAlchemi has joined #nixos
pxc1 has quit [(Ping timeout: 240 seconds)]
leat has quit [(Ping timeout: 248 seconds)]
pxc1 has joined #nixos
cheshircat has quit [(Ping timeout: 260 seconds)]
kini has quit [(Ping timeout: 260 seconds)]
MinceR has quit [(Ping timeout: 260 seconds)]
CcxWrk has quit [(Ping timeout: 260 seconds)]
cheshircat has joined #nixos
elninja44 has quit [(Remote host closed the connection)]
kini has joined #nixos
mudri has joined #nixos
MinceR has joined #nixos
leothrix has quit [(Ping timeout: 260 seconds)]
freusque has joined #nixos
CcxWrk has joined #nixos
adamCS has joined #nixos
leothrix has joined #nixos
<peti>
johnw: Just use "overrideDerivation" to replace the src attribute.
leat has joined #nixos
Itkovian has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
Isorkin has joined #nixos
filterfish has quit [(Remote host closed the connection)]
filterfish has joined #nixos
DrWaste has joined #nixos
hotfuzz_ has joined #nixos
hotfuzz has quit [(Ping timeout: 268 seconds)]
magnetophon has joined #nixos
notapropernickna has joined #nixos
[0x4A6F] has quit [(Ping timeout: 255 seconds)]
MoreTea has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] wheatdog opened pull request #27165: ttf_envy_code_r: init at preview7 (master...ttf-envy-code-r) https://git.io/vQVKt
NixOS_GitHub has left #nixos []
<notapropernickna>
How do I manually remove packages from my nix env? I installed memtest86+ (memtest86plus) and I can't seem to get rid of it
<sphalerite[m]>
Use its name — try nix-env -q to see what name it's installed under
ertes has quit [(Ping timeout: 248 seconds)]
arjen-jonathan has joined #nixos
mudri has quit [(Ping timeout: 276 seconds)]
MercurialAlchemi has quit [(Ping timeout: 240 seconds)]
<MoreTea>
notapropernickna, did you install it with `nix-env`? Or did you add it to your envirionment.systemPackages in /etc/nixos/configuration.nix
<notapropernickna>
with nix-env
<notapropernickna>
memtest86+-5.01
<sphalerite[m]>
And nix-env -e memtest86+ doesn't work?
<notapropernickna>
I installed it with: nix-env -iA nixos.memtest86plus
<notapropernickna>
correct
<notapropernickna>
nor does nix-env -e memtest86plus
<sphalerite[m]>
Yeah, that definitely won't because memtest86plus is the attribute name, not the derivation name. It's annoying to have that distinction
<sphalerite[m]>
What if you use the derivation's full name, i.e. with the version included?
Ivanych has joined #nixos
<notapropernickna>
nix-env -e memtest86+-5.01 does not work
<sphalerite[m]>
What a pain. Worst case you could use nix-env -ir (stuff that you do want installed)
<sphalerite[m]>
Oh plus -A
seanparsons has quit [(Read error: Connection reset by peer)]
<notapropernickna>
Okay that got rid of it. Thanks.
seanparsons has joined #nixos
<sphalerite[m]>
But it's probably worth opening an issue about that on github, because it should definitely be possible to remove it with the actual remove command!
<sphalerite[m]>
My guess is that the + confuses parseDrvName or something, but I don't really know
<MoreTea>
sphalerite[m], I believe that by default, all names passed to nix-env are considered to be regexes
<MoreTea>
so you'll probably have to escape that plus
<notapropernickna>
Yeah I think it's probably the + too. I don't have much of a clue about github, sorry.
<sphalerite[m]>
Aaaaaah of course
<MoreTea>
but indeed, `nix-env -eA $NAME` should remove based on the attribute name
<sphalerite[m]>
So nix-env -e 'memtest86\+'
<MoreTea>
sphalerite[m], haven't tested that ;) but probably.
<sphalerite[m]>
I don't think it's possible to get the attribute name thougj
<notapropernickna>
haha yes that works
<notapropernickna>
I escaped it but I didn't think I needed quotes
<sphalerite[m]>
Hey, matrix ate my backslash
fnlkj has quit [(Disconnected by services)]
fnlkj_ has joined #nixos
<sphalerite[m]>
You do need the quotes I believe. Otherwise the shell will eat the backslash
indi_ has quit [(Read error: Connection reset by peer)]
<sphalerite[m]>
+
indi_ has joined #nixos
<sphalerite[m]>
... Looks like I have a bug report to submit for Riot x)
Itkovian has joined #nixos
jmeredith has quit [(Quit: Connection closed for inactivity)]
<mdash>
Yikes
<mdash>
So \+ won't go through?
<mdash>
Heh wow
<notapropernickna>
Not without quotes
faffolter has joined #nixos
faffolter has quit [(Changing host)]
faffolter has joined #nixos
<dash>
OK that's funny
<dash>
(mdash is my matrix client)
<dash>
it _sends_ it properly but doesn't display it in riot properly
<hyper_ch>
how can I burn a cd in nixos with k3b?
arjen-jonathan has quit [(Quit: WeeChat 1.8)]
<hyper_ch>
it works if I run k3b with gksu
civodul has joined #nixos
koserge has joined #nixos
marsel has joined #nixos
<MoreTea>
hyper_ch, it might work as well if you add yourself to some group (maybe cdrom?)
<hyper_ch>
MoreTea: I am added to the cdrom group
ertes-w has joined #nixos
<MoreTea>
hyper_ch, no clue then, I haven't burned a physical disk in 2+ years.
<hyper_ch>
on rare occasions you have to still burn cds
<sphalerite[m]>
Yeah, I remember having permission issues last time I tried to burn a CD too
<hyper_ch>
gksu works... but it's not a good thing though
hamishmack has quit [(Quit: hamishmack)]
<MoreTea>
sure, but all my machines can boot from USB nowadays.
piecesofquiet has quit [(Quit: leaving)]
<hyper_ch>
MoreTea: well, who said something about a boot cd?
<dash>
piecesofquiet: shrug, if lisp was so great why does your wm crash ;-)
notapropernickna has quit [(Quit: Page closed)]
<piecesofquiet>
dash: because of an unneeded GUI program :P
<piecesofquiet>
i have no idea tbh but it does
cmanert has joined #nixos
cmanert has left #nixos []
<dash>
awesome is pretty good. lua is nearly a lisp ;->
<sphalerite[m]>
piecesofquiet: it's probably set as a result of programs.ssh.enable + services.xserver.enable
<steveeJ>
is there a comfortable way to apply packages to nixpkgs itself?
<steveeJ>
s/packages/patches
<piecesofquiet>
dash: i was using xmonad for about a year, wmutils before that. Wanted to try something different, stumpwm is cool because of live interaction through SLIME.
<piecesofquiet>
sphalerite[m]: that'd make sense, not a fan of that behaviour though, even when it wasn't crashing X
simukis has joined #nixos
<sphalerite[m]>
piecesofquiet: it seems like a sensible default to me. You can still prevent it by not using programs.ssh.enable or obrtridinh it manually
<sphalerite[m]>
Overriding
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
<adisbladis[m]>
I really miss the window management of stumpwm... It's by far the most productive vm I have ever used
eacameron has joined #nixos
<adisbladis[m]>
But it's really buggy with some stuff... And you would have to solve some issues yourself like having a tray
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
zeus_ has quit [(Remote host closed the connection)]
<piecesofquiet>
adisbladis[m]: check out herbstluftwm, it's functions in a fairly similar way. Never found the need for a tray myself
<piecesofquiet>
s/it's/it
<yurrriq>
Does anyone have any tips for getting texlive working with pandoc these days? I'm trying to use xelatex for PDF generation and it's complaining that xparse in l3packages is way too old, etc. When I dove deeper, it looked like there are some known issues wrt (dead) mirrors too. Is anyone working on a solution atm?
<adisbladis[m]>
Right now I don't want to investigate anything that is not on Wayland ;)
eacameron has quit [(Ping timeout: 260 seconds)]
<piecesofquiet>
i'd rather be using EXWM but i haven't been able to get it to function properly since moving to nixos...
hamishmack has joined #nixos
indi_ has quit [(Ping timeout: 260 seconds)]
ris has joined #nixos
pxc1 has quit [(Ping timeout: 248 seconds)]
koserge has quit [(Ping timeout: 260 seconds)]
fnlkj_ has quit [(Read error: Connection reset by peer)]
<steveeJ>
nix complains: can't find file to patch at input line 18
<steveeJ>
when I create the diff using --no-prefix that doesn't help either
pietranera has joined #nixos
piecesofquiet has quit [(Quit: EPIC5-2.0.1[1869] - amnesiac : when you're talking to yourself, and nobody's home)]
<pietranera>
Hi! Is there a way to disable tests when building packages from python36Packages? I have some test failures for some buildInputs but I'd like to see whether my project works anyway.
<pietranera>
Thanks!
<srhb>
pietranera: All packages or specific packages?
<pietranera>
Whatever is easier srhb
<pietranera>
FTR I was trying to build numpy
<pietranera>
I can't remember what failed though
<srhb>
pietranera: You can override specific packages with doCheck = false;
<srhb>
pietranera: I assume you could override all of python36Packages in a similar manner
<pietranera>
OK, I guess I am not sure how I'd to it. I am pretty new to Nix/NixOS
<pietranera>
I have seen the docs about overlays but I'm not sure how to do that.
<srhb>
pietranera: You can see some example overrides in pkgs/top-level/python-packages.nix
<srhb>
pietranera: overlays would be a good way to do this, so you might want to read up on them again :)
<pietranera>
OK, I guess I'd have to create my own nix file, import <pkgs> and do the overlay/override
<pietranera>
I'll try again... thanks :)
<srhb>
pietranera: I can give you an example, give me a few moments though
<pietranera>
(although probably not today)
<pietranera>
that would be great! Thanks!
<pietranera>
^ srhb
<steveeJ>
peti: it was an issue with phases. I specified phases = "patchPhase installPhase", and so the step to change into the src directory was missing
<steveeJ>
for some reason the patch doesn't have any effect though, the lipa mirror is still used for the download attempt
<srhb>
pietranera: It's described in the manual as well :)
<pietranera>
I must have missed that somehow :-/
<srhb>
pietranera: No problem :)
<pietranera>
srhb thanks for your help again!
<srhb>
pietranera: Welcome! :P)
indi_ has quit [(Ping timeout: 240 seconds)]
freusque has quit [(Ping timeout: 255 seconds)]
sigmundv_ has joined #nixos
aminechikhaoui has quit [(Ping timeout: 276 seconds)]
phreedom has joined #nixos
indi_ has joined #nixos
pie_ has quit [(Ping timeout: 240 seconds)]
indi_ has quit [(Ping timeout: 240 seconds)]
DrWaste has quit [(Ping timeout: 246 seconds)]
<srhb>
pietranera: I also tried overriding all attributes, but I got something wrong. Perhaps someone else in the channel can fix my mistake for you, I don't have time to figure it out right now :) http://nixpaste.lbr.uno/vydWmwr3?nix
pie_ has joined #nixos
pie__ has joined #nixos
<FRidh>
srhb: don't install Python packages with nix-env
<srhb>
FRidh: I tried implying that, but perhaps I should have been more specific. :)
indi_ has joined #nixos
moet has quit [(Ping timeout: 240 seconds)]
pie__ has quit [(Quit: Leaving)]
slack1256 has quit [(Remote host closed the connection)]
<gchristensen>
manveru: I'll test that in about 1hr
<niksnut>
okay, I verified that you *can* subscribe without a google account (contrary to their own docs), by visiting https://groups.google.com/group/nix-devel/subscribe, or sending mail to nix-devel+subscribe@googlegroups.com
<cinimod>
Everything built when *not* using nix :(
<gchristensen>
niksnut: nice, but weird they don't document it
<gchristensen>
niksnut: do you mind if I ask around about recommended alternatives?
xadi has quit [(Quit: Leaving.)]
orivej has quit [(Ping timeout: 276 seconds)]
eacameron has joined #nixos
<niksnut>
sure
tmaekawa has joined #nixos
<gchristensen>
cool. I have no objection to google doing it, fwiw
<niksnut>
one alternative is to ditch mailing lists entirely and switch to something 21st century like discourse
<gchristensen>
indeed!
<gchristensen>
I looked at that as an alternate to the wiki, which it was not :) but it did look pretety nice
<MoreTea>
@gchristensen, niksnut now that you're both here, I would like to offer assistance with hydra building PR's, after they're approved by someone.
eacameron has quit [(Ping timeout: 260 seconds)]
<MoreTea>
gchristensen, did you have time to write up what should still be done to make that work?
<gchristensen>
it was what I messaged you: the PR and exact sha of the commit needs to be in the message to build the PR
pSub_ is now known as pSub
pSub has quit [(Changing host)]
pSub has joined #nixos
<gchristensen>
that way hydra doesn't run unreviewed code, without race conditions
<gchristensen>
a second less technical problem is it is hard to tell what changed when building all of nixpkgs on a PR with hydra
<MoreTea>
ok, so the github bot should only listen to message like `@nixbot test $COMMIT_SHA` ?
<gchristensen>
yeah
vaibhavsagar has quit [(Ping timeout: 248 seconds)]
<gchristensen>
and then I don't think hydra can receive specific build shas
<MoreTea>
Ah, _that_'s the problem then.
<gchristensen>
but if it can't, it'll need to have that PR at that commit mirrored elsewhere
<manveru>
for discourse... we probably should update the package :)
<manveru>
ended up running the docker version because i had no time to do that
tmaekawa has quit [(Read error: Connection reset by peer)]
xadi has joined #nixos
tmaekawa has joined #nixos
xadi has quit [(Client Quit)]
<gchristensen>
yeah manveru also discourse's only supported deploy is docker ... :/
<manveru>
i guess they got sick supporting a bunch of distros
tmaekawa has quit [(Read error: Connection reset by peer)]
<gchristensen>
"Know your project, and consider whether or not it’s the type of project that would benefit from discussions. Some signs to look for: Your issue tracker is being crowded with feature requests and “bikeshed discussions”. Users of your project seek out development advice from other users. project gives way to new projects built on top of it that can be shared and talked about." check, check, check ;)
tmaekawa has joined #nixos
reinzelmann has joined #nixos
indi_ has joined #nixos
indi_ has quit [(Remote host closed the connection)]
cpennington has joined #nixos
<manveru>
gchristensen: lemme know how it works for you... i made a bit of a controversial decision to cache gems in ~/.cache/bundix to speed things up a lot :)
iyzsong has joined #nixos
snikkers has joined #nixos
seniorivn has joined #nixos
Itkovian has quit [(Ping timeout: 255 seconds)]
<niksnut>
gchristensen: yeah, they did say that
<cinimod>
If I build my package using cabal all is fine but if I go into a nix-shell and build it then it fails to build
<cinimod>
I wonder what I am doing wrong
ruben has joined #nixos
<cinimod>
clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation)
<cinimod>
`cc' failed in phase `Linker'. (Exit code: 1)
<ruben>
hi, i'm using nixos with the i3 window manager and I currently fail to configure i3blocks
<ruben>
can someone point me into the right direction?
<cinimod>
I don't even know why nix wants to compile C code
<cinimod>
There is none in my package
<ruben>
I have to specify script locations in ~/.i3blocks.conf but I don't know how to point to the right location
<seniorivn>
looking fora solution for the case: base system installed on usb stick, apps that will be used only on particular machines, stored on those machines disks. is it simple with nixos?
<gchristensen>
cinimod: probably a dependency of one of your packages
* hyper_ch
points to the left
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] edolstra pushed 2 new commits to master: https://git.io/vQwfK
<NixOS_GitHub>
nixpkgs/master 57a0224 Robert Vollmert: nix: short TMPDIR for tests on Darwin...
<LnL>
ToxicFrog: can't you just define a unit that's not started by anything
reinzelmann has quit [(Quit: Leaving)]
indi_ has joined #nixos
ng0 has quit [(Ping timeout: 248 seconds)]
<ToxicFrog>
LnL: the problem is that I want them off by default, but individual users can enable them per-user with `systemctl enable`
<ToxicFrog>
I don't want them to have to be started manually per-user with `systemctl start` and I also don't want them to start up for all users as soon as the user session is created.
<LnL>
if there's no wantedBy/requires it won't get started
<LnL>
unless I'm missing something
<ToxicFrog>
If there's no wantedBy you can't `systemctl enable` it either because systemctl doesn't know what target to link it to.
<ToxicFrog>
What I am trying to create here is a user-unit that is WantedBy=default.target but defaults to disabled, which is easy to do when writing the unit file by hand but apparently completely impossible in configuration.nix.
<ToxicFrog>
I tried using environment.etc to create it by hand, but I get: `ln: failed to create symbolic link '/nix/store/mhd3ngmixmmxzjw5xn970jkdmcb65pcr-etc/etc/systemd/user/discord-ircd.service': Permission denied` when doing nixos-rebuild
ng0 has joined #nixos
nh2 has joined #nixos
lvernschrock has left #nixos []
<ToxicFrog>
I give up, I'll just manually copy the unit files into ~/.config/systemd/user/ for everyone who wants them
ryantrinkle has quit [(Ping timeout: 240 seconds)]
darlan has joined #nixos
<gchristensen>
manveru: oops I forgot to test until now ...
<MoreTea>
but it's a bit dry, and light on actual end-to-end examples.
nh2 has joined #nixos
<jons>
Thanks! Am looking at it
<MoreTea>
but do bother us here if you're stuck!
<MoreTea>
nix is awesome, but it's a challenge to get started & gather all the information you need.
<gchristensen>
manveru: does the dependencies output change how nixpkgs handles it?
<manveru>
gchristensen: yeah, those gems will have their dependencies available at build time
<manveru>
sometimes that's neccesary
<gchristensen>
it wasn't like that before?? :o
<ij>
Does nix register files that a package produces?
<manveru>
:)
<manveru>
gchristensen: if you didn't notice, it wasn't needed for you
<manveru>
but it won't hurt
<exarkun>
ij: What do you mean by "register"?
cpennington has joined #nixos
<ij>
Pacman knows what each package provides.
<MoreTea>
ij, in which way? in nix packages output there files to just one directory in /nix/store/xxxx
<exarkun>
Sure, Nix knows that.
oahong has quit [(Ping timeout: 248 seconds)]
<ij>
How do files appear in /etc? It's outside of /nix/store.
<exarkun>
Same way anything appears outside of /nix/store, symlinks
<avn>
ij: symlinked by activation script, and it not nix, is nixos specifics
<exarkun>
Hey, python testtools has a requirements.txt that includes fixtures. python fixtures has a requirements.txt that includes testtools. For these packages, pypi2nix creates a cyclic definition that can't be resolved. is there some way to work around this?
<ij>
So packages have to take care to remove /etc symlinks, if they've made any, because nix doesn't take care of that?
<exarkun>
no
<exarkun>
packages don't manage the symlinks
<exarkun>
the nixos toolchain does
<gchristensen>
ij: is there a more specific question you're trying to ask in a vague way? or: is there a problem you're trying to solve
<gchristensen>
?
<exarkun>
garbas: ^ ?
<manveru>
ij: they're tracked by the environment.etc configuration of nixos
<manveru>
so you can add them there, if you remove the config they'll be removed too
<manveru>
files that aren't tracked by nixos, like /etc/resolv.conf won't be touched
oahong has joined #nixos
oahong has quit [(Changing host)]
oahong has joined #nixos
<garbas>
exarkun: you have to resolve this cyclic deps manually in the requirements_override.nix
<garbas>
exarkun: in your case you would have to filter out testtools from fixtures package
<ij>
gchristensen, Sort of, but I'm more interested in how things work now for the sake of understanding.
* garbas
looks for an example
freusque has quit [(Ping timeout: 240 seconds)]
<exarkun>
garbas: That's what I thought but then fixtures isn't installable.
<exarkun>
Could not find a version that satisfies the requirement testtools>=0.9.22 (from fixtures==3.0.0) (from versions: )
<garbas>
exarkun: yes, that is why you have to do this manually in from case to case
<MoreTea>
ij, do you have nixos running?
<exarkun>
Okay, I guess an example would be helpful.
<exarkun>
Does it include applying a patch to the source package?
<MoreTea>
that's the script that does the magic of switching from one "version" of nixos to another.
<MoreTea>
the path /var/run/current-system is just a symlink
<exarkun>
garbas: That example looks like what I did (except I did it more stupidly by just writing out the whole propagatedNativeBuildInputs list with testtools omitted)
<exarkun>
If the fixtures wheel declares it depends on testtools and testtools isn't part of the fixtures closure then how could the wheel be installable?
<exarkun>
If I use python.overrideDerivation to tweak one package's expression then I can remove the cycle that package participates in (just by breaking it by taking the next package in the cycle out of propagatedNativeBuildInputs).
<manveru>
no
<exarkun>
If I try to use python.overrideDerivation to tweak the expressions of _two_ packages in the cycle then the cycle returns. Even if the 2nd tweak doesn't actually contain any overrides.
<exarkun>
What?
<gchristensen>
I think that was to me
<manveru>
gchristensen: you can skip the truncate and bundle install part
<manveru>
removing the .bundle dir is good practice
<manveru>
but you should only need to run bundix now
<exarkun>
I could try cargo culting that but I'm probably just doomed to more failure without a more complete understanding of how this works
<avn>
exarkun: I use pyramid+cornice -- and more modern versions then in stable...
<exarkun>
which I'm tired of trying to achieve so possibly it's time to just move on
snikkers has joined #nixos
ebzzry has quit [(Ping timeout: 248 seconds)]
<exarkun>
avn: What do you do when you have conflicting versions of dependencies?
<avn>
packageOverride = { } set used to override all dependencies in myPythonPackages (so even you use any package use tdbus (in example), it will be built with overriden version)
<kuznero>
I just made `docker.nix` and `shell.nix` that I use to build docker image for a very simple haskell application (calling a bunch of external processes + serves RESTful server with scotty). Why final image size is 1,67G?
<exarkun>
kuznero: I dunno I am currently in the process of switching my docker image builds from nix to Dockerfile.
<kuznero>
exarkun: why so? also too big images or some other reason? I am investigating if it worth investing into it currently...
JagaJaga has joined #nixos
<exarkun>
it's too hard for me to maintain the nix expressions that build the image, the expressions are too fragile, too verbose, there are too many toolchain conflicts between nix and the software being packaged
<exarkun>
The idea of using nix to build docker images seems wonderful to me. The reality has not lived up to this in my experience.
<kuznero>
exarkun: I build my projects in nix too, so, should be fairly logical to use docker images built by nix
<exarkun>
I wish you well.
Neo-- has joined #nixos
<kuznero>
thanks, but still image sizes are a lot lot more than I expected
<exarkun>
I would expect that you can get the image sizes down as small as you like, if you just put enough effort into minimizing unnecessary dependencies for your derivations.
<exarkun>
But the build time will probably remain higher for nix than with with a Dockerfile unless someone re-designs how dockerTools works
<exarkun>
And the resulting images will require more bandwidth to transfer because they have a single(-ish) large uncacheable layer instead of many small cacheable layers (which is what Docker is optimized for).
<kuznero>
Hm, I cannot see how I can cut it, these are the only haskell packages I require: aeson base filemanip filepath optparse-applicative process scotty text time timeit wai-extra.
<exarkun>
I don't know enough about Haskell or how Haskell is packaged in Nix to know where to look to cut things down.
<kuznero>
I will try to build a simple no dependency tool and package that and see the image size
<exarkun>
Are you putting a single self-contained haskell binary in there or what?
<exarkun>
It seems like a good Haskell program derivation would just be a single self-contained executable.
<kuznero>
I don't know. I think it is dynamically linked.
<exarkun>
And then the size in nix/docker would be no larger than the size of the executable (and then it's just a Haskell problem to solve, if it's too large)
<disasm>
kuznero: it might make sense docker run one of these large images and du -k the /nix/store to find out where the problem is.
indi_ has joined #nixos
<kuznero>
disasm: not sure I follow, can you please elaborate a bit?
<disasm>
kuznero docker run -it mydockerimage /run/current-system/sw/bin/bash then cd /nix/store && du -sk *|sort -n
<kuznero>
Ah, thanks will do
<disasm>
that might need to be /sw/bin/sh if bash isn't installed in the container. I'm not sure if that's a default or not.
indi_ has quit [(Ping timeout: 248 seconds)]
<kuznero>
wow, empty project without a single extra dependency is 1.5G :( maybe nix-build is taking everything I have installed related to haskell globally in my system?
<exarkun>
Yea sounds like you've got some extra stuff in your closure.
<kuznero>
It looks like it has ghc and ghc-doc that takes up a lot of space
<avn>
nh2: possible qt5.callPackage propagate some default arguments (like qtbase)
<exarkun>
kuznero: Yea. And I don't think you actually want ghc in your Docker image.
<exarkun>
kuznero: Nor gcc, probably?
<kuznero>
Correct,
<disasm>
ah k, so xczvw3rlvr1ind8s88i7yx0vasl4gzxm-ghc-8.0.2 is your 1+ GB
<exarkun>
So you just need to figure out why those are being included and take them out ;)
<kuznero>
exarkun: easy to say :) but how do I do that?
<exarkun>
Maybe the Nix haskell packaging docs explain more about what the APIs you're using do?
jensens has quit [(Ping timeout: 255 seconds)]
<exarkun>
And this is pressing up against the limits of my nix experience now. I do know that there's commonly this idea of build-time-stuff vs run-time-stuff but it's not expressed exactly like that.
<exarkun>
(and maybe thinking of it like that is wrong, I'm not sure)
<kuznero>
In my system-wide setup I override to use ghcWithHoogle for a number of packages. Can that affect it somehow?
<exarkun>
no clue
<exarkun>
another thing you can probably do is go read the derivations?
<exarkun>
you probably have some .drv files in /nix/store
<exarkun>
maybe you have one for monitor-0.0.1.0
<nh2>
avn: do you know what the "correct" nix-shell invocation would be?
<kuznero>
exarkun: I need to run now, but will get back with this later :) Thanks for help!
<exarkun>
okay good luck bye
<avn>
nh2: nope, I never developed qt stuff myself only build/fix packages in nixpkgs
kuznero has quit [(Quit: Page closed)]
freusque has quit [(Quit: WeeChat 1.7.1)]
<nh2>
Also I find that when I do `-p qt5.qtbase` it works the first time, but the second time it doesn't, dies with "__nix_qt5__/bin’: File exists", and indeed I find that it drops a `__nix_qt5__` dir into my current directory?! I imagine nix-shell shouldn't put anything into my current dir
exarkun has left #nixos []
civodul has quit [(Read error: Connection reset by peer)]
<jophish>
clever: are you about?
<jophish>
I've run into some problems building qemu-user
civodul has joined #nixos
cinimod has joined #nixos
<jophish>
removing that -static seems to get things working again
johann__ has quit [(Quit: Leaving.)]
pxc1 has joined #nixos
JagaJaga has quit [(Ping timeout: 240 seconds)]
civodul has quit [(Read error: Connection reset by peer)]
pxc1 has quit [(Ping timeout: 260 seconds)]
civodul has joined #nixos
snikkers has quit [(Quit: Lost terminal)]
tvon has joined #nixos
nh2 has quit [(Read error: Connection reset by peer)]
<jophish>
I've run into a very similar issue as last time, but I can't remember how I solved it
nix-gsc-io`bot has quit [(Client Quit)]
trikl[m] has joined #nixos
<jophish>
I dind't mention the solution on ##nixos :(
tmaekawa has quit [(Read error: Connection reset by peer)]
<jophish>
ah, I mentioned it in binutils!
<jophish>
<jophish> Turns out `uname -m` wasn't returning what I was expecting. All sorted now!
<jophish>
oh, I think I know what's going on
<jophish>
nix is trying to do a native build
tmaekawa has joined #nixos
jons has joined #nixos
<myguidingstar>
is this the right way to use nixops mount? nixops mount -d my-project one-of-the-machines ~/my-dir
<jophish>
so it's not using my special patched uname
<myguidingstar>
I got "error: [Errno 2] No such file or directory" for the above command
<jophish>
Dezgeg: did the uname stuff ever get into master?
<myguidingstar>
and I'm pretty sure ~/my-dir exists
<jons>
Following the example at http://nixos.org/nix/manual/#chap-writing-nix-expressions to build hello package. But getting error "error: cannot auto-call a function that has an argument without a default value (‘stdenv’)" with command `nix-build -A hello`. How to fix it?
<myguidingstar>
I run the command in the same directory where "nixops ssh -d ..." works
<jons>
the default.nix is exactly as Example 14.1.
<jophish>
oh, but I *am* passing system in
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] NeQuissimus pushed 1 new commit to master: https://git.io/vQwPV
<NixOS_GitHub>
nixpkgs/master 968e0b2 Tim Steinbach: linux-copperhead: 4.11.8.a -> 4.12.b
NixOS_GitHub has left #nixos []
Sonarpulse has joined #nixos
<jophish>
ah, so something did change between April 3 and April 24
eacamero_ has joined #nixos
arianvp2 has quit [(Quit: arianvp2)]
eacameron has quit [(Ping timeout: 255 seconds)]
tvon has quit [(Quit: System is sleeping...)]
<jophish>
oh, I was using a broken version of binutils
<myguidingstar>
anyone? :'(
<jophish>
Although, I can't say I'm happy with 'url = file:///nix/store/2bc6v8nlg9flynsyfzm1pg7x5kxwk35p-busybox-1.26.2/bin/busybox;'
<jophish>
what was I thinking
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Ericson2314 opened pull request #27179: Define {build,host,target}Platform in stdenv (master...platforms-from-stdenv) https://git.io/vQw1I
NixOS_GitHub has left #nixos []
ixxie has joined #nixos
<Sonarpulse>
jophish: binutils problems?
<sphalerite[m]>
jons: you'll want to use pkgs.callPackage on your function
indi_ has joined #nixos
ixxie has quit [(Quit: Lost terminal)]
Tucky has quit [(Quit: WeeChat 1.9)]
k2s has joined #nixos
indi_ has quit [(Ping timeout: 260 seconds)]
marsel has quit [(Ping timeout: 255 seconds)]
phinxy has joined #nixos
ertes-w has quit [(Ping timeout: 240 seconds)]
tvon has joined #nixos
Itkovian has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<jophish>
Sonarpulse: all fixed
<jophish>
I cherry-picked something poorly
<Sonarpulse>
jophish: cool
<Sonarpulse>
as long as I didn't break something else :)
<jophish>
I sent you some messages on slack about my ghc woes :)
<jophish>
nah, that problem was all me
<jophish>
to cut it short: stripping is broken for cross compilatioj
ryanartecona has quit [(Quit: ryanartecona)]
vaibhavsagar has quit [(Ping timeout: 248 seconds)]
<myguidingstar>
but whenever I start it with `systemctl status arangodb-v3`, Internet in the machine will stop working (eg curl commands)
<myguidingstar>
I have no idea why
impredicative has joined #nixos
<disasm>
myguidingstar: I'm guessing same thing if you run the ExecStart manually?
<myguidingstar>
disasm: I'll try now and give you what happens
<myguidingstar>
btw, I tried to start & stop the service with systemctl several times, and internet always works again after the service stops
darlan has joined #nixos
civodul has quit [(Quit: ERC (IRC client for Emacs 25.2.1))]
<jophish>
clever: do you think it would be possible to write a small "getting started" file for not-os. I've not found it obvious how to go from the repo to an sd card image
<impredicative>
I thought it was a variable introduced by `mkDerivation`
<impredicative>
But this is in a let block outside the scope of `mkDerivation`
<impredicative>
Are `let` blocks inlined before variable expansion?
<gchristensen>
impredicative: $out is defined by Nix
tvon has quit [(Quit: System is sleeping...)]
<impredicative>
gchristensen: In _any_ scope? It's just magical?
<gchristensen>
in a derivation
<impredicative>
Right, but that's what I'm saying
<impredicative>
This isn't _in_ a derivation
<gchristensen>
well there $out is just a string
<gchristensen>
"--prefix=$out" and it is passed in to a derivation, where it executed as part of a shell script where $out is set
justanotheruser has joined #nixos
<impredicative>
I see. So if a variable isn't bound, it's just treated as a string?
<gchristensen>
no, "$out" isn't interpolating to interpolate it would have to be "${out}"
<gchristensen>
if a variable isn't bound it is an error
Ralith_ has quit [(Ping timeout: 268 seconds)]
<gchristensen>
nix-repl> "$out"
<gchristensen>
"$out"
<gchristensen>
nix-repl> "${out}"
<gchristensen>
error: undefined variable ‘out’ at (string):1:4
justanotheruser has quit [(Client Quit)]
<impredicative>
Hmm. But inside a derivation we use `$out` instead of `${out}`. In this case it's just magical?
<avn>
$out is not nix variable, is shell variable set by nix when builder invoked
<gchristensen>
no, the variable still doesn't exist, it is a shell variable
<impredicative>
Ah, I see
justanotheruser has joined #nixos
<sphalerite>
Isn't it technically an environment variable?
<impredicative>
That makes sense
justan0theruser has quit [(Ping timeout: 260 seconds)]
<impredicative>
When there are multiple outputs, nix sets a shell variable for each of them? E.g. `outputs = [ "dev" "foo" ]`, nix will set a shell variable for each binding to a different dir?
<gchristensen>
yeah
<impredicative>
OK, cool. And the ${outputDev} etc _nix_ vars are just defined as convenience for generic builders to fall back to other outputs if not all are defined...
<impredicative>
That makes a lot more sense, thanks
<gchristensen>
cool :) super glad
<gchristensen>
here I am grepping nix's source for `out` ... :)
<manveru>
guess in a few years most of our services will be docker :(
<manveru>
who wants to make docker2nix?
<LnL>
the more I use docker the less I like it
<manveru>
indeed
<myguidingstar>
manveru: and in that future nixos-ish devops tools will be written in javascript :)
indi_ has quit [(Ping timeout: 248 seconds)]
<manveru>
...
<avn>
boo
<avn>
I prefer to have toolset written in haskell
<manveru>
oh well, there are enough crappy ruby apps around to maintain to last me until i'm 100
Wizek_ has quit [(Ping timeout: 240 seconds)]
Wizek has quit [(Ping timeout: 276 seconds)]
<manveru>
i just love beating stuff into submission with nix
<myguidingstar>
:)
<manveru>
"you wanted to make a network request during build? I DON'T THINK SO!"
arianvp2 has joined #nixos
arianvp2 has quit [(Client Quit)]
arianvp2 has joined #nixos
<manveru>
LnL: i'm just a tiny little bit worried about how insecure docker makes things
<impredicative>
gchristensen: Ah, thanks! That makes sense
<manveru>
LnL: usually you can gain root on a box using docker within seconds
<manveru>
given that you can access the socket
mudri has quit [(Ping timeout: 240 seconds)]
<LnL>
manveru: yeah, I've used it to recover the admin account on machines more then once
arianvp2 has quit [(Client Quit)]
<clever>
sphalerite: not yet, i'm currently trying to make ALL of haskellPackages obey $out and $lib!
<sphalerite>
nice
<clever>
jophish: yeah, the rpi image stuff is a bit of a mess right now, it was a mix of stuff from outside of the repo and i just commited it to make a backup
<manveru>
btw, any of you guys used nix with arduino?
<clever>
sphalerite: the propagated-native-build-inputs look like it might cause a problem, $lib depends on $out, and due to propagated-native-build-inputs, $out also depends on $lib
<impredicative>
clever: Ah, I believe I might be doing the same thing
<clever>
sphalerite: do you know if nix excludes that file at all?
<manveru>
would it be easy to cross-compile stuff with it?
<sphalerite>
excludes from..?
<clever>
sphalerite: the cycle detection and runtime build graph
<sphalerite>
Oh, definitely not
<sphalerite>
It wouldn't really make sense, since it's arguably an even stronger dependency than simple reference
<clever>
it might be simpler to move the datadir then then libdir
<clever>
lib depends on out, and out depends on lib
danl1240 has joined #nixos
ris has quit [(Ping timeout: 255 seconds)]
arianvp2 has joined #nixos
<sphalerite>
why does lib depend on out?
justelex_ has joined #nixos
<clever>
the package contains references to its datadir
<disasm>
myguidingstar: I don't know... That route table looks normal to me.
Taneb has joined #nixos
<disasm>
myguidingstar: did you check if it's a dns issue or route issue when things break? Also, can you traceroute at all or does it stop at the host?
<sphalerite>
clever: I'd think data should be separate then, with lib -> data and out -> {lib, data}
<sphalerite>
no?
<clever>
sphalerite: yeah, i'm splitting the data off now
<clever>
sphalerite: it was also fun to even be able to test changes to generic-builder.nix, nixpkgs wanted to rebuild 2 GHC's for every change
<johnw>
I've noticed, as of a few days ago, that nothing built with Nix plays well with my terminal anymore. I have TERM=xterm256-color, but every command I run that needs terminal capabilities says "unknown". So, `less` built by Nix fails, but /usr/bin/less works fine. This is on Darwin.
<LnL>
oh :/
<clever>
manveru: also, toString doesnt do the same thing as "${x}"
<LnL>
johnw: on master?
<johnw>
yes
<manveru>
clever: but it at least tries to resolve the path
<johnw>
I first noticed it with watch, then git, the nix-env, then less
sary has quit [(Ping timeout: 260 seconds)]
<clever>
nix-repl> "${.................../.}"
<clever>
error: getting attributes of path ‘/root/...................’: No such file or directory
<manveru>
yeah
<clever>
manveru: this form will try to actualy resolve it into an absolute path, and then fail
<manveru>
so it's the same as readFile?
<clever>
after making it absolute, it will import a snapshot of that file/dir into /nix/store/
<clever>
and return that immutable path
stanibanani has quit [(Ping timeout: 248 seconds)]
<myguidingstar>
what's the right syntax for nixops mount?
xadi has quit [(Quit: Leaving.)]
<myguidingstar>
nixops mount -d my-project one-of-the-machines ~/my-dir → this doesn't work for me
xadi has joined #nixos
<myguidingstar>
got "error: [Errno 2] No such file or directory" though ~/my-dir does exist
<clever>
myguidingstar: try prefixing the entire command with
<clever>
strace -f
zeus_ has quit [()]
acowley_away is now known as acowley
<myguidingstar>
thanks clever
xadi has quit [(Client Quit)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] globin pushed 4 new commits to openssl-1.1: https://git.io/vQwjM
<NixOS_GitHub>
nixpkgs/openssl-1.1 101ca5f Robin Gloster: Merge remote-tracking branch 'upstream/master' into openssl-1.1
<NixOS_GitHub>
nixpkgs/openssl-1.1 6b05dd1 Robin Gloster: mariadb: fix lib cycle and hash
<NixOS_GitHub>
nixpkgs/openssl-1.1 f1cf426 Robin Gloster: rdesktop: add patches to fix build with openssl 1.1
NixOS_GitHub has left #nixos []
sary has joined #nixos
jonte has joined #nixos
ryanartecona has joined #nixos
johann__ has quit [(Quit: Leaving.)]
<clever>
sphalerite: aha, and --datadir depends on $lib because of the html docs
<clever>
sphalerite: and $lib depends on $data
<LnL>
johnw: works fine for me
<sphalerite>
>_>
<sphalerite>
clever: but using removeReferencesTo to break the lib dependency on the data should be ok, right?
<sphalerite>
sorry, to break the dependency *on* lib *in* data
<clever>
sphalerite: and on closer inspection, i think this html is the syntax highlighted version of the generated Paths_<name> module
<clever>
sphalerite: which is designed to have paths to everything
<sphalerite>
Hah
<sphalerite>
but that should be ok to remove the refs from, right?
<clever>
yeah
<clever>
yeah, out depends on lib (via nix-support), lib depends on data (it uses it), and data depends on everything (gotta document all the things!)
<avn>
clever: split docs from data?
nix-gsc-io`bot has joined #nixos
<myguidingstar>
so I installed inetutils to my GCE instance to have routetrace... and the problem disappeared!!!
<pierron>
Is there a way for me to find a link such that a non-nix user can download the glibc and reproduce a bug?
<sphalerite[m]>
I keep getting notifications on my phone for the messages here which I've already read on my laptop
<niksnut>
pierron: no, everything is on cache.nixos.org
<gchristensen>
speaking of store queries, is there a way to determine how much a space a *nix-shell* requires?
<myguidingstar>
hmm, I was wrong. The problem is still there
fnlkj has quit [(Quit: ?)]
<myguidingstar>
maybe I should try core's rkt in place of docker to see if it works
hellrazor has joined #nixos
<niksnut>
pierron: if you want a closure, that's possible with nixUnstable, e.g. NIX_REMOTE=http://cache.nixos.org/ nix-store --export $(NIX_REMOTE=http://cache.nixos.org nix-store -qR /nix/store/yaa0jxdjdmc4jvdhs1zb6wfpq416msaf-gccmakedep-1.0.3) > foo.export
<clever>
2017-04-25 16:15:07< bdimcheff> this riot thing is interesting but yeah it won't be upstreamed
<clever>
sphalerite: fun..., "--datadir=$data/share/${ghc.name}/${pname}-${version}" puts the html docs into that dir
<trikl[m]>
Haven't tried that one out
<clever>
sphalerite: but "--datadir=$data/share/" puts the html docs into $out...
<sphalerite>
wat
<clever>
yeah
<trikl[m]>
sphalerite: AFAIU the desktop client reuses the device ID
<bdimcheff>
clever: what's this now?
<bdimcheff>
oh you were just quoting me?
<clever>
bdimcheff: yeah, trikl[m] was asking about riot
<sphalerite>
trikl[m]: surely the web one does too if you don't stop it from doing so
<bdimcheff>
i guess i don't get why it can't be upstreamed if atom, slack, and a myriad of other electron apps have been
jmeredith has joined #nixos
<sphalerite>
trikl[m]: but it does need somewhere to store it, like localStorage or cookies, which I'm guessing one (or several) of your add-ons will block it from using.
<bdimcheff>
last i checked there's not a deterministic build process for electron apps and so people have been just using the binary distributions
<sphalerite>
electron is kind of insane anyway IMHO
<pierron>
niksnut: Thanks, I will keep that in mind.
watersoul has quit [(Ping timeout: 240 seconds)]
<trikl[m]>
sphalerite: I'll check that
boomshroom has joined #nixos
<boomshroom>
Hey, guys!
<sphalerite>
hm, the matrix/irc bridge seems to have pretty high latency
<sphalerite>
hi boomshroom !
<disasm>
myguidingstar: so first I'd check dig google.com @8.8.8.8 if that fails, then ping 8.8.8.8 if that fails then traceroute 8.8.8.8
Gravious_ has joined #nixos
watersoul has joined #nixos
<boomshroom>
I'm trying to package a rust crate so I can use it in a nix-shell, but when I try to build it, I get `mv: missing destination file operand after '/nix/store/${snip}-jvm-assembler-0.0.1-fetch/registry/cache/HASH'`
watersoul has quit [(Read error: Connection reset by peer)]
<boomshroom>
I'm embedding the derivation directly in my shell.nix with pkgs.rustPlatform.buildRustPackage rec { ... }
cpennington has joined #nixos
jbaum98 has joined #nixos
<clever>
sphalerite: found the cause, "--datadir=$data/share/fooghcbar" puts the docs in the datadir
<sphalerite>
I don't get it
<clever>
if it detects ghc in the datadir, it obeys it for the html docs
watersoul has joined #nixos
<clever>
if it doesnt detect ghc, it puts it into $prefix
<boomshroom>
Alternatively, does anyone know of a good jvm bytecode dissembler? I want it print all the contents of the class file with minimal processing. (Just enough to not have to read the hex values.)
MercurialAlchemi has quit [(Ping timeout: 248 seconds)]
Filystyn has joined #nixos
Filystyn has quit [(Changing host)]
Filystyn has joined #nixos
<clever>
sphalerite: and for extra mess, it always puts it into a x86_64-linux-ghc-8.0.2 subdir of the dir i specified
<clever>
sphalerite: so it must be under ghc-802/x86_64-linux-ghc-8.0.2
watersoul has quit [(Read error: Connection reset by peer)]
<sphalerite>
the joys!
<clever>
but, why is cabal being so unpredictable?
indi_ has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] 0xABAB opened pull request #27186: nfs-utils: Replace reference to /bin/true (master...patch-3) https://git.io/vQrI3
NixOS_GitHub has left #nixos []
<boomshroom>
I remember I had a had a very nice one a while back before I switched to NixOS and now I can't find it. :(
<clever>
sphalerite: i also remember something else having a related bug, where if psql is found in a certain env variable, it wouldnt try to add psql config flags, because you already have them
<clever>
sphalerite: except, psql can occur in a hash from nix
<sphalerite>
ouch
<boomshroom>
nevermind. I did find it, I just forgot the command line options.
watersoul has joined #nixos
ris has joined #nixos
watersoul has quit [(Read error: Connection reset by peer)]
tvon has quit [(Quit: System is sleeping...)]
indi_ has quit [(Ping timeout: 248 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] montag451 opened pull request #27187: network-manager: fix hard-coded path for modprobe (master...network-manager-modprobe) https://git.io/vQrIh
NixOS_GitHub has left #nixos []
watersoul has joined #nixos
ninja_in_neopren has quit [(Ping timeout: 255 seconds)]
justelex has quit [(Read error: No route to host)]
justelex has joined #nixos
ninja_in_neopren has joined #nixos
tvon has joined #nixos
Gravious_ has quit [(Remote host closed the connection)]
watersoul has quit [(Read error: Connection reset by peer)]
VoIPConference10 has joined #nixos
VoIPConference10 has left #nixos []
<clever>
sphalerite: ok, $out now contains ONLY nix-support/propagated-native-build-inputs and nothing else, cycles still exist! lol
<clever>
sphalerite: because of bindir, libexecdir, and sysconfdir in the Paths_ module!
<sphalerite>
>_>
<clever>
libs must go into $out
watersoul has joined #nixos
eacameron has quit [(Remote host closed the connection)]
ndrei has quit [(Ping timeout: 260 seconds)]
hellrazor has quit [(Quit: WeeChat 1.9)]
hellrazor has joined #nixos
ndrei has joined #nixos
<LnL>
johnw: found something suspicious
<johnw>
LnL: nice!
<clever>
sphalerite: it builds, but the html docs are in the same dir as the runtime data
<clever>
sphalerite: ghc has been striken from he closure, but not the ghc docs!
<sphalerite>
madness
<LnL>
johnw: but it's buried in some mass rebuilds so I can't just bisect
Gravious_ has joined #nixos
Ivanych1 has quit [(Ping timeout: 240 seconds)]
Gravious_ has quit [(Remote host closed the connection)]
<clever>
sphalerite: and package.conf.d/js-jquery-3.1.1-DsXVNi5bGjYAL1XqAI9k8I.conf:haddock-html from the lib/ subdir depends on doc
jonte has quit [(Ping timeout: 260 seconds)]
pie_ has quit [(Read error: Connection reset by peer)]
tmaekawa has quit [(Quit: tmaekawa)]
pie_ has joined #nixos
<sphalerite>
ugh
<sphalerite>
spent hours upon hours trying to debug why my image builder was trying to execute a script from a path that had a file component instead of a directory at one point
<sphalerite>
turns out it was some quotes missing around a variable name in a shell script
<clever>
ow
<Infinisil>
damn
<Infinisil>
Long live bash and dynamic languages
<disasm>
sphalerite: haha, damn quotes will get you every time
<sphalerite>
disasm: it's usually fine for me because I've had it hammered into my brain often enough that I always remember them
<sphalerite>
but when I'm debugging someone else's script (nixos-install.sh) it doesn't occur to me
<manveru>
so they went a step further from the suggestions :)
<disasm>
gchristensen: I could see a repo like nixpkgs having a really long CODEOWNERS file :)
<gchristensen>
gosh, yeah
<disasm>
maybe we can write a script to generate it from maintainers?
<gchristensen>
that'd be neat
<gchristensen>
I can't imagine we'd be able to maintain it by hand
<clever>
for the core things like the haskell framework and such, it could be done
<LnL>
yeah
<clever>
but for every single default.nix in every package, just leave it to mentionbot, is that even around still?
<manveru>
codeowners of all-packages.nix :D
* gchristensen
runs away
<LnL>
oh god
<gchristensen>
speaking of things that would be nice to have generated :P
<disasm>
manveru: everyone? :)
sary has joined #nixos
[0x4A6F] has joined #nixos
<sphalerite>
Oh boy oh boy, I think my bootable writable EFI image is almost working!
justelex has quit [(Read error: Connection reset by peer)]
<clever>
:D
justelex has joined #nixos
sary has quit [(Ping timeout: 240 seconds)]
<clever>
sphalerite: that reminds me of a crazy thing i did with gentoo many many years ago
<sphalerite>
There are several rather ugly points in the build process, but it does seem to be working!
<sphalerite>
well
<sphalerite>
I shouldn't say that yet
<clever>
i put the entire rootfs into a squashfs on a usb stick, and had the initrd copy the squashfs to ram on bootup
<clever>
then at shutdown, i would tar the writable tmpfs overlay, and save it back to the usb stick
<sphalerite>
hahaha
<clever>
but, while running, the usb stick was removable
<clever>
so it ran 100% from ram
sary has joined #nixos
justelex has quit [(Client Quit)]
<clever>
and i had the optional to persist the data at shutdown, or not
justelex_ has joined #nixos
myguidingstar has quit [(Ping timeout: 260 seconds)]
<sphalerite>
Well, it does boot successfully in the VM :D
<sphalerite>
Now to test it on hardware :o
<clever>
also, i have had an abnormaly difficult time getting anything efi to work
<clever>
not once have i gotten anything efi based to boot on my own hardware
<sphalerite>
huh
oida_ has joined #nixos
<Infinisil>
What is efi exactly?
<clever>
the new framework for motherboard firmware and os booting
jonte has joined #nixos
<sphalerite>
it's all the rage
<sphalerite>
in the sense that it causes lots of rage
oida has quit [(Ping timeout: 240 seconds)]
<sphalerite>
:D
<clever>
with the legacy method, the firmware loads a 512 byte blob from the disk, and executes it, and all IO has to be done with software interupts (the same api dos used!!)
<Infinisil>
clever: So you're doing it the BIOs way?
FRidh has joined #nixos
<clever>
with efi, the firmware will load a PE file (same format as .exe files), link it to services provided by the firmware (proper sata drivers, and filesystem support), and execute it
<clever>
Infinisil: yeah, legacy booting on gpt partitions
<Infinisil>
Is a certain partition type needed for efi?
<clever>
with legacy on mbr, grub just jams the stage1.5 file between sector 0 and partition 1, in "free space"
<clever>
but with gpt, the table no longer fits in 1 sector, and its just wrong to use "unused" space like that
<clever>
so grub needs a dedicated "bios boot partition" for the stage1.5 data
<clever>
grub will write raw x86 assembly to that partition, and the stub in the MBR will load&run it
acowley is now known as acowley_away
<Sonarpulse>
hmmm
<Infinisil>
Alright, I think I understand it somehow
<Sonarpulse>
so I mangled all the environment variables
<Sonarpulse>
in cc-wrapper
<Sonarpulse>
for hygien
<Sonarpulse>
but tonnes of derivations
justelex_ has quit [(Ping timeout: 260 seconds)]
<Infinisil>
What's UEFI though? Is it comparable to BIOS?
<clever>
Infinisil: yeah
<Sonarpulse>
define the environment variables to hack-pass extra information to cc-wrapper
<Sonarpulse>
what should I do about that?
<clever>
Sonarpulse: i also find myself doing that as well
<sphalerite>
Infinisil: a whole lot more complicated than BIOS
<sphalerite>
but in terms of its role it's similar
noam__ has quit [(Read error: Connection reset by peer)]
noam_ has joined #nixos
<clever>
ive also found things like secureboot to be a bit of a joke
<clever>
first, there is absolutely no way for the OS to properly verify if secureboot is on or not
<Infinisil>
Damn, I need to read up on all this stuff, but it's really hard to find decent sources online
<clever>
when the EFI runs an OS, it passes it a table of function pointers
<clever>
one of those functions returns a bool, saying if secureboot is on or not
<clever>
a malicious bootloader can just modify the table, and pass a fake function in that slot
Filystyn has quit [(Quit: Konversation terminated!)]
Filystyn has joined #nixos
Filystyn has quit [(Changing host)]
Filystyn has joined #nixos
<clever>
you could even use a patched tianocore or duet, to boot an EFI OS with "secure boot" on a legacy machine
<Infinisil>
Hmm
<Infinisil>
Are you sure?
<clever>
and also, MS left a debug feature in their signed bootloader, that allows it to run unsigned code
<clever>
yes
<clever>
so even with secureboot on, its trivial to run unsigned code on bootup
<clever>
and revoking the MS key would invalidate every install dvd that has been printed
<Infinisil>
Well at least they tried
<sphalerite>
So I forgot quite a critical feature in my bootable USB image
<sphalerite>
Namely, the usb_storage driver.
<clever>
so secureboot is only of use if you can lock down the firmware (to stop people from turning it off), and you also load your own keys and sign your OS yourself
<Infinisil>
Another thing I found to be confusing was the grub vs gummiboot vs some systemd boot loader (which is really the same as gummiboot but is now under systemd for some reason)
<Sonarpulse>
clever: any ideas then on what to do?
<clever>
grub supports both legacy and efi, and can even install as both at once
<Sonarpulse>
it's annoying there are no closures
<Sonarpulse>
in bash
<Infinisil>
clever: Ahh, nice to know
<clever>
Sonarpulse: i'm not sure you can safely rename those variables, i just considered them a feature and used them any time i had to override flags
<Sonarpulse>
clever: well here's the thing
<clever>
Infinisil: systemd-boot/gummiboot is efi only
<Infinisil>
Sonarpulse: You could just write the scripts in another language :)
<Sonarpulse>
:D
<Sonarpulse>
I already have some roll based ones like
<Sonarpulse>
NIX_CC NIX_BUILD_CC
<Sonarpulse>
those are defined based on what sort of dep cc-wrapper is used as
<Sonarpulse>
so I can do `if magic condition; then export CC_asdfasdfasdf_LDFLAGS=$CC_LDFLAGS; fi`
<Sonarpulse>
to conditionally slurp in the environment
<Sonarpulse>
problem is there are so many variables to take into accuont
<Sonarpulse>
it is annoying
phreedom has quit [(Ping timeout: 248 seconds)]
k2s has joined #nixos
k2s has quit [(Client Quit)]
<manveru>
Sonarpulse: you can always use hashes :)
<Sonarpulse>
manveru: for the hygiene problem yes
<manveru>
not that i particularly like that either...
<Sonarpulse>
but I already have too much hygiene :)
<manveru>
i once was foolish enough trying to pass a bash array as env var :(
<Infinisil>
manveru: Why is that a foolish thing to do?
<Sonarpulse>
I think we should have a think to convert array
<Sonarpulse>
in Nix
<Sonarpulse>
to export thing
<sphalerite>
In my recent nix hackery, I've started implementing anything that involves data structures like lists in nix, resulting in sort of unrolled loops in the builder scripts
<Sonarpulse>
*not export
<Sonarpulse>
but bash array definition
<sphalerite>
seems to be less hassle
<Sonarpulse>
to paste into preConfigure or something
<manveru>
Infinisil: well, all my vars were empty
<manveru>
Infinisil: you have to join them with a separator and then split them again
<manveru>
since env vars can only be strings
<Infinisil>
manveru: Ah right
* manveru
gets back to his nix parser
<Sonarpulse>
also quoting
<Infinisil>
What I really want is a standard type system, where you can just pass a "list" of stuff, or a struct with these fields, which would eleminate all the parsing your machine does all the time
ertes has joined #nixos
<Infinisil>
Text is universal yes, but it's very limiting as well
<sphalerite>
Indeed
<gchristensen>
FRidh: definitely interesting!
<sphalerite>
Using of=/dev/sda with dd still sort of freaks me out...
<clever>
sphalerite: /dev/vda should also work inside the vm
<sphalerite>
Infinisil: that's exactly why I try to write all the actual logic of my builders in nix
<sphalerite>
clever: yes, for the image build. But to actually write the resulting image to a USB stick it's not that helpful ;)
pie__ has joined #nixos
pie_ has quit [(Remote host closed the connection)]
tvon has quit [(Quit: System is sleeping...)]
<Infinisil>
sphalerite: Well, I guess that's an improvement, but the type checking in nix is pretty much non-existent
<Ralith>
text is certainly not universal
<sphalerite>
clever: reason the USB stick is /dev/sda is that my SSD with my main OS installation is /dev/nvme0n1
<clever>
sphalerite: ah, yeah
<Infinisil>
Ralith: How is it not?
<sphalerite>
Ralith: true
<clever>
sphalerite: ahhh, i see
<sphalerite>
Infinisil: encoding :)
tvon has joined #nixos
<clever>
sphalerite: i never took the sata's out of my machine, so i still have sda and a bunch more
<Infinisil>
sphalerite: Yeah, but the world is pretty much settled on UTF8 now
<sphalerite>
Infinisil: type checking in nix is absolutely not nonexistent
<sphalerite>
See nixos module system
<sphalerite>
sure, it's not built into the language in a convenient form. But it definitely exists
<Infinisil>
sphalerite: Okay yeah, the module system
<clever>
sphalerite: i move around so little that my computer chair has worn a hole thru the floor, lol
<sphalerite>
wow
<Infinisil>
clever: Lol indeed
<clever>
i also need to get a new laptop, the old one took 5 minutes just to load an appveyor log
<sphalerite>
but yeah I want to stay fairly mobile and a big heavy desktop would just be one extra thing that makes a move a bit harder
<clever>
sphalerite: ive been in this house for 15+ years
<sphalerite>
yeah that's not the sort of thing I plan to do, at least not in the next 15 years ;)
<Infinisil>
manveru: Elvish has the right idea, but for it to be really useful it needs to become a standard and be adopted by the world (and that's where pretty much all 'standards' fail)
<manveru>
well man, you gotta start somewhere
<Infinisil>
manveru: Yeah, every idea and implementation somebody does may be an important base of future projects
<manveru>
if everyone thought that, we wouldn't be sitting in this channel
<sphalerite>
Nix has the right idea and my impression is that adoption is growing ;)
<gchristensen>
some larger companies are picking it up
<gchristensen>
Tumblr, Atlassian are two recent ones I can think of
<simpson>
Infinisil: Sorry, I might not understand; why does a tool only become useful when it's popular?
<Infinisil>
Nice to hear :D
<simpson>
Infinisil: If the tool's any good, surely it's useful on its own?
<sphalerite>
ooh, atlassian too?
<Infinisil>
simpson: A standard only becomes useful it it's popular
<Infinisil>
Elvish's type system that is in this case
<simpson>
Infinisil: Oh. Well, that's not going to happen, so don't wait for it.
<simpson>
Be the change you wish to see.
<Infinisil>
Which would replace the now command line option 'standard'
Gravious_ has joined #nixos
<sphalerite>
Infinisil: that's what json is for
Gravious_ has quit [(Client Quit)]
<Infinisil>
sphalerite: But json is still too simple I find
<sphalerite>
I don't think it would be as widely adopted if it weren't so simple
<Infinisil>
sphalerite: Imagine being able to pass arbitrary values of any type in Haskell
<Infinisil>
(Haskell being an example of a language which allows very complex types)
<Infinisil>
Imagine piping a value of type [Int -> String] over a pipe
<sphalerite>
That would be lovely, but you always need to consider reality
<manveru>
there are a bunch of popular shells already... personally i use zsh for everything
<manveru>
but fish is picking up too
<simpson>
Infinisil: We have this in the dynamically-typed world. Turns out that you have to give up some static typing in some places to gain it back in other places.
<manveru>
and i only knew about zsh because of grml
<sphalerite>
zsh is horrible
<sphalerite>
I use it, but it's horrible
<manveru>
it's ok if you can stand the shell equivalent of perl
<Infinisil>
sphalerite: Why do you think so?
<sphalerite>
it's like bash with lots of complexity heaped on top
<sphalerite>
I want to switch to fish
simpson has left #nixos ["dukse mabla"]
<manveru>
fish could be fun, but i already configured zsh over the last 10 years or so, hard to switch :)
<Infinisil>
I'm mainly using zsh because the whole world is using POSIX and zsh has lots of plugins and stuff
ng0 has quit [(Quit: Alexa, when is the end of world?)]
pxc1 has quit [(Ping timeout: 240 seconds)]
<sphalerite>
the whole world is using POSIX[citation needed]
<Infinisil>
sphalerite: Heh, well I just mean that if I find a script online it's mostly going to be POSIX or bash
<sphalerite>
sure, and you still have bash around. No reason not to launch bash from fish ;)
natewhite has joined #nixos
<Infinisil>
Fair enough
sg2002 has joined #nixos
<manveru>
that's what shebangs are for :)
sg2002 has left #nixos []
<sphalerite>
and zsh does have its little incompatibilities with bash
<manveru>
i'm giving fish a try right now, seems kinda neat, last time i tried it was like 5 years ago
<sphalerite>
which make it saner but not sane, and break some bash scripts. So the worst of both worlds :p
<Infinisil>
Exactly, you should just be able to put a Shebang at the beginning of the script and it uses that interpreter, *cough* nix *cough*
<sphalerite>
Infinisil: yes, a shebang like /usr/bin/env bash
pxc1 has joined #nixos
jonte has quit [(Ping timeout: 255 seconds)]
<Infinisil>
I mean that nix build scripts use bash and you can't just put a shebang to change it
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] edef1c opened pull request #27188: nixos/…/swap.nix: don't create a LUKS header for randomEncryption (master...plain-random-encryption) https://git.io/vQrBe
NixOS_GitHub has left #nixos []
<manveru>
well, you can, if you replace the builder
<Infinisil>
manveru: Exactly (or there are some other ways), but it's not as easy as a shebang
<sphalerite>
nixpkgs build scripts use bash. Not nix build scripts ;)
faffolter has quit [(Ping timeout: 255 seconds)]
<manveru>
exactly
<Infinisil>
Oh right
<sphalerite>
and it would be perfectly feasible to use a non-bash build script in nixpkgs
<Infinisil>
This is what clever and I did recently to use haskell in a script: Error: Could not connect to https://api.github.com/
<Infinisil>
Well seems like gist didn't work, hold on
<sphalerite>
in fact, I wonder how much of nixpkgs would break if built using plain sh instead of bash
<sphalerite>
(my guess is some of the magic around cc-wrapper or glibc would break and nothing would build if it was replaced entirely)
<sphalerite>
but for individual packages it might be an interesting experiment
<Infinisil>
I wonder how much of nixpkgs would be fixed if we used a statically typed language with a decent type system :P
<NixOS_GitHub>
[nix] matthewbauer opened pull request #1445: Don’t hardlink disallowed paths in OS X. (master...macos-skip-hardlink) https://git.io/vQrRP
NixOS_GitHub has left #nixos []
natewhite has quit [(Quit: leaving)]
pxc1 has quit [(Ping timeout: 240 seconds)]
mudri has joined #nixos
cpennington has quit [(Remote host closed the connection)]
<Infinisil>
One thing that's really annoying with my NixOS right now is how Firefox is so slow to start, it surely takes 15 seconds. Running firefox <url> also takes that amount, I suspect it's something with the wrapper
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] LnL7 pushed 1 new commit to staging: https://git.io/vQr0E
<NixOS_GitHub>
nixpkgs/staging 7e3a1a5 Daiderd Jordan: Revert "ncurses: look for terminfo entries in /etc"...
NixOS_GitHub has left #nixos []
<LnL>
johnw: ^
Filystyn has quit [(Quit: Konversation terminated!)]
<Infinisil>
slyfox: Ah that does it I think, but it gives me "Couldn't load XPCOM"
<yegortimoshenko>
i'm a total noob, but is there a way to store the entire system config in one single file using nix? i'm on macos but it shouldn't be different between environments
<slyfox>
ltrace coupld break complicated programs
<Infinisil>
I just arrived at the same result when inserting ltrace into the wrapper
arianvp2 has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] apeyroux opened pull request #27190: Up grammalecte 0.5.17 to 0.5.17.2 (master...up-grammalecte-0.5.17-to-0.5.17.2) https://git.io/vQrVs
NixOS_GitHub has left #nixos []
Itkovian has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<Infinisil>
yegortimoshenko: I don't think that's possible with macOS
<Infinisil>
That's what NixOS was made for
<yegortimoshenko>
Infinisil: on NixOS you have configuration.nix, right?
<mellowmaroon>
So I tried using Intero in Spacemacs, but it wouldn't install. Said I needed ncurses...
<sphalerite>
yegortimoshenko: to take a more nuanced stance, it depends on what "the system" is
<mellowmaroon>
Not sure why it was installing intero through Stack either, since I installed it globally
lambdael has quit [(Quit: WeeChat 1.7.1)]
<sphalerite>
yegortimoshenko: if "the system" is the software you install through nix and the config for said software, then it's perfectly possible on macos too
<Infinisil>
mellowmaroon: I don't know much about emacs, but doesn't it just look for stuff in PATH? If so you could just use nix-env -iA nixos.ncurses or smth like that
<yegortimoshenko>
sphalerite: that's more than enough. should i just store my manifest.nix?
<mellowmaroon>
Infinisil: I tried putting ncurses in my configuration.nix, but no luck
<Infinisil>
mellowmaroon: (I hope you didn't forget to rebuild :P)
<mellowmaroon>
Infinisil: I didn't :D
<sphalerite>
yegortimoshenko: the manifest isn't that useful really iirc. What you want is to write what you want in an expression — a simple one would be just with import <nixpkgs> {}; {inherit vim tmux fish;} — and then you can install that using nix-env -ir stuff.nix (assuming you named the file stuff.nix)
<sphalerite>
yegortimoshenko: oh and you probably want nix in that list too if you're on macos!
<Infinisil>
mellowmaroon: Isn't there some emacs package management in nixpkgs going on? Did you install it like that?
<sphalerite>
err, nix-env -ir -f stuff.nix
<yegortimoshenko>
sphalerite: if i nix-env -i openjre for example, and then i nix-env -ir -f stuff.nix, will java still be around in my PATH?
<mellowmaroon>
Infinisil: I dunno. I just put my Haskell backend as intero, installed intero/ncurses/stack through Nix, and got the error
<yegortimoshenko>
sphalerite: what i'm trying to understand is if stuff.nix would be a complete description of my environment or just a recipe to install some new stuff (something that would be possible even using shell)
<sphalerite>
yegortimoshenko: no, it won't — the -r makes it create a new environment from scratch without the previously installed stuff. You could add openjre to the expression (which is nicer because it lets you keep track of it) or you could just do nix-env -i -f stuff.nix, which would avoid anything getting removed
<sphalerite>
so it's either of the two things you just described, depending on whether you pass -r :)
<yegortimoshenko>
sphalerite: nix is amazing, thank you a lot!
<sphalerite>
no worries! And of course you can go beyond just installing software, you can configure it as well. Some software (vim for example) has functionality in nixpkgs for configuring it conveniently, for others you can just write a wrapper yourself
<Infinisil>
sphalerite: But isn't that in module system which is only available on nixos?
<sphalerite>
for example (it's a bit of a mess) I configure almost all my stuff via nix https://github.com/lheckemann/dotfiles (default.nix is the expression that I install)
<sphalerite>
Infinisil: no, vim's config is in nixpkgs
k2s has joined #nixos
<sphalerite>
Infinisil: you can install vimConfigurable.customize {...} on macos just as well as on ubuntu and nixos
<sphalerite>
Or use it for a nix-shell
<Infinisil>
sphalerite: Wait, where is vimConfigurable?
<sphalerite>
which is why I much prefer that over using modules — modules are much less versatile
<yegortimoshenko>
thanks for the example! it's even better than i thought: i can set up my environment completely (i.e. symlinks, scripts), not just packages...
<sphalerite>
yes, but only within ~/.nix-profile
cheshircat has quit [(Quit: ZNC 1.6.5 - http://znc.in)]
cheshircat has joined #nixos
cheshirc1 has joined #nixos
<sphalerite>
If you want to set stuff up outside that you need to use something else in addition to nix. One example of such a tool is https://github.com/rycee/home-manager
<sphalerite>
but for many use cases, I think just nix is enough
cheshirc1 has quit [(Client Quit)]
hiratara has quit [(Ping timeout: 276 seconds)]
<Infinisil>
sphalerite: What home-manager could be really nice for is for e.g. a color scheme which you want to set for all applications. As in you could declare the 16 colors and reuse them throughout your config, changing the colors changes them everywhere
<sphalerite>
Infinisil: you can do that just as well with plain nix
<Infinisil>
sphalerite: Or a dns server where you could automatically add a dns entry when adding a new subdomain virtualdomain
celph has joined #nixos
<Infinisil>
sphalerite: How?
<Infinisil>
sphalerite: templating the configuration file only works to some extent
<Infinisil>
And if you full on template it, then it's pretty much what home-manager does I think
<sphalerite>
Infinisil: if you make your package files take "colours" as a parameter, you can share that across all of them
joelpet has joined #nixos
joelpet has quit [(Changing host)]
joelpet has joined #nixos
<sphalerite>
of course, home-manager is nice in that it provides a shared repository for configuring lots of different software and reduces duplication of effort
<sphalerite>
(also: if you've got 16 colours to set, just set them in your terminal config!)
hiratara has joined #nixos
<Infinisil>
sphalerite: They don't apply everywhere thoug
<Infinisil>
For example my xmonad borders should be one of those colors
<Infinisil>
or cava should use them
<sphalerite>
Sure. But home-manager doesn't support that any more than plain nix does, yet
k2s has quit [(Quit: Leaving)]
<Infinisil>
sphalerite: It's easy to extend though (I think, haven't tried it)
<Infinisil>
And shared as you said before
<sphalerite>
It's possible with and without home-manager, just not implemented either way :)
<Infinisil>
Sonarpulse: I _know_ about it, but not more than that. You could always read the source though
<Sonarpulse>
Infinisil: oh I've edited it
<Sonarpulse>
and now its not being run
* Infinisil
has no idea
<Infinisil>
Maybe run with some set -x
<Sonarpulse>
yeah
<Sonarpulse>
I guess so
<sphalerite>
Gnight folks!
<mellowmaroon>
good night :)
<Infinisil>
sphalerite: Knight!
<celph>
not really sure when is appropriate to butt in but I'm wondering if anyone here might have some insight into some weird problems I've been having during install
<celph>
Or if there's somewhere more appropriate to go for that
<sphalerite>
celph: if it's nix or nixos, always appropriate to butt in :)
<Infinisil>
Agreed
<sphalerite[m]>
(Even if it's not probably nobody will mind)
<Infinisil>
sphalerite: Whoa what's that [m] there doing now
<Infinisil>
Ohh, [m]obile
<sphalerite[m]>
I'm on my phone using [m]atrix
<celph>
mainly to do with the live isos for 17.03: ping/wget can't resolve certain domains on the mirror list, or google.com for that matter
<Infinisil>
celph: Looks like no internet connection
<celph>
That would be what it sounds like, but it's only certain hostnames, and I can ping by IP fine
<celph>
Across multiple rigs, curiously browsing has no problem
<Infinisil>
celph: Are you familiar with DNS?
<celph>
yes
<Infinisil>
maybe you could play around with dig a bit
yegortimoshenko has quit [(Ping timeout: 260 seconds)]
cheshircat has quit [(Quit: ZNC 1.6.5 - http://znc.in)]
<Infinisil>
And have a look at /etc/resolv.conf
cheshircat has joined #nixos
<Infinisil>
What does dig google.com return?
<Infinisil>
Or I often prefer `nslookup google.com`, it's a bit nicer to look at and shows the used dns by default
<Infinisil>
(But it might not be installed by default, dunno)
<celph>
I'm working from the live iso so I'm a little bit constrained in what I can do. nix packages will download but won't install cause of course it's read-only
<celph>
And it doesn't come with dig or nslookup
<clever>
the live-iso should have working nix-env and nixos-rebuild
<Infinisil>
No dig? :O
<Infinisil>
celph: What's in /etc/resolv.conf?
<celph>
search gateway.2wire.net
<celph>
nameserver 192.168.100.254
mellowmaroon has quit [(Quit: Leaving)]
<celph>
options edns0
<celph>
That's it
<clever>
celph: are other machines on the same lan working, and also set to use 192.168.100.254?
<celph>
the other PC I have is using localhost
cheshircat has quit [(Quit: ZNC 1.6.5 - http://znc.in)]
<celph>
It's also Elementary, not nix. I have no idea how they do their thing, I just put something I wouldn't have to support on it for a relative.
<clever>
celph: on that box, run "ps aux | grep bind"
<Infinisil>
celph: Another thing to try is running `nslookup google.com` and `nslookup google.com 192.168.100.254` on your Elementary machine
<clever>
celph: yep, that machine is using dnsmasq as a local dns server/cache
<clever>
celph: it sounds like your ISP or router dns is dead, and only machines that do their own dns work
<celph>
this may be a stupid question but what package is nslookup in
<Infinisil>
celph: Whew, I have no idea on other distros
<celph>
clever: thanks, any idea what I should do about that?
<clever>
celph: for now, manualy edit /etc/resolv.conf to set the dns to 8.8.8.8
<clever>
that will temporarily fix it
doublec has left #nixos []
<clever>
long-term, on nixos, you can set networking.nameservers = [ "8.8.8.8" ]; to make that change stick, or services.bind.enable = true; to do the same thing Elementary does
<celph>
Okay that's good, I'll put that in config
lambdael has joined #nixos
<Infinisil>
celph: Does it work?
<celph>
Yeah it's finding things fine now by the look of it
<celph>
Oh hey look and that fixed the other issue I had during install too by the look of it
<Infinisil>
Nice :)
<celph>
I think I'll be fine now, thanks a lot
<celph>
I'll remember this, I suck at networking lol
<celph>
figures an ISP router will have DNS problems
<celph>
oh geez here's a dumb one: I want to set up an encrypted boot partition. I have a FAT formatted efi part, but /boot is a btrfs subvolume, this config *should* work, but nixos-install wants all of /boot to be FAT
<celph>
I think I must not have the proper configuration for this
<Infinisil>
I remember having to use fat (or maybe vfat) for it to work, I'm not sure though
ebzzry has joined #nixos
<celph>
On my previous build I had an ext4 /boot and a FAT /boot/efi and that worked fine
<celph>
I'll look in configuration.nix and see if I missed something obvious
<Infinisil>
clever knows a lot about this stuff, maybe he's still here
<clever>
for efi systems, ive heard you can just make all of /boot fat32
<clever>
celph: efi requires that the UEFI firmware be able to read the fat32 partition
calvertvl has joined #nixos
<clever>
which means it cant be encrypted
<Infinisil>
I just found this under the UEFI installation instructions: "You will need to have a separate partition for /boot with partition code EF00, and it should be formatted as a vfat filesystem."
<clever>
celph: when i did my luks install, i left /boot as a cleartext ext4
<celph>
GRUB's supposed to be able to run minimally from cleartext /boot/efi which then decrypts a boot partition
<clever>
i can see how that much work
<clever>
might*
<celph>
I've definitely had that work before when I was using Arch
<celph>
Infinisil: 25% of the Steam library, heavily weighted by indie games and grand strategy, if you're an FPS person the situation isn't so great
<celph>
clever: any idea what I could do about systemd?
<Infinisil>
I'm mainly playing 2 games: Rocket League and Overwatch (and occasionally Minecraft) and I'm pretty sure all of them are supposed to work on NixOS, so that's good for me :D
<clever>
celph: i dont think systemd-boot supports encrypted /boot, so you need to set boot.loader.grub.enable = true, and remove the systemd-boot.enable
<clever>
Infinisil: overwatch doesnt work under wine, on any distro
<Ralith>
SteamVR does theoretically work on linux with sufficiently recent nVidia proprietary drivers, but getting those on NixOS is enough of an adventure in itself
<clever>
celph: you also need to set boot.loader.grub.efiSupport = true;
<clever>
Infinisil: last i looked, it uses a version of directx that wine hasnt even started work on
<Infinisil>
The linked article suggests otherwise though, reporting being playable
<clever>
i also cant even get battle.net into a usable state
<Infinisil>
I'll have a look at Wine's release notes