<MichaelRaskin>
Well, if this were not there, just adding to one of a few lists of boot commands would be fine.
ericsagnes has quit [Ping timeout: 240 seconds]
<ottidmes>
I might try it when I ever find myself needing the second ethernet controller, but for now I only need the one, and so prefer to just disable the other one, to rule out any potential problems
yegortimoshenko has quit [Remote host closed the connection]
<samueldr>
If you're cherry-picking a commit to a stable release branch, always use git cherry-pick -xe and ensure the message contains a clear description about why this needs to be included in the stable branch.
<georgew>
Thank you :)
<georgew>
Oh dear, this file has completely changed between 17.09 and now
<georgew>
Oh no it hasn't I'm mistaken.
<genesis>
only nixpkgs stable get hydra cache for binary
<genesis>
??
<samueldr>
hmm, no, all channels do
<samueldr>
BUT, the tip top of the branches sometimes aren't rebuilt yet
<samueldr>
somtimes there's a bunch of PRs opened during downtime, and somtimes, sadly, some fall in-between the cracks, if there's no movement in a couple of days, it's not rude (AFAIK) to ask here
<Havvy>
Anybody who can do so quickly wanna send in a PR for updating ripgrep?
<genesis>
i did some PR on gentoo that take 10 years, i receive last week news about 2008 :D
<dtz>
:D
<genesis>
problem is package that have very few users , software for automation i've use for example
<redfish64>
In nix, can I create list of names of attributes in a set? ex. if I had a set { x=5; y=7}, could I get a list that returns [ "x", "y" ]?
<redfish64>
[ "x" "y" ] rather
ericsagnes has quit [Ping timeout: 252 seconds]
<redfish64>
Ah, nevermind, found it: builtins.attrNames {x=5;y=7;}
<johnw>
Havvy: what command builds doc/rg.1 in this version?
<johnw>
i know nothing about rust or cargo
schoppenhauer has quit [Ping timeout: 256 seconds]
reinzelmann has joined #nixos
neonfuz has quit [Ping timeout: 264 seconds]
schoppenhauer has joined #nixos
ericsagnes has joined #nixos
adisbladis has joined #nixos
<ditadi>
sdf
<ditadi>
Hey guys, how to I made systemd-boot use the latest generation?
<adisbladis>
ditadi: Happens automatically after a switch.
<ditadi>
For some reason my system keeps booting into generation 1, I checked the checksum from journalctl -b | grep boot, and contents of /boot/loader/entries/nixos-generation-1.conf. I have all generations up to 8
<ditadi>
the output from journalctl says that it is booting using same /nix/store/path as nixos-generation-1.conf
<NixOS_GitHub>
[nixpkgs] Profpatsch opened pull request #34875: remove profpatsch from maintainer list of a few packages (master...unmaintain-1) https://git.io/vAqiS
NixOS_GitHub has left #nixos [#nixos]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Profpatsch closed pull request #34875: remove profpatsch from maintainer list of a few packages (master...unmaintain-1) https://git.io/vAqiS
NixOS_GitHub has left #nixos [#nixos]
<Li[m]>
iv been using ion shell lately, and it would be a perfect match to use with nix
ericsagnes has joined #nixos
chrisbarrett has quit [Ping timeout: 264 seconds]
<Havvy>
johnw: I'm not sure? I've never interacted with man pages. They did get moved in 0.8.x from where they were in 0.7.x according to the changelog.
<johnw>
Havvy: they changed from being an actual manpage, to be some kind of mardown like .tpl file
<johnw>
and I don't see where rg.1 is being generated, or how to generate it
<johnw>
anyway, I've run out of time to examine it
<ditadi>
I've set up 2 factor auth for luks device with yubi key. I followed this guide, had to change it slightly but why does it say to remove all detected filesystems (specifically /boot)?
<Profpatsch>
From a quick glance it doesn’t look like a substantial improvement over bash, plus it’s unfinished and experimental.
<Profpatsch>
Same as fish is a small improvement over bash, but not really substantial in any way.
<Li[m]>
Profpatsch: > It should also be taken into consideration that shells operate entirely upon strings, and therefore should be fully equipped for all manner of string manipulation capabilities. That means that users of a shell should not immediately need to grasp for tools like cut, sed, and awk. Ion offers a great deal of control over slicing and manipulating text. Arrays are treated as first class variables with their own unique
<Li[m]>
@ sigil. Strings are also treated as first class variables with their own unique $ sigil. Both support being sliced with [range], and they each have their own supply of methods.
<Profpatsch>
Li[m]: There’s not much difference between 4M and 50M.
<Li[m]>
Profpatsch: good luck with that
<Profpatsch>
Li[m]: With what?
<Profpatsch>
Did you know most nix executables were written in Perl until 1.11?
<Profpatsch>
Which is probably the version you also use.
<ArdaXi[m]>
This is somewhat on the tier of the whole "pointless use of cat" thing. Like, yeah, you can do things slightly more efficiently, but it rarely matters. If you need something fancier than what bash does you generally want something other than a shell.
<Profpatsch>
ArdaXi[m]: The important distinction is: interpreted vs compiled
<Li[m]>
im enjoying ion shell a lot
<Li[m]>
it feels a lot less like writing a shell script
<ArdaXi[m]>
Meh, even that's complicated, is Python interpreted or compiled?
<Havvy>
ArdaXi[m]: Why not both?
<ArdaXi[m]>
Exactly
<Profpatsch>
ArdaXi[m]: Sure.
<Li[m]>
JIT compiled system shell?
<Profpatsch>
But I’d tend to interpreted.
<ArdaXi[m]>
IMO, the main consideration is: is this the right tool for the job
<Profpatsch>
You can also do runhaskell and call hs files with GHC as interpreter.
endformationage has joined #nixos
<Profpatsch>
But the GHC closure is 1GB, so there’s that.
neonfuz has joined #nixos
<ArdaXi[m]>
If you're quickly prototyping stuff, interpreted is great. If you want something high-performance that you'll run a lot, go compiled
<Profpatsch>
ArdaXi[m]: That’s a non-statement (and a false flag).
<Profpatsch>
But yeah, agree with the latter.
<ArdaXi[m]>
Shell scripts are very, very rarely the right tool for the job, they're just simple
<Profpatsch>
widely supported, thin layer over the POSIX API
<Profpatsch>
Instead of thinking about how to change the language you write your builders in, try to think about how you can evade writing imperative code at all.
<Profpatsch>
e.g. by using lib/generators.nix to convert from nix attribute sets to JSON strings directly.
<Profpatsch>
Or INI files or whatever, instead of copying stuff together.
Guanin has quit [Ping timeout: 256 seconds]
<ArdaXi[m]>
I was talking more generally, but in the context of Nix that's exactly it, yeah. Write as much directly in Nix as possible
revtintin has quit [Quit: WeeChat 1.9.1]
<Profpatsch>
Compile from specifications (on the nix-level) down to imperative code and package this in the library.
<Profpatsch>
E.g. by creating an attribute set containing all the files and where they come from and translating that to shell code.
<Li[m]>
nix as it is today chooses shell features over speed, by a wide margin
<Li[m]>
mksh might work with most of nixpkgs and would be quite a bit faster
<Profpatsch>
Li[m]: Speed as in evaluation speed, builder speed, containerization speed, …?
<ArdaXi[m]>
If you're worried about overuse of shell features, fix that rather than fix the shell, methinks
<Lisanna_>
I'm confused - can't you use whatever shell you want for your builder code?
guibou has quit [Ping timeout: 268 seconds]
<Profpatsch>
Lisanna_: Yes.
<Li[m]>
welll this ion shell just landed on github, I didnt write it
<Lisanna_>
well there you go then, lol
<Profpatsch>
It’s just the fact that stdenv is written in bash that poses a hindrance.
<Li[m]>
now im experiencing the early days of writing nix expressions for rust
<Li[m]>
its getting a lot better with carnix
<ArdaXi[m]>
Mozilla supports Nix pretty well I think
<Profpatsch>
Li[m]: Try to look over the edge over the rust ecosystem more. ;)
<Li[m]>
Profpatsch: I dont get it
<Li[m]>
look over what?
<Profpatsch>
You will find most questions already arose in the last 50 years or so and have a pretty good (as in well-compromised) solution.
Guanin has joined #nixos
<Profpatsch>
Does not mean that we can not improve on stuff of course.
<Profpatsch>
(see nix)
chrisbarrett has joined #nixos
<Profpatsch>
Changing some things (like bash->other imperative shell) just are not worth the effort.
<Profpatsch>
Because they are only a minor (as in linear) improvement
<Profpatsch>
Where as tools like nix are an exponential improvement over traditional solutions (package managers).
<Profpatsch>
As one can see in projcts like NixOS, nixops, hydra … which wouldn’t have been possible without the abstraction nix provides.
<Profpatsch>
Okay, I’ll stop babbling now.
<Lisanna_>
also, it's a general problem that improvements computing don't compose very well.
<Profpatsch>
The latter point is probably what matters in making projects composable.
<Profpatsch>
But yeah, it’s a hard proble.m
<simpson>
Lisanna_: No kidding, the cases of Genode and seL4 have been very frustrating since it's hard to see how stuff like Nix or Monte are supposed to be integrated.
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Profpatsch opened pull request #34876: maintainers: capitalize the Profpatsch attribute (vanity) (master...maintainer-capitalize-profpatsch) https://git.io/vAqX6
NixOS_GitHub has left #nixos [#nixos]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Profpatsch pushed 1 new commit to master: https://git.io/vAqXX
<NixOS_GitHub>
nixpkgs/master 53e790e Profpatsch: maintainers: capitalize the Profpatsch attribute (vanity)...
<ldlework>
Ij, it set the timestamps for this package to Dec 31 1969 :)
<ldlework>
And the program is "broke as fuck"
<ldlework>
How can I just have this ... not happen
<sphalerite_>
ldlework: it's intentional, because some software will include timestamps in its build data making it unreproducible if the dates aren't set uniformly
<ldlework>
Well its broke.
ma27 has joined #nixos
knupfer has joined #nixos
zzamboni has joined #nixos
<ldlework>
Ah it seems to be "undmg" that breaks it
<sphalerite_>
I guess you could say… it causes some dmg
reinzelmann has quit [Ping timeout: 255 seconds]
leat has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] hamishmack opened pull request #34878: fontconfig: Fix for HFS+ 1s date resolution issue (master...patch-3) https://git.io/vAqSF
<Lisanna_>
wow, fixpoint is a really nice way to do recursion ^^
<ij>
1. I've mounted /boot, set 2. boot.loader.systemd-boot.enable = true and 3. boot.loader.efi.canTouchEfiVariables = true, 4. confirmed the config gets included into configuration.nix.
ertes-w has joined #nixos
<ij>
It still doesn't boot after `nixos-rebuild boot`, even though there are files being placed in the efi partition with the correct — "EFI System"(as shown by cfdisk) — type.
<freeman42x[NixOS>
I installed nix-env -i adobe-reader , any idea how to open it? :)
<ij>
Seems like the boot order's wrong. I tried changing it, but it doesn't stick.
<ij>
(after reboot)
Mateon3 has joined #nixos
Mateon1 has quit [Ping timeout: 268 seconds]
chrisbarrett has joined #nixos
Mateon3 is now known as Mateon1
<clever>
ij: try changing the boot order in the bios itself, or use a key like f12 to pick a certain item
roberth has joined #nixos
<ij>
The HDD doesn't show up.
<ij>
freeman42x[NixOS: acroread, maybe?
<ij>
freeman42x[NixOS: If you can find the store path of the reader, you can see what names are in its /bin subdirectory.
asuryawanshi has quit [Remote host closed the connection]
<freeman42x[NixOS>
ij, cheers, it was acroread
<freeman42x[NixOS>
I don't get why it doesn't have a menu entry though
<etu>
freeman42x[NixOS: It does have one, but your desktop might not show it instantly
<freeman42x[NixOS>
etu, I wonder why, for other programs it shows instantly
nschoe has joined #nixos
chrisbarrett has quit [Quit: chrisbarrett]
chrisbarrett has joined #nixos
tanonym has joined #nixos
<freeman42x[NixOS>
apparently I can't add bookmarks in Acrobat Reader :/
pie__ has joined #nixos
pkill9 has joined #nixos
<Lisanna_>
Attributes in a derivation are passed as environment variables to the builder. Therefore, changing any attribute of a derivation may cause a different result to be produced, since Nix can't predict which environment variables the builder will be influenced by at evaluation time. So why doesn't this trigger a rebuild? :b (hello // { test = "foo"; })
tanonym has quit [Quit: Chat comfortably. Anywhere.]
<Lisanna_>
as opposed to :b hello
tanonym has joined #nixos
chrisbarrett has quit [Remote host closed the connection]
chrisbarrett has joined #nixos
<symphorien>
Lisanna_: you must change attributes passed as argument to stdenv.mkDerivation
<Lisanna_>
Err, I'm not talking about stdenv's derivations specifically. I know that the proper way to override things is with overrideAttrs. I'm asking how Nix can allow such a thing as the example I gave, it seems to break the rules.
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] dywedir opened pull request #34879: iosevka: 1.13.3 -> 1.14.0 (master...iosevka) https://git.io/vAqQ4
NixOS_GitHub has left #nixos [#nixos]
zzamboni has quit [Remote host closed the connection]
zzamboni has joined #nixos
<symphorien>
because in you example test won't be passed as an env variable
spear2 has quit [Remote host closed the connection]
<symphorien>
well it is guaranteed that args passed as *arguments* of derivation and mkDerivation are treated as env variables
<symphorien>
but not what is appended to the result of `derivation`
Synthetica has joined #nixos
<Lisanna_>
oh, because I'm not calling the "derivation" function again
<symphorien>
that's what overrideAttrs is for
pie__ has quit [Ping timeout: 260 seconds]
zzamboni has quit [Quit: Leaving.]
<Lisanna_>
so a derivation isn't just a special attrset, it's specifically the result returned by a successful call to "derivation", which looks kind of like an attrset
<Li[m]>
is there a PR for merging (some of) mozilla-nixpkgs, at least for rustup builds?
<Li[m]>
or anyone working on that
<symphorien>
Lisanna_: that's my understanding, yes
<Lisanna_>
cool! that makes my life a lot easier
zzamboni has joined #nixos
leat has quit [Ping timeout: 252 seconds]
lonokhov has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] andrew-d opened pull request #34880: massren: init at 1.5.4 (master...adunham/massren) https://git.io/vAq7H
NixOS_GitHub has left #nixos [#nixos]
leat has joined #nixos
ma27 has quit [Ping timeout: 252 seconds]
sa1 has quit []
sa1 has joined #nixos
ma27 has joined #nixos
MP2E has quit [Remote host closed the connection]
chrisbarrett has quit [Quit: chrisbarrett]
<occivink>
hi, is there an easy way to have packages that always compile from 'master', instead of referring to a specific commit?
winem_ has quit [Ping timeout: 276 seconds]
arjen-jonathan has joined #nixos
chrisbarrett has joined #nixos
ertes-w is now known as supercynic
<tilpner>
Yes, but it's not really a good idea, because you give up control over when to update to latest master
<Lisanna_>
occivink it's technically possible, not encouraged though
<occivink>
do I not stay in control by deciding when I upgrade the package?
<tilpner>
IME it's better to have a script that will update your package to master. That means you only have to rebuild every time you run that script, not every 12h (or whatever TTL fetchurl uses)
<occivink>
that might be a good idea, yes
<tilpner>
It depends on how you use it. nix-env will keep your old evaluation, but if you re-evaluate the package it may have to be rebuilt
<tilpner>
E.g. by referencing it in your nixpkgs config or nixos-config
periklis has quit [Remote host closed the connection]
<Lisanna_>
the "correct" solution to this is to use a CI system like Hydra or something as simple as a bash script which updates the sha256 of the fetchgit or w/e
<Lisanna_>
and that system controls the builds of the package that you have
<occivink>
yes I think that's what I will do
<occivink>
thanks for the suggestions
<occivink>
now to learn how to write package files
pie__ has joined #nixos
<tilpner>
occivink - The scripts I use to update my src pins are: tx0.co/github and tx0.co/tarball
<Lisanna_>
occivink you can make that easy by exposing your builder as a function which takes a {rev, sha256} as its argument, and then you can pass those in on the command line, like this: nix-build mypackage.nix --argstr rev "master" --argstr sha256 "whatever"
<tanonym>
Been reading over the nix expression language and going through the intro tutorials on it. One line that was mentioned was that nix expression has no command ("think lamda calculus not java") as the author put it. Is the evaluating that nix language does kind of like what one does when checking if an inequality is true or not? You're not solving an equation, but simply verifying that it is valid. Have I understood the concept correctly?
<tanonym>
The Java in that comparison would be more like solving for a variable rather than checking whether an expression or equation is true.
hke has quit [Quit: bye]
<MichaelRaskin>
Not really
<Lisanna_>
tanonym I think what that means is that all Nix code is part of one big expression
periklis has joined #nixos
<MichaelRaskin>
There are no side-effects, so solving an equation is a closer analogy
hke has joined #nixos
<Lisanna_>
in C and Java, you have expressions like (2+2*6), where evaluating it doesn't *do* anything, it just produces a value which you could substitute in (in that case, 14)
<Lisanna_>
in languages like Nix, *everything* is like that
<tanonym>
Ah. Not really sure what the significance of lambda calculus is in the analogy, as I have only gotten as far as teaching myself first-year calculus (differential, I believe)
<MichaelRaskin>
«It doesn't do anything» — Intel also thought it doesn't, now we have Meltdown
<Lisanna_>
tanonym lambda calculus and differential calculus are about as similar as java and javascript
<Lisanna_>
they share a common word, they're not the same kind of thing
<tanonym>
When you say no side-effects you mean like having nix evaluate something doesn't result in things like privelege escalations or similar exploits? Where making a different language do something could have other effects.
<Lisanna_>
calculus is just a mathy word that means a way to do a kind of thing
<Lisanna_>
side effect is like this: printf returns a value (an int), but also has the *side effect* of printing something to stdout
<tanonym>
Yeah, I am working my way through the more advanced maths, but being autodidact I kind of meander around the topics.
<Lisanna_>
IMO lambda calculus is a lot simpler than differential calculus
<tanonym>
Lacking Calculus books so currently mathematics being studied is Probability, Statistics and Linear Algebra.
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vcunat opened pull request #34882: linux: don't add HOSTCC to PATH during build (master...p/retpoline) https://git.io/vAqFC
NixOS_GitHub has left #nixos [#nixos]
<tanonym>
Oh, nix expression language doesn't execute commands then? printf would be a command that gets executed?
<MichaelRaskin>
It is a different notion of calculus anyway
<Lisanna_>
yeah
<MichaelRaskin>
tanonym: Nix language only calculates derivations
<MichaelRaskin>
Executing them is a different step
ma27 has quit [Ping timeout: 252 seconds]
<tanonym>
derivations meaning what in this context?
<MichaelRaskin>
There are some debug printf's that are considered acceptable side effects
<MichaelRaskin>
derivations are instructions to build
<MichaelRaskin>
Imperative scripts.
<tanonym>
Ah like a mathematical function.
<tanonym>
With the execution step being like writing the solution down on a sheet of paper after you've calculated the value?
<Lisanna_>
tanonym it's more like you have a math function which calculates the dimensions of the beams needed for your bridge, then execution is you go and build the bridge
<tanonym>
I evaluate 2+2 to equal 4 in my head. And when I write that down on the paper I've evaluated it with side-effect of having made marks on a sheet of paper. Something like that?
<tanonym>
Ah, okay. Starting to get an idea of what was meant.
<Lisanna_>
don't be fooled though, Nix can be just as expressive as languages like C and Java, you just end up re-framing your problems in terms that don't depend on side effects to do the computations you need
<tanonym>
Right now I'm kind of trying to wrap my head around what the differences are. One of those people that I have a better chance of grokking something if I understand the why rather than just the how.
<Lisanna_>
it's one of those things that you just have to do for a bit before you really start getting it. difficult to give someone an explanation which they can understand and go "ahh! that's how it is!"
<tanonym>
I've done tutoring in the past, which is sometimes a case of explaining the concept in multiple different ways until the student finds one that makes sense.
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] tadfisher opened pull request #34883: acpica-tools: init at 20180209 (master...acpica) https://git.io/vAqFA
NixOS_GitHub has left #nixos [#nixos]
<tanonym>
Also curious about how exactly states and values get stored in the hardware, and how moving integers from one register to another in old consoles like NES translated to collision detection and so on.
chrisbarrett has quit [Quit: chrisbarrett]
chrisbarrett has joined #nixos
<tanonym>
Also comes down to me not grokking the difference between functional and nonfunctional languages. I have done a bit of work with Basic, Java, C++ and things like HTML but not much with functional languages like nix expression or haskell.
<chrisbarrett>
anyone online comfortable working with python in nix?
pie__ has quit [Ping timeout: 256 seconds]
<adisbladis>
chrisbarrett: What do you need help with?
<sphalerite_>
!doesanyoneuse
<{^_^}>
Don't ask if anyone uses software xyz, just ask your specific question. This helps solve your problem quicker, and allows people who haven't used xyz but may still be able to help you to do so.
<chrisbarrett>
got it :)
gamambel has left #nixos [#nixos]
periklis has quit [Ping timeout: 276 seconds]
freeman42x[NixOS has quit [Ping timeout: 260 seconds]
<chrisbarrett>
I'm trying to run WeeChat (my irc client) with a particular python plugin, that needs some libraries on the python path. nix quite reasonably wants me to embed everything in an environment. However, WeeChat wants to load python libraries from a specific place in the user home directory.
<chrisbarrett>
It feels like I need to break out of the nix environment to get the package loaded
<tanonym>
NixOS 17.09 version of Enlightenment Desktop 0.21.9 segfaults when opening folders through the enlightenment file manager. Going to see if upgrading my system to nixos-unstable will help.
<infinisil>
tanonym: a functional language can be seen as "a language that allows you to pass functions around as normal values", which a lot of languages can do actually, but a *purely* functional language means something like "no side effects, functions return the same thing for the same inputs every time"
<chrisbarrett>
but that _does_ feel wrong. so I was wondering if anyone else had experience working with python libs and getting out of that particular bind
<infinisil>
and nix is a purely functional language
<sphalerite>
chrisbarrett: as it happens I made a wrapper setup for weechat to solve just that problem. https://github.com/NixOS/nixpkgs/pull/25274 it's not in 17.09 but it's in unstable and will be in 18.03
ma27 has joined #nixos
<chrisbarrett>
sphalerite: !!! <3
<sphalerite>
actually the main problem I wanted to solve was closure size, but while I was at it I solved the python issue too :D
<tanonym>
If I delete the nixos-unstable channel and switch nixos back to nixos-17.09 and run a nixos-rebuild switch --upgrade command again, would that roll back the changes?
<sphalerite>
tanonym: not quite. It'll rebuild the system but create a new generation
Ivanych has joined #nixos
<tanonym>
Also is there a way to run upgrades from a specific channel without needing to rename the nixos labelled channel each time in nix-channel command?
<sphalerite>
it will put you back on 17.09, but not rollback as in go back t oa previous generation
jensens has joined #nixos
<tanonym>
Ah so reboot and select previous generation will roll back
<sphalerite>
No, that will only boot into the previous generation one-off
asuryawanshi has quit [Remote host closed the connection]
<tanonym>
or make the previous generation selected the active one.
<tanonym>
Ah.
<sphalerite>
nixos-rebuild switch --upgrade after switching nixos back will probably do what you want, it's just not rolling back properly
asuryawanshi has joined #nixos
<tanonym>
Okay. As long as I have a way to put it back on 17.09 instead of unstable if things really go tits-up.
<tanonym>
I have had upgrades completely brick my system in the past with other distros.
<sphalerite>
You can pass -I nixpkgs=path/to/nixpkgs to build from something other than the current nixos channel
<sphalerite>
and yeah that's extremely unlikely to happen. Worst case is you can't boot into the current system generation, in which case you can select a previous one at boot time.
<tanonym>
nixos-rebuild switch --upgrade -I nixpkgs=https://nixos.org/channels/nixos-unstable for example?
<sphalerite>
Unless you use nixpkgs-unstable or master (as opposed to nixos-unstable) in which case all bets are off
<sphalerite>
if you want to build straight from the channel via the web, `nixos-rebuild switch --upgrade -I nixpkgs=https://nixos.org/channels/nixos-unstable/nixexprs.tar.xz`
<sphalerite>
err actually you don't want the --upgrade in that case
<sphalerite>
With nixUnstable (2.0 prerelease), you can use `-I nixpkgs=channel:nixos-unstable` instead which is much nicer
<tanonym>
Been bumping up against a few things in 17.09 so I wanted to try the unstable, but wanted to make sure I can get back to a previous state if I go and break my system.
supercynic is now known as ertes-w
<sphalerite>
Yeah that'll be no problem. You probably also won't have any issues with unstable
<tanonym>
man pages for commands missing. nix-channel --help gives a no such manpage message.
<infinisil>
occivink: no idea what you mean by "status"
wavewave has joined #nixos
chrisbarrett has joined #nixos
<infinisil>
or nix-store -q --tree /nix/store/... looks nicer
freeman42x[NixOS has quit [Ping timeout: 256 seconds]
zzamboni has joined #nixos
<occivink>
I see, thanks. What I meant by status is with regards to optional dependencies, are they installed by default?
<occivink>
for example I installed mpv through nix on ubuntu 16.04, but I'm getting runtime errors regarding x11, so I figured maybe some optional deps didn't get pulled in
nschoe has quit [Quit: Program. Terminated.]
<sphalerite>
nix doesn't really have optional dependencies in that sense.
<occivink>
oh, I see
<tanonym>
well, wish me luck, finished upgrading to unstable channel for system. Hopefully the system doesn't grow legs get up and trash my apartment and run off down the road ;)
<sphalerite>
you'll probably find that very little has changed, besides newer and more software being available :D
<tanonym>
Well, I suppose I could try learning my way around a different debian-based distro before trying to work with kali.
chrisbarrett has quit [Quit: chrisbarrett]
chrisbarrett has joined #nixos
Lisanna has quit [Ping timeout: 260 seconds]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] joachifm pushed 5 new commits to master: https://git.io/vAmf9
<NixOS_GitHub>
nixpkgs/master 97c43bf Jan Malakhovski: firefox: common: cleanup configure phase
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
nixpkgs/master a2cf557 Jan Malakhovski: firefox: common: tiny cleanup
<NixOS_GitHub>
nixpkgs/master 21080e6 Jan Malakhovski: tor-browser: 7.0.1 -> 7.5.2
<infinisil>
tanonym: i'd still advise you not to use kali, at all
<tanonym>
Okay, I need to chown and chroot a couple things to get E 22 working. Is there a way to do that without needing to copy out the entire nix store hash.
<infinisil>
ah, but if it's needed for what you do then sure
asuryawanshi has quit [Ping timeout: 264 seconds]
<occivink>
infinisil: I was looking at this, but I'm not quite sure what to make of it. I guess there is a mismatch between the running x11 server and the library nix-mpv got compiled with
<tanonym>
The whole point of messing around with Kali Linux Revealed book was to learn about penetration testing.
<infinisil>
hmm alright, well i wouldn't use it for my day-to-day linux though
<infinisil>
your choice of course though
simukis has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Profpatsch opened pull request #34887: buildah: init at 0.11 (master...buildah-init) https://git.io/vAmJs
NixOS_GitHub has left #nixos [#nixos]
<tanonym>
I'm not going to use it for day-to-day. That would be NixOS or openSUSE.
<tanonym>
Or something like that.
<tanonym>
Dammit, won't let me chown and chmod the freqset module in E22
<tanonym>
says read-only even when I try running the command as root.
<Profpatsch>
grahamc: What’s the ofborg IRC-bot do?
<sphalerite>
Profpatsch: factoids, channel update info, autoban for spam (I'm not sure if that part is active) I believe
<infinisil>
Profpatsch: and it's very modular, gchristensen allowed me to write a bot on my own, running on my machine (but it's usually turned off because i got a problem with it)
<infinisil>
e.g. it does nixpkgs#34887 (hopefully)
pingveno has quit []
rauno has quit [Ping timeout: 276 seconds]
<infinisil>
oh, my internet is kinda down, it would've worked
pingveno has joined #nixos
<tilpner>
infinisil - Would {^_^} have answered, or another nick?
<infinisil>
tanonym: that's expected, you can't modify the store on your own and shouldn't (well it's possible but not advisable)
<Profpatsch>
Every big IRC channel needs their own whole bot framework. :P
<Profpatsch>
See #emacs, #haskell, …
<tanonym>
Well, now my DE has permissions error. Says it's either not owned by root or doesn't have the setuid bit set.
<infinisil>
Profpatsch: {^_^} is also in #nixos-dev i think
<Profpatsch>
rudybot in #emacs is fantastic btw
<tanonym>
Well, once you have #emacs you don't need the os :D
<tanonym>
Been playing around with spacemacs, interesting mod to emacs.
<Profpatsch>
Afaik it’s written in elisp and executed on an emacs instance in batch mode …
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] dywedir opened pull request #34888: ripgrep: 0.7.1 -> 0.8.0, install shell completions (master...ripgrep) https://git.io/vAmUw
NixOS_GitHub has left #nixos [#nixos]
<Profpatsch>
But I can’t find the source by searching for rudibot.
<etu>
Profpatsch: The source has probably rewritten itself, like you do with elisp ;)
<infinisil>
Profpatsch: I've also done some experiments with a nix-repl bot, buuut this kinda crashed gchristensen's bot infrastructure for some reason, so I couldn't do that
<etu>
But I should filter it's joins and quits, it would be nicer if it just stayed in the channel.
zzamboni has quit [Quit: Leaving.]
<infinisil>
etu: that's not gchristensen's bot
<infinisil>
that's the github bot
<etu>
oh
<infinisil>
I mean {^_^}
athan has joined #nixos
zzamboni has joined #nixos
<etu>
infinisil: Once I encontered someone on IRC that didn't like notices because this persons client reacted to all notices as it would mention this person... I went ahead ant kept using notices.
<etu>
No idea what client this was, but that behaviour seems broken.
<infinisil>
haha, well that's their problem
<genesis>
some peoples doesn't like private message too, we can't gess ...
vidbina has quit [Ping timeout: 256 seconds]
<infinisil>
genesis: I don't like private messages when people seem to be demanding private support for a problem, instead of asking in the relevant channel
<genesis>
when there is too much traffic on the channel, it keep the focus on one discussion at a time
<sphalerite>
+1 infinisil . More likely to get good help, since more people can offer their input, and more likely to be useful in the future to an observer or someone who reads the logs (especially with public logs)
<symphorien>
tanonym: you must go through setuid.wrappers to make some binary setuid
<tanonym>
Okay.
chrisbarrett has quit [Quit: chrisbarrett]
<ArdaXi[m]>
By the way (I'm on the Matrix bridge so I can't check but) if the channel allows it the GitHub bot can be configured to send notices without joining the channel first
chisui has quit [Ping timeout: 260 seconds]
<sphalerite>
ArdaXi: we used to have that and it was abused for spam iirc
<tanonym>
sphalerite, well, I cannot find anything online of how to do that, so for now I guess I just ignore it and don't use the gadget.
<tanonym>
It used to work in 17.09 so something changed with the upgrade to nixos-unstable channel.
<tanonym>
Good night for now.
<sphalerite>
That is also a good option. Modern CPU power management should make it unnecessary anyway.
<tanonym>
I had previously left it on auto anyway.
<tanonym>
Just kept pestering me each time I launched.
ma27 has quit [Quit: WeeChat 2.0]
ma27 has joined #nixos
<tanonym>
This computer is an older one, running an AMD e2 APU with a 6320 Radeon chip for the GPU in it. And a 1.6GHz clockspeed.
hyper_ch has joined #nixos
xcmw has joined #nixos
<tanonym>
Well, nothing on the wiki either. I have no clue what i'm supposed to tell the wrapper to do. Time to find a different DE then.
<hyper_ch>
samba ist still broken on unstable / unstable small
ma27 has quit [Quit: WeeChat 2.0]
<gchristensen>
hyper_ch: maybe you're the one to fix it!
ma27 has joined #nixos
<ottidmes>
I had to make a bunch of changes to make samba work
<ottidmes>
But you have this distinction between MIT kerboros and Heimdal (builtin in Samba) and for my active directory domain controller I had to use the Heimdal one, while the current samba package assumes the MIT one, so my changes might break other people setups
tanonym has quit [Ping timeout: 255 seconds]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] NeQuissimus pushed 1 new commit to master: https://git.io/vAmq9
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
nixpkgs/master 71a2ffa Tim Steinbach: linux: 4.15.2 -> 4.15.3
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Nazral is now known as Mollusque_amorph
freeman42x[NixOS has quit [Ping timeout: 260 seconds]
Mollusque_amorph is now known as Nazral
Rusty1_ has joined #nixos
asuryawanshi has quit [Ping timeout: 240 seconds]
raynold has quit [Quit: Connection closed for inactivity]
<Tucky>
Silly question: If I activate trim on a crypted SSD partition with allowDiscards, does it activate Trim for the whole disk or only for the partition? If I have a crypted partition without allowDiscard and a non crypted partition with fstrim enabled, what happen?
freeman42x[NixOS has joined #nixos
Neo-- has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
nixpkgs/release-17.09 20e23ce SJ Walters: pinentry: fix hash for patch...
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
[nixpkgs] copumpkin pushed 1 new commit to release-17.09: https://git.io/vAm32
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] copumpkin closed pull request #34780: Fix pinentry which broke due to upstream patch change (release-17.09...fix-pinentry-again) https://git.io/vALIq
ssmike has quit [Remote host closed the connection]
ssmike has joined #nixos
jeschli has joined #nixos
lord| has quit [Ping timeout: 260 seconds]
aarvar has joined #nixos
xcmw has joined #nixos
ndrei has joined #nixos
pkill9 has joined #nixos
ssmike has quit [Remote host closed the connection]
pkill9 has quit [Read error: Connection reset by peer]
<ndrei>
Hi, anybody manage to run Dropbox on unstable? I get a "no such file" (linker problem), but this time setting LD_LIBRARY_PATH to /nix/store/*gcc*5.4.0-lib/lib doesn't make it work
ssmike has joined #nixos
<dmj`>
Anyone use nix w/ npm?
<dmj`>
trying to generate nix expressions from package.json files, unsure which tool to use, they all look old
<freeman42x[NixOS>
clever, until now 3 <<was modified! expected hash>>
<clever>
freeman42x[NixOS: those are paths that got corrupted on-disk, probably due to not being fully written before the shutdown
patrl has quit [Quit: WeeChat 1.9.1]
<clever>
freeman42x[NixOS: you can fix them with `nix-store --repair-path /nix/store/foo`
iyzsong has quit [Ping timeout: 248 seconds]
<freeman42x[NixOS>
clever, oh
<freeman42x[NixOS>
clever, not possible to tell it to repair everything?
<clever>
freeman42x[NixOS: that can be done with `nix-store --verify --check-contents --repair` i believe
<freeman42x[NixOS>
clever, I'll give it a try, thank you
pallav has quit [Ping timeout: 260 seconds]
<freeman42x[NixOS>
clever, I don't really get how they ended up broken, I thought atomic commits would prevent this
<clever>
freeman42x[NixOS: ext4 only keeps the metadata in a journal by default, so an improper shutdown can null out half of a file
<clever>
freeman42x[NixOS: plus the host OS for the VM may not obey the same rules about flushing data to disk, and could loose writes
<freeman42x[NixOS>
clever, which bit of the error made you think it is related to corrupted store?
ditadi has joined #nixos
<clever>
nix/store/dhmqrk1mj2kmkq81i67qjpwjd4jdaxp2-findutils-4.6.0/bin/xargs: cannot execute binary file: Exec format error
<clever>
freeman42x[NixOS: this, for the most part
philipcristiano has quit []
philipcristiano has joined #nixos
jtojnar has joined #nixos
<freeman42x[NixOS>
clever, I run out of space on the host and the VM could no longer dynamically expand, that forced me to quit the VM. Although I might have been able to repartition with it on also.
ma27 has joined #nixos
<clever>
freeman42x[NixOS: ahh, and any writes that where pending at that moment where just thrown out
<clever>
freeman42x[NixOS: and due to ext4 writing the metadata before the data, the data itself was lost
humanoyd has quit [Quit: WeeChat 2.0.1]
<clever>
freeman42x[NixOS: and in cases like that, the best you can hope for is to suspend the guest, while retrying the writes, until enough space is freed up
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] matthewbauer opened pull request #34896: Filter out "null" from nix-buffer packages (master...patch-9) https://git.io/vAmln
NixOS_GitHub has left #nixos [#nixos]
<clever>
but it would obviously have to suspend to the host ram, and it wont survive a reboot of the host
<freeman42x[NixOS>
clever, I can't even hibernate my VM case not enough space on SSD, and SSD provisioning is currently under 7%, 10% being recommended
<freeman42x[NixOS>
s/case/because
<sphalerite>
infinisil: glad to hear it, sorry I didn't respond, I had to urgently attend to food matters
<clever>
freeman42x[NixOS: it would have to be a suspend to ram within the vm software, not the guest
<clever>
freeman42x[NixOS: something that just halts the virtual cpu, without saving the state anywhere, with the option to resume it shortly after
<genesis>
how can i write some dependancies on >=lua-5.3.4 in a derivation ?
ma271 has joined #nixos
<gchristensen>
genesis: Nix doesn't do dependency solving like that, you have to pass the lua you want, not describe the lua you want
ma27 has quit [Remote host closed the connection]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] peterhoeg closed pull request #34611: descent 1 & 2: use assets from gog.com with the dxx-rebirth project (master...p/descent) https://git.io/vNpyU
NixOS_GitHub has left #nixos [#nixos]
<Yaniel>
what would be the right way to pull in an additional source package as a build-time dependency of a package?
<genesis>
gchristensen : i've to install a recent lua manually and hope it takes it ?
<clever>
genesis: derivations will never use packages you have installed manually
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] shlevy pushed 2 new commits to master: https://git.io/vAm8S
<NixOS_GitHub>
nixpkgs/master 5b59084 Matthew Justin Bauer: Filter nix-buffer packages...
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
nixpkgs/master 038b893 Shea Levy: Merge branch 'patch-9' of git://github.com/matthewbauer/nixpkgs
<genesis>
i don't see the good way to pass the lua
<clever>
genesis: can you gist what you have so far?
ssmike has quit [Remote host closed the connection]
<genesis>
clever : my derivation ?
<clever>
genesis: yes
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] peterhoeg closed pull request #34896: Filter out "null" from nix-buffer packages (master...patch-9) https://git.io/vAmln
<ottidmes>
infinisil: I am probably forgetting something or doing something stupid, but I have a module file called networking.nix which I also want to import as part of my other systems to generate things like ssh hosts, so I want to import those module files and use the attribute set it contains as regular data to define some attributes
<infinisil>
ottidmes: um, I'm still not sure I understand, can you share the relevant files?
<NixOS_GitHub>
nixpkgs/master 567a72a Graham Christensen: perl.FileRename: fixup meta
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
[nixpkgs] grahamc pushed 1 new commit to master: https://git.io/vAm2y
<ottidmes>
clever: But I have like a list of them, for all my machines, and I do not want the attributes to be part of the config, but as data, to be used to set some attributes of the config
<infinisil>
ottidmes: just declare it as a list and not as a module then
<infinisil>
remove the arguments from the file
<clever>
ottidmes: what i do, is i create a new hostname.nix file for each host, and that is the only thing i put into imports
<Yaniel>
okay, now I (presumably) have downloaded both sources can I specify a postUnpack specifically for one of them? (need to run patchShebangs on the others' autogen.sh before the main one can build)
ma271 has quit [Ping timeout: 255 seconds]
<clever>
so hostname.nix contains everything that is unique to that hostname
<clever>
then each of those files, has a more common one in its imports field
ma271 has joined #nixos
<ottidmes>
infinisil: Yeah that would make import work, but I was just wondering, is there something out there I am missing that would allow me to keep the arguments
<infinisil>
yeah what clever suggests is the better way to go
i-am-the-slime has quit [Ping timeout: 240 seconds]
i-am-the-slime has joined #nixos
rogue_koder has joined #nixos
<ottidmes>
clever: hostname.nix for each host, check, I do that as well, just named them networking.nix, because it only contains network stuff in my case. Not sure what you mean with "that is the only thing i put into imports"
<clever>
ottidmes: my amd desktop just has imports = [ ./nixcfg/amd-nixos.nix ]; in the configuration, and basically nothing else
<clever>
ottidmes: the laptop has imports = [ ./nixcfg/laptop.nix ];
<infinisil>
ottidmes: or actually, the *right* way to do something like what you want, is to declare an option in networking.nix that defines your data, then put this into imports, then use config.your.option to refer to the data
<clever>
ottidmes: both amd-nixos.nix and laptop.nix, have imports = [ ./core.nix ];
<clever>
ottidmes: so it forms a tree, and i pick the most relevant starting point for that machine
Kristjan has joined #nixos
Kristjan has quit [Killed (Sigyn (Spam is off topic on freenode.))]
xcmw has quit [Ping timeout: 256 seconds]
<ottidmes>
clever: I guess I do this already, but I might be missing your point, I have your core.nix as well I import in each of my host, but I fail to see how this relates to my problem of trying to reuse the networking settings of the hosts for which I have the configs
<clever>
ottidmes: if you want to reuse a chunk of the config, you could make a class-name.nix file, which several hosts have added to imports
<ottidmes>
clever: I am doing that all over the place, the problem is not that I want to reuse config, I want to reuse config as data to generate new config attributes, but I guess I will just remove the arguments for now by importing the lib directly, or try and see if I cannot just supply the arguments at the import site
coot has joined #nixos
<infinisil>
ottidmes: what i suggested would work no problem
coot has quit [Client Quit]
zzamboni has joined #nixos
codedmart has quit []
<ottidmes>
infinisil: It would a variation of the data file, but it would make it typed, so that is a win. However I first like to try if I cannot just pass the attribute set at the top of my module to the import
codedmart has joined #nixos
coot has joined #nixos
dgonyeo has quit []
dgonyeo has joined #nixos
<ottidmes>
infinisil: moduleAttrs@{ config, pkgs, ... }: and then using moduleAttrs in my import call to those networking.nix files, seems to work the way I hoped it would, but I still get some errors (likely unrelated)
leat has joined #nixos
<infinisil>
ottidmes: that is very ugly, it's not how the module system is supposed to be used
<infinisil>
just get rid of the arguments if you don't need them, and if you do need them consider doing what I proposed
<infinisil>
well whatever works for you I guess, just saying
<ottidmes>
infinisil: Would it break anything? Maybe I am ignorant to the problems it might cause
<infinisil>
ottidmes: not in your case
<infinisil>
ottidmes: declaring options in networking.nix wouldn't work
<GlennS>
Anyone know if the container backend for NixOps can be made to work when you're using a non-NixOS system (in my case, Debian) as the host?
<infinisil>
ottidmes: well this whole networking.nix file can't interact with the module system at all
<ottidmes>
infinisil: My other plan was to just define my own module that has the same options as networking has, but in list form, so I would just include all the networking.nix files as part of imports and define the actual networking of the machine in question by looking itself up in the list
<ottidmes>
infinisil: Alright, you convinced me! I will go with my other plan
<infinisil>
GlennS: Nixos containers are nixos only
<infinisil>
GlennS: I'm pretty sure
<GlennS>
ok, thanks
<GlennS>
useful to know
Sonarpulse has joined #nixos
<infinisil>
ottidmes: Can you show the full files?
patrl has joined #nixos
patrl has quit [Client Quit]
alex`` has quit [Quit: WeeChat 2.0.1]
<ottidmes>
infinisil: Why? I could post some snippets, but I am not ready to publish the parts of my config I plan to share
Sonarpulse has quit [Client Quit]
Sonarpulse has joined #nixos
<infinisil>
ottidmes: it's kinda hard to know the best approach to use when I don't have the context
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nix] edolstra pushed 2 new commits to master: https://git.io/vAmos
<ottidmes>
infinisil: My setup is somewhat similar to what clever described, but I have a separate git repo for each of my hosts for things shared between them. So basically I have a hierachy of things, e.g. shared <- personal <- backupserver <- specificbackupserver, but instead of placing this in a tree I have it flattened as a list, since it generally is multiple inheritance instead of a simple tree.
zzamboni has quit [Quit: Leaving.]
vidbina has quit [Quit: leaving]
<ottidmes>
infinisil: And all those repos are symlinked in my nixcfg folder, which is also put on my NIX_PATH, so I can easily access all files with <nixcfg/personal/{config,pkgs,scripts,...}/...>
pkill9 has joined #nixos
<ottidmes>
infinisil: And now I have written some nix code that will automatically all the hosts available in nixcfg to my ssh settings, hosts file, etc.
asuryawanshi has quit [Remote host closed the connection]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vcunat pushed 1 new commit to master: https://git.io/vAmKB
<NixOS_GitHub>
nixpkgs/master 47d4792 Vladimír Čunát: knot-dns: 2.6.4 -> 2.6.5 (maintenance)
NixOS_GitHub has left #nixos [#nixos]
<infinisil>
hmm
asuryawanshi has joined #nixos
<ndrei>
just bumping an earlier topic, anybody have Dropbox working here? or maybe someone can help out with diagnosing the problem: seems to be a linker issue, which is usually fixed with setting "LD_LIBRARY_PATH", but not working anymore
<ottidmes>
infinisil: But as you warned me about, I just ran into the error that e.g. macAddress (I also generate wol-<hostname> aliases for machines that allow it) was missing, while it should become null by default, but as you say, I circumvent the module system this way, making it just raw attrsets.
<ndrei>
the error is "no such file.."
zzamboni has quit [Ping timeout: 240 seconds]
<infinisil>
ottidmes: yeah, expanding a bit on my suggestion: have a file stuff.nix with "{ options.stuff = mkOption { ... }; config.stuff = <your data>; }" then put this into imports, which allows you to use the config argument in "{ config, ... }:" at the top of every module file to refer to config.stuff
chreekat has joined #nixos
Wizek has quit []
coot_ has joined #nixos
bfrog has joined #nixos
Wizek has joined #nixos
<infinisil>
ndrei: if nobody can help you could open an issue on github
fingerzam has quit []
fingerzam has joined #nixos
coot has quit [Ping timeout: 248 seconds]
<ndrei>
infinisil: thanks, I'll do that
houli has quit []
houli has joined #nixos
pjan has quit [Remote host closed the connection]
<ottidmes>
infinisil: Yeah, I already made several modules with options, but I thought I did not have to in this case, but now I see that it actually is the best option. Now I will just have to see if I have to basically copy most of networking, or if I can reuse the submodule somehow for my, lets call it "networks" option that is a list of the networking module
chreekat has quit [Quit: quitting]
hakujin has joined #nixos
alex`` has joined #nixos
<Yaniel>
is there a variable denoting the current build dir?
<gchristensen>
$out ?
<gchristensen>
oh the build dir
<Yaniel>
I have a build-time dependency that I need to pull in in source form, run patchShebangs on autogen.sh and point the cmake of the actual package at
<ottidmes>
Can you refer to the options of other modules? Something like this: type = with types; listOf (submodule options.networking);
i-am-the-slime has quit [Ping timeout: 265 seconds]
<Yaniel>
alternatively can I have an unpack hook for something that is not "src"
Ralith__ has quit [Ping timeout: 256 seconds]
stephenjudkins has quit [Read error: Connection reset by peer]
endformationage has joined #nixos
i-am-the-slime has joined #nixos
<kiloreux>
How can I specify the dependencies version in nix file ?
<NixOS_GitHub>
[nixpkgs] nipav opened pull request #34900: yokadi: init at 1.1.1 (master...master) https://git.io/vAmXX
NixOS_GitHub has left #nixos [#nixos]
pie_ has quit [Ping timeout: 240 seconds]
<genesis>
Yaniel ; you can add sources to your derivation, or write script in the derivation to get it , if you cp yourstuff . in the script, it doesnt matter where it is, anyway , i think you can pwd in the script ...
cement has joined #nixos
szicari has joined #nixos
ssmike has quit [Remote host closed the connection]
<fendor>
good morning, is there some kind of blog post that explains some best practices when it comes to nixos? i am interested in using nixos for my personal laptop
Ralith_ has joined #nixos
rauno has quit [Ping timeout: 256 seconds]
<srhb>
fendor: None that I know of, but I'm not sure what's motivating that question. I'd say you'll discover "best practises" or "your preferred style" when you start building your config from simple to more complex. :)
rct has quit [Quit: WeeChat 1.9.1]
raynold has joined #nixos
<fendor>
srhb, well, maybem, but i dont know what kind of packages i should install for drivers best suited for my system, or how the interaction of channels with my configuration.nix actually works
stephenjudkins has joined #nixos
<fendor>
also, currently i have an stable channel and unstable for root and for my personal user
<srhb>
fendor: I haven't needed to do anything custom with respect to drivers, really (short of some nvidia stuff) and the rest is covered by the manual mostly, which is well worth a read and lots of references :)
<srhb>
fendor: By default a nixos system will have one channel called nixos, usually pointing at nixos-17.09
<fendor>
srhb, i looked through the manual, but i feel like i still dont understand, how to edit settings in my configuration. Especially, what do i need to edit in configuration, and could edit without changing the whole system e.g. daemons
<srhb>
fendor: Not sure I understand. When I need a certain service I usually look it up on the options page or in man configuration.nix
<srhb>
fendor: Perhaps if you could come up with a concrete question, it would clarify things.
<fendor>
srhb, huh, didnt know about `man configuration.nix`. I think i should read that through
<srhb>
It's essentially just a dump of all the options.
<infinisil>
Haha sure, it's rather small
<srhb>
Only 70k lines, it's not too bad :P
<fendor>
srhb, there is no real concrete question, i want to understand the OS more, able to fix my problems when they arise.
<srhb>
fendor: Step 1) Have a problem. :-)
<infinisil>
Exactly
<infinisil>
Practice is key
<fendor>
but for example, when using g++, i have the problem, that the library time is not found
<gchristensen>
!libraries
<srhb>
That's a great problem. :)
<gchristensen>
...
<gchristensen>
how does my bot work again? :)
<srhb>
gchristensen: It's just napping.
<gchristensen>
oh, so it doesn't
<fendor>
beg my pardon, i mean limits
dan_b has quit [Ping timeout: 240 seconds]
<srhb>
fendor: It's rather universal, libraries are not supposed to be on any kind of global paths like you're used to from other systems.
<infinisil>
Alright I am motivated to try and fix my bot
<srhb>
fendor: Every piece of software I develop has a nix expression, and yes, I recommend that.
<fendor>
srhb, gcc does not have an option like `withPackages`, where can i look it up what kind of options i have to set?
<sphalerite_>
fendor: you can use nix-shell without writing your own expression too though, which is mainly useful for one-off scripts. e.g. `nix-shell -p pkgconfig SDL2 SDL2_image` will give you a shell with gcc and those libraries
<srhb>
fendor: The manual has examples for building C programs.
<srhb>
fendor: In general, you'll want to feed them as buildInputs.
rauno has joined #nixos
<sphalerite_>
fendor: I think some people (Sonarpulse, abbradar?) are workign towards getting gcc working with a withPackages-like mechanism too though
<srhb>
fendor: Things like withPackages usually wrap some sort of compiler or interpreter that uses a package database, writing out a custom package database for each combination of packages you can come up with
<srhb>
fendor: Things like gcc will generally find its libraries through various environment variables, not through some package database.
roberth has quit [Ping timeout: 240 seconds]
<sphalerite_>
srhb: not necessarily. Python's is just putting together a symlink forest of the libraries basically
<srhb>
sphalerite_: A sort of package database! :-)
<sphalerite_>
I... guess? x)
<fendor>
ok, i think the first thing i have to find out is, where the limits library origins from
<srhb>
fendor: Not having a /usr/lib, /usr/include, etc.
<sphalerite_>
fendor: limits is a standard c++ header. gcc should find it just fine if you use it in a nix-shell
<sphalerite_>
iirc
<srhb>
Oh, "limits" the library. Sorry :P
<fendor>
welp, it doesnt
asuryawanshi has quit [Read error: Connection reset by peer]
<sphalerite_>
the source is #include <limits> and it's failing? How did you invoke nix-shell?
asuryawanshi has joined #nixos
<fendor>
nix-shell -p cmake automake gcc
<fendor>
im using cmake, btw :D
<genesis>
i wonder why we have to worry about buildInputs when it finish to be finally the same as in the top of the derivation
<sphalerite_>
and you ran both cmake and make in the shell?
<fendor>
yes
yann-kaelig has joined #nixos
<sphalerite_>
Huh. Is what you're trying to build free software?
<sphalerite_>
(if so I'll give it a shot)
<fendor>
nah, i found it
<fendor>
i have to remove the whole build directory
<fendor>
before invoking cmake
<fendor>
i guess there are build artifacts still left otherwise?
<fendor>
interesting. However, why does this not work without nix-shell if gcc is normally installed?
<sphalerite_>
yeah cmake stores a bunch of state in its cache, if you originally generated it outside the nix-shell that won't get overridden
<fendor>
ok, thanks, that explains this, thanks!
oida has joined #nixos
<sphalerite_>
because gcc isn't meant to be normally installed
<fendor>
:( that's unfortunate. so i have to always invoke nix-shell? because i'd like to use fish instead of bash
<sphalerite_>
It's not really ideal because of how gcc works. It would be much cleaner if there were just a plain gcc and libc was separate, and they were combined in a wrapper. But no, gcc needs to be built once for the bootstrap and then again together with the libc and … bleh. I don't understand all the details
<sphalerite_>
nix-shell -p foo bar baz --run 'exec fish'
<sphalerite_>
you may also want to customise your fish prompt to include the $name env var if $IN_NIX_SHELL is set
<fendor>
oh, nice!
<fendor>
how can i do that
<fendor>
?
<sphalerite_>
I don't know enough about fish to tell you that. But in zsh you'd add something like [[ -n "$IN_NIX_SHELL" ]] && printf "(%s)" "$name" somewhere in your prompt function
MP2E has joined #nixos
<fendor>
ok, nice, i will look it up
<sphalerite_>
you could also alias nix-shell (or something shorter) to nix-shell --run 'exec fish' if you don't want to type it out every time
<fendor>
then another question, i want to use teamviewer, i was able to install it by editing configuration.nix, adding an unstable channel and allowUnfree, but the daemon is never started, although I tell configruation nix to enable the teamviewer daemon
<Sonarpulse>
fendor: i once thought about it
<Sonarpulse>
haven't done anything hyet
<sphalerite_>
Sonarpulse: the gccWithPackages thing?
<srhb>
fendor: What do the teamviewer logs say, assuming it logs anything?
<Sonarpulse>
sphalerite_: yeah
<sphalerite_>
Sonarpulse: ah right. Oh yeah, I hear some cross stuff got merged? Does that mean stuff works well now?
<fendor>
srhb, you mena when i try to start the daemon, teamviewer or some other logs?
<srhb>
journalctl -u teamviewer presumably
<srhb>
fendor: teamviewerd apparently :)
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<srhb>
fendor: Looking at the service definition, it looks like it logs to /var/log/teamviewer actually.
<troydm>
btw when I boot install CD in virtualbox I have nixos-manual.service failed to start, anyone knows why?
<troydm>
and offcourse alt+f8 doesn't works
<Sonarpulse>
sphalerite_: yeah pretty well!
<sphalerite_>
troydm: that's weird, anything useful in the log?
<sphalerite_>
Sonarpulse: awesome! So would I be able to get, say, a compiler for MIPS with musl or something easily now? Or is it only platforms nixpkgs actively targets?
<ndrei>
I'm provisioning a macos machine with nix, but there is not "nixos-rebuild", how to I set it up with a configuration.nix?
<fendor>
srhb, no logs, when starting with systemctl, it claims that there is no such service unit
<fendor>
i am sorry, i have to rush away, but i going to come back soon, sorry :(
<srhb>
fendor: You've defined it in a let binding that you're never using, it appears.
xcmw has quit [Ping timeout: 276 seconds]
<srhb>
Uh.. Actually you're passing it as an argument to rootUnstable.
<ottidmes>
ndrei: nixos-rebuild is of NixOS, so unless you reinstall your MacOS machine with NixOS you will be limited to just Nix the package manager. If you mean how to configure your own Nix packages, there is the Nix and Nixpkgs manual, and this post might help: https://blog.flyingcircus.io/2017/11/07/nixos-the-dos-and-donts-of-nixpkgs-overlays/
<srhb>
fendor: Anyway, move it to the big set in the "in ..." part and you should be good to go, though I think you also need to move nixpkgs.config there.
<ottidmes>
ndrei: Or you will have resort to running NixOS in a virtual machine of some kind
fendor has quit [Ping timeout: 256 seconds]
<ndrei>
ottidmes: thank you! all right, I guess I was expecting that Nixos could manage everything it knows how to on macos. I'm running Nixos on my main Linux machine, this is just a VM to compile iOS projects.
<sphalerite_>
ndrei: there's also nix-darwin which gives you something like nixos config for macos
<sphalerite_>
Sonarpulse: is there a document somewhere explaining how to use the new cross stuff?
<ndrei>
thanks
<Sonarpulse>
philipcristiano: manual
<Sonarpulse>
oops wrong ping
<Sonarpulse>
sphalerite_: manual
<Sonarpulse>
has cross chapter
<Sonarpulse>
and stdenv chapter talks about dependennices
<sphalerite_>
oh great, thanks
<sphalerite_>
(if only we had an online version of the unstable manual)
<ndrei>
nix-darwin looks awesome! anyone here using it as a daily driver? looks great
<Sonarpulse>
sphalerite_: its been a few weeks actually
<ottidmes>
Does anyone have experience with reusing options defined in other modules? I tried reusing the networking module like so: networkingOpts = { ... }: { options = options.networking; }; and then referencing to it in type = with types; listOf (submodule networkingOpts);
<Sonarpulse>
i think there might be something readable there already?
<srhb>
ottidmes: Am I understanding correctly that you just want to duplicate the tree of "types" so to speak?
<sphalerite_>
or was it merged into 17.09?
<ottidmes>
Which seems to work, although it seems to fail on submodules within the networking module: The option `networks.[definition 6-entry 1].interfaces.eth0.ip4' does not exist
<ottidmes>
shachaf: Exactly
<ottidmes>
whoops
<srhb>
There's a name I haven't heard in a while!
<srhb>
:-)
<ottidmes>
autocomplete is great until you make mistakes like that
<sphalerite_>
seems like a weird mistake for it to make. Don't most clients autocomplete based on who last spoke?
<ixxie>
ndrei: I am pretty sure copumpkin is ;)
<ottidmes>
sphalerite_: It seems to, when I type "s" I get your nickname, I probably typed sh<Tab>
<ndrei>
ixxie: cool, thanks
<sphalerite_>
ah so it's a case of "autocomplete won't fix your typos" ;)
<copumpkin>
LnL and several people in #nix-darwin are :)
<sphalerite_>
(or "autocomplete doesn't do fuzzy matching")
<sphalerite_>
:D
<sphalerite_>
ooooh, `nix repl` has syntax highlighting??
<gchristensen>
:o
sigmundv has quit [Ping timeout: 264 seconds]
djahandarie has joined #nixos
xcmw has joined #nixos
<djahandarie>
Is there any existing tech to do a nixos upgrade, some tests (is the httpd returning the right result on this address, etc.), and rolling back if they fail?
<djahandarie>
Not that this would be hard to implement, but don't want to reinvent the wheel.
<srhb>
djahandarie: I think most people do this with custom systemd units, no real infrastructure for it.
<sphalerite_>
djahandarie: the folks at LumiGuide have some sort of automatic rollback but I don't know if they published it. They mentioned it in their talk at nixcon though
fendor has quit [K-Lined]
<sphalerite_>
huh, what did fendor do??
<djahandarie>
Fair enough. It seems like this would be a really compelling feature ("safe" automatic upgrades) of NixOS if it was built-in.
<ottidmes>
srhb: But with regards to my question, indeed, I just want to reuse the options defined in networking, and instead of crashing with defaultGateway does not exist, with options = options.networking; it now crashes on interfaces.eth0.ip4, if I remove it, it will crash on name does not exist, so apparantly is does not copy over the options of the submodule of interfaces
<srhb>
ottidmes: I wonder if you need to do something like mkAliasDefinitions. Do you have something like a test case? I'm not sure exactly why this is...
<srhb>
ottidmes: Sorry, I was still investigating, and came up short :-P
<ottidmes>
srhb: Ah, thanks, if you want I can see if I can create a test case
coot_ has joined #nixos
rauno has quit [Remote host closed the connection]
<srhb>
Or maybe you can just wrap and merge them by hand. Not sure...
<srhb>
Funny, I've never actually tried to do this, it seems useful!
reinzelmann has quit [Ping timeout: 265 seconds]
coot has joined #nixos
<infinisil>
Oh my god
ixxie has quit [Quit: Lost terminal]
<infinisil>
I was just able to successfully use a module system function in nixpkgs/lib that was not a single usage in nixpkgs, and it's exactly what I need
<srhb>
:o
<srhb>
infinisil: which?
coot_ has quit [Ping timeout: 256 seconds]
<infinisil>
My module system understandment level has been upgraded
<ottidmes>
From the description of mkAliasDefinitions, it seems to be what I need, but I am not quite sure how to use it yet
<infinisil>
ottidmes: this might be the case indeed!
ssmike has quit [Remote host closed the connection]
ssmike has joined #nixos
asuryawanshi has quit [Remote host closed the connection]
asuryawanshi has joined #nixos
griff_ has joined #nixos
Ankhers_ has joined #nixos
<ottidmes>
infinisil: You said you were succesful in using it, could you give me an example, from the description I gather it basically copies the options, which is what I want, but then the example assigns it to config, which is not what I expected
razzy has quit [Read error: Connection reset by peer]
<LnL>
no, you only need the public key on the builders
<Ankhers_>
roots public key, or the public key attached to the build_rsa key?
<Ankhers_>
LnL: ^^
<infinisil>
ottidmes: it basically does config.foo = config.bar, makes everything from bar apply to foo, but correctly, and for that it needs the option definition
<infinisil>
You still would need to define bar with the same type of foo yourself
<ottidmes>
infinisil: Thanks for clearing that up, that last part is exactly what I would want to reuse, so it seems this particular function will not help me
<infinisil>
ottidmes: that last part?
<ottidmes>
defining the type yourself
<sphalerite_>
Sonarpulse: got a MIPS toolchain on its way now hopefully, this is exciting! Thanks for the pointers
<ottidmes>
I am only interested in reusing the options part, including it types
<infinisil>
Ah, that can be obtained by something like options.foo.type
<LnL>
Ankhers_: the build host (where you run nix-build) connects to the builders so you need the private key on the build host and the public key on the builders
<Sonarpulse>
sphalerite_: np!
dbe_ has quit [Ping timeout: 240 seconds]
<Sonarpulse>
sphalerite_: btw, if you can fix the existing ones
<sphalerite_>
fix the existing ones?
<srhb>
ottidmes: I can't seem to make your example not work.
<ottidmes>
srhb: As in, you run into the same problem, or the example itself?
<srhb>
ottidmes: No, it works like you wanted it to.
<infinisil>
srhb: it's probably gonna break with mkIf's and mkOrder, and such
<srhb>
Probalby.
<Ankhers_>
LnL: I think I found my issue. These commands are being run as root in my host system, right?
<LnL>
yeah the daemon initiates the connections and that runs as root
<sphalerite_>
Sonarpulse: fix the existing ones?
<LnL>
Ankhers_: 2. on in the comment :)
<Sonarpulse>
sphalerite_: the fuloong mini pc lol
<Sonarpulse>
its mips64 but its not 64-bit!
<Sonarpulse>
need to add missing LDEMULATION too
<sphalerite_>
oh heh
<Ankhers_>
LnL: Yeah, I made a dumb mistake and setup the ssh alias as my user, not as root...
<sphalerite_>
didn't realise that was MIPS too. I'll see what I can do :)
<srhb>
ottidmes: Everything looks fine to me. Did that test case really break for you?
<Ankhers_>
LnL: Thank you so much for the help here.
<ottidmes>
srhb: Havent tried the test case itself, but my case should be as good as the same, I will try it now with just the test case
humanoyd has quit [Quit: WeeChat 2.0.1]
<srhb>
ottidmes: Hang on, were you indexing into interfaces as if it were a set?
<freeman42x[NixOS>
would it make sense to package: https://www.syntevo.com/smartgit/ ? it is free for non-commercial use and one of the best Git GUI clients
kiloreux_ has quit [Remote host closed the connection]
<srhb>
But you defined that as a list, did you not?
<ottidmes>
srhb: Yeah, but I convert it to a attrset: networks = listToAttrs (map (network: { name = network.hostName; value = network; }) config.networks);
<srhb>
Errr
<srhb>
Am I missing something, attrValues takes a set, right?
<sphalerite_>
I'm a bit confused by the vim customisation thing. I want to make a customised vim with a small closure size, i.e. no GTK and stuff, but I'm not sure how to disable those bits. Any pointers?
<ottidmes>
srhb: But if you say you do not get the error that one of the attributes on the interfaces is undefined, then it likely is some misuse of the values that causes the error
Neo-- has quit [Ping timeout: 256 seconds]
<srhb>
ottidmes: To be very clear it looked to me like you were treating network.interfaces as if it were a set in at least one of the errors.
<srhb>
But I may be mistaken.
<srhb>
Regardless, the error message was a bit confusing.
<ottidmes>
srhb: ${interface.ip4[0].address} is probably what I am doing wrong?
<ottidmes>
In the test case I sent you I did not have anything that uses the interfaces submodules, so it is not used and causes no errors for me as well
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<sphalerite_>
ok, I think I've got it now.
<ottidmes>
srhb: If you change the extraHosts line to this: 127.0.0.1 ${network.interfaces.eth0.ip4[0].address}, it should give you the same error as I am seeing
<srhb>
ottidmes: You probably want elemAt
<ottidmes>
srhb: Nope, or it at least gives me the same error: 127.0.0.1 ${(elemAt network.interfaces.eth0.ip4 0).address}
<ottidmes>
srhb: The option `networks.[definition 1-entry 1].interfaces.eth0.ip4' does not exist
<ottidmes>
srhb: So it seems to be about ip4 on the interface, not about what is in ip4
<srhb>
ottidmes: OK, so we're not getting the interfaces submodule properly
<ottidmes>
srhb: Right, it all points to that being the problem
<ottidmes>
srhb: And that is the first submodule I am using, so it seems to be about submodules in general that are problematic with the approach: networkingOpts = { ... }: { options = options.networking; }; at least
chrisbarrett has joined #nixos
coot has quit [Quit: coot]
coot has joined #nixos
NixOS_GitHub has joined #nixos
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
[nixpkgs] jensbin opened pull request #34903: graph-easy: init at 0.76 (master...graph-easy_0.76) https://git.io/vAYUo
GiGa has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] 7c6f434c pushed 1 new commit to master: https://git.io/vAYUi
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
nixpkgs/master fb8379c Michael Raskin: lispPackages, lispPackages.quicklisp-to-nix: 2017-07-25 -> 2018-01-31...
chrisbarrett has quit [Quit: chrisbarrett]
Ankhers_ has quit [Quit: ERC (IRC client for Emacs 25.3.1)]
GiGa is now known as GiGa|laptop
GiGa|laptop is now known as GiGa
<ottidmes>
srhb: I am afraid in other to solve this, I would need to have a deep understanding of the internals of NixOS modules, something I might look at, at some point, but for now I will just copy the networking options that are relevant to me.
<srhb>
ottidmes: Fair enough. I'm not sure how to even get _at_ the subsubmodules at this point.
<GiGa>
Evening all
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] LnL7 pushed 1 new commit to staging: https://git.io/vAYT3
<NixOS_GitHub>
nixpkgs/staging 81674e0 Daiderd Jordan: libclc: use clang-4
NixOS_GitHub has left #nixos [#nixos]
<ottidmes>
srhb: Me neither. Anyway, thanks for thinking along!
<infinisil>
ottidmes: What's your most up-to-date draft of what you're trying to do?
<NixOS_GitHub>
[nixpkgs] bjornfor pushed 1 new commit to release-17.09: https://git.io/vAYkv
chrisbarrett has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] bjornfor closed pull request #34850: [backport] make-fonts-cache: remove CACHEDIR.TAG file from Nix store (release-17.09...backport-removal-of-fc-cache-cachedir-tag) https://git.io/vAqv5
NixOS_GitHub has left #nixos [#nixos]
rauno has quit [Ping timeout: 252 seconds]
chrisbarrett has quit [Client Quit]
chrisbarrett has joined #nixos
<lejonet>
srhb: I've created a new branch, ceph-adevress, to try and use that PR you mentioned me in, as a basis for my service module
<srhb>
lejonet: Oh cool!
<infinisil>
ottidmes: Isn't network.interfaces a list? then attrValues is a function on attrsets
lebel has joined #nixos
griff_ has quit [Quit: griff_]
asuryawanshi has quit [Read error: Connection reset by peer]
asuryawanshi has joined #nixos
<ottidmes>
infinisil: No, it is actually a loaOf value, i.e. listOrAttrsOf, which allows lists or attribute sets, which then get converted to attribute sets
<infinisil>
ah, i see
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] erictapen opened pull request #34904: mapmap: init at 0.5.0 (master...mapmap-pr) https://git.io/vAYIl
<lejonet>
srhb: he had, unlike me, properly given the package a go through, whereas I had only done the bare minimum to get ceph compiling so I could do my thang
<sphalerite_>
Sonarpulse: hello built successfully!! About to test it *drum roll*
<lejonet>
srhb: even tho I said I wanted to both fix the ceph package and a service module, if someone has fixed the package neater than me, I don't see why I should try and do my own :P
<srhb>
Indeed :)
<Sonarpulse>
sphalerite_: nice!
rauno has joined #nixos
<lluchs>
Does someone know how to make the GTK file selector remember the last directory it was in?
szicari has joined #nixos
<lluchs>
e.g., if I press Ctrl+O on Evince, it shows the last directory I opened a PDF in on Arch Linux, but on NixOS I always get my home directory.
ndrei has quit [Quit: WeeChat 2.0]
<lluchs>
(I don't have full GNOME on either Arch Linux or NixOS)
<sphalerite_>
Sonarpulse: it woooooorks :D
<Sonarpulse>
sphalerite_: :)
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] sjmackenzie opened pull request #34906: rustBuildCrate: add a postInstall phase (master...rust_build_crate_postinstall) https://git.io/vAYLw
NixOS_GitHub has left #nixos [#nixos]
<sphalerite_>
Sonarpulse: awesome work. I think I also have dtz and bgamari to thank?
<ottidmes>
infinisil: I agree, I would not keep it as it is, but this was just to rule out that it had nothing to do with my previous notation
<infinisil>
ottidmes: Alright I have a suspicion
<Sonarpulse>
sphalerite_: yeah they did a huge number of per-package fixes
<Sonarpulse>
more than me
<sphalerite_>
lluchs: oh hi! I know you from somewhere :D not sure of the answer to your question but I'll look into it since I'd like to know myself too
<Sonarpulse>
I did infra and bare minimum of per-package fixes to prove concept / my own needs
<infinisil>
ottidmes: networking.* are options meant to be used on top-level, which means it should be able to access and change any option. submodules however don't allow for that, so wrapping every network.* option in a submodule might not make sense at all
* sphalerite_
tries building vim
<lluchs>
sphalerite_: Hey :D
<lluchs>
Okay, so at least it's not only broken on my system :)
<infinisil>
ottidmes: and there's a lot of options in networking..
<ottidmes>
infinisil: Wouldn't I be just able to merge the networks entry of the machine in the regular networking? And regardless, the question of reuse of options, is still a useful thing to be able to do in other use cases
i-am-the-slime has joined #nixos
* infinisil
thinking
deanman has quit [Remote host closed the connection]
occivink has left #nixos ["WeeChat 2.0.1"]
<ottidmes>
infinisil: For this use case I am just as well of with defining my own module and only including the attributes I actually want to use across machines, hostName, hostId, static ip4 address, macAddress (wol), and then just set them as part of the config of that module to the actual networking options, but I can see myself wanting to reuse options of other modules in the future, if I think of more complex things
<infinisil>
ottidmes: oh you know what, try prefixing everything in the submodule with networking..
vaninwagen has joined #nixos
<infinisil>
because all these networking options are defined with networking as a prefix, and since we're using normal options as a submodule this might be the problem
alexteves_ has joined #nixos
<infinisil>
ottidmes: Well I'm pretty convinced this isn't the right approach by now
<ottidmes>
infinisil: I was already convinced that what I did was the wrong approach, the networkingOpts = { ... }: { options = options.networking; }; but I think the thing I am trying to achieve is valid
<srhb>
type = submodule { options = options.networking; }; would cause the same problem though
<sphalerite_>
lluchs: so apparently there's a "startup-mode" setting for it which can be set to cwd or recent (the "recent places" thing at the top of the navigation sidebar). Anything other than that is up to the application.
<sphalerite_>
lluchs: this is from reading gtk source code, goodness knows if there's something in layers above it (GNOME? Evince itself) that changes that
<infinisil>
ottidmes: An import is the way to go really, it's exactly the thing to use for wanting to set top-level options
<infinisil>
ottidmes: i mean the imports attribute
<sphalerite_>
lluchs: dconf-editor should let you choose between cwd and recent, AFAIU
griff_ has joined #nixos
<infinisil>
srhb: I'm pretty sure submodule { ... } is just shorthand for submodule ({ ... }: { ... }) anyways
<ottidmes>
infinisil: I am not sure we are thinking about the same, I am already using imports
<lluchs>
sphalerite_: Cool, thanks for looking that up. I wonder why the default is different on NixOS and Arch though.
<infinisil>
ottidmes: I mean to rewrite your network.nix as a normal module with networking.hostName = ... options
<infinisil>
hold on
<shachaf>
hi srhb
<infinisil>
Well I give up, no idea
<srhb>
shachaf: Hi shachaf. :)
<ottidmes>
infinisil: Either you, or I seem to miss the point, because what you propose has nothing to do with what I want to achieve. Sure I can set my networking options like that, of course I know that, but I want to reuse the settings of multiple such machines, and sure I can write my own module with options for that, that part is known, the only question that remains is why I would not, in theory (forget my use
<ottidmes>
case), copy the options of some other module and reuse them. Your point about prefixes might indeed be the cause, but then still the question remains, how would you work around that, if you were so inclined
ssmike has quit [Remote host closed the connection]
asuryawanshi has quit [Remote host closed the connection]
<infinisil>
ottidmes: you can indeed reuse options, but networking isn't an option, it's an attrset that might contain options and more attrsets of options
orivej has quit [Ping timeout: 268 seconds]
asuryawanshi has joined #nixos
<infinisil>
And if you were able to use the whole networking attrset to declare more options, it might not work, because you could define a new option in networking.* that reuses the options of networking itself, which is something like infinite recursion
i-am-the-slime has quit [Ping timeout: 240 seconds]
<infinisil>
This is about 50% speculation here, but I'm fairly certain of this being the problem with wanting to reuse whole attrsets of options
<lejonet>
Hmm, where would I found the tmp build directory that a derivation that wants to be compiled use? I get a error 2 with the ceph pr, but the scrollback is limited so can't find what it actually errors out on
halfbit has quit [Quit: WeeChat 2.0.1]
<sphalerite_>
Sonarpulse: even vim runs, if I really nastily hackily remove the docs and some syntax definitions from its tree (the router I'm building for only has 64MB of RAM to put the stuff in)!
<sphalerite_>
This is awesome
<sphalerite_>
lejonet: nix-build --keep-failed and it'll be in /tmp/nix-build-foo
<sphalerite_>
lejonet:before you do that though!
bfrog has joined #nixos
tester123 has joined #nixos
<sphalerite_>
lejonet: nix-store --read-log /nix/store/<drv file> will also get you the log from a previous build
bfrog is now known as halfbit
<tester123>
How can one disable/re-enable internet access from the terminal in NixOS?
<lejonet>
sphalerite_: neato, thanks :D
<ottidmes>
tester123: That will depend on how you configured your internet access
<sphalerite_>
tester123: depends on how it's set up. If you're using network-manager, systemctl restart network-manager; if you're using plain wpa_supplicant for wifi, systemctl restart wpa_supplicant
<infinisil>
tester123: depends on what you're using for network management, if you're using wpa_supplicant, then you can use `systemctl restart wpa_supplicant`
<Sonarpulse>
sphalerite_: glad to hear it! :)
<infinisil>
haha
chrisbarrett has quit [Ping timeout: 255 seconds]
<Sonarpulse>
keep the success stories coming!
<sphalerite_>
infinisil: hah! Not this time!
<tester123>
@infinisil: I mean to disable for a period of time and then come back and reenable it.
<sphalerite_>
tester123: use stop/start instead of restart
<gchristensen>
there is a NixOS article on lobste.rs' front page, if anyone wants to go upvote :)
<infinisil>
gchristensen: \o/
<tester123>
`systemctl stop wpa_supplicant` disable ethernet, or just wifi?
<tester123>
Does*
i-am-the-slime has joined #nixos
<sphalerite_>
tester123: but if this is wifi we're talking about you may want to use rfkill to actually power off the chip and save power. If you're using network-manager you'll want to access that through that
<sphalerite_>
tester123: only wifi
<sphalerite_>
tester123: it also doesn't power it off
<sphalerite_>
tester123: you can always disable ethernet by unplugging it ;)
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] bjornfor pushed 1 new commit to master: https://git.io/vAY3C
<NixOS_GitHub>
nixpkgs/master 5043217 Andrew Dunham: massren: init at 1.5.4
<TimePath>
sphalerite_: or plugging it with something that isn't ethernet - did you know USB cables will happily fit in there? :)
asuryawanshi has quit [Ping timeout: 276 seconds]
<sphalerite_>
TimePath: nice
szicari has joined #nixos
<infinisil>
huh what
chreekat has joined #nixos
<chreekat>
I'm being told I have 'too many levels of symbolic links' doing things like nix-shell and nixos-rebuild switch. I haven't, to my knowledge, done anything 'weird'. What could be causing that?
<infinisil>
chreekat: what command are you running to get that?
<freeman42x[NixOS>
`nix-build -A hello` run in nixpkgs root will build it based on the expression in the git clone. What is the nix-env install equivalent of doing that?
romildo has joined #nixos
<sphalerite_>
freeman42x[NixOS: to install hello from there? nix-env -f . -iA hello
romildo has quit [Client Quit]
<sphalerite_>
freeman42x[NixOS: also your unbalanced bracket really bothers me :p
<chreekat>
infinisil: 'sudo nixos-rebuild switch' as one example
<sphalerite_>
chreekat: what's your NIX_PATH?
<freeman42x[NixOS>
sphalerite_, have you read Gödel, Escher, Bach book? :D
<chreekat>
Wait, I *did* do something "weird" that might have caused it.
<wzy8L-B2[m]>
I've been using Nixos for a while but I'm not getting any updates. I'm on the unstable channel but Firefox is still on version 55. Am I missing something?
<infinisil>
wzy8L-B2[m]: you need to update manually with nix-channel --update
<infinisil>
or nixos-rebuild switch --upgrade
<chreekat>
I experimented with switching my env to a different profile. Then I tried to switch 'back'. Undoubtedly I pointed it to the wrong ~/.nix-whatever
<sphalerite_>
freeman42x[NixOS: not the whole thing. Went way over my head
<sphalerite_>
freeman42x[NixOS: might need to try again one of these years :D
<chreekat>
Which one *should* I have used to switch back to my standard profile?
<chreekat>
Now I have a ~/.nix-profile that points to itself.. heh
<sphalerite_>
rm ~/.nix-profile should do it :)
<freeman42x[NixOS>
sphalerite_, it was kinda related, with [NixOS you entered a context... and it bothers you that it did not end :D working on a fix now
<sphalerite_>
actually no I don't see how that would fix it
<sphalerite_>
freeman42x[NixOS: oh yeah I understand that much :D
<infinisil>
is what it is by default
<wzy8L-B2[m]>
infinisil: it updated 2 symlinks. 'Nixos-rebuild switch --upgrade' does nothing either
<freeman42x[NixOS>
sphalerite_, thank you, works like a charm!
<infinisil>
wzy8L-B2[m]: well if you did nix-channel --update, then you can just `sudo nixos-rebuild switch"
freeman42x[NixOS has quit [Quit: Leaving]
<chreekat>
sphalerite_: that got rid of the 'too many symlinks', but now 'nix-env -iA nixos.hello' says 'Permission denied' opening lock file /nix/var/nix/profiles/default.lock
<wzy8L-B2[m]>
Nothing there either
<sphalerite_>
chreekat: ah then maybe you need to create the link as infinisil said, so ln -s /nix/var/nix/profiles/per-user/$USER/profile ~/.nix-profile
<chreekat>
sphalerite_: yep, that totally fixed it, I got my old env back and everything
<sphalerite_>
\o/
<chreekat>
So I guess that's the 'plumbing' way of setting my env back to the standard -- would 'nix-env -S /nix/var/nix/profiles/per-user/$USER/profile' be the 'porcelain' way? Or is there something more ergonomic?
freeman42x]NixOS has joined #nixos
<infinisil>
chreekat: haha i didn't even know about -S, but it seems to do exactly that
<freeman42x]NixOS>
sphalerite, there, I fixed my nickname. But now you won't know how it started, only how it ended. (couldn't find any good character to put there, need IRC nick validator)
<chreekat>
infinisil: :) I'm looking at using a profile as clean way to maintain a gc root for a dev environment for a project
<infinisil>
chreekat: use indirect roots for that
<chreekat>
what's that
chrisbarrett has joined #nixos
griff_ has quit [Quit: griff_]
<chreekat>
I was vaguely under the impression that I could just point a symlink at the right store path to get a gc root, but I'm not really aware of the relative pros/cons
<sphalerite_>
freeman42x]NixOS: aaaaaaah it's just as bad xD
<infinisil>
chreekat: that's exactly what indirect roots make work: nix-store --add-root $PWD/rootlink --indirect -r /nix/store/...
chrisbarrett has quit [Client Quit]
<chreekat>
infinisil: ah ok
<freeman42x]NixOS>
sphalerite_, just between you and me, that underscore at the end bothers me too :)) Let's say I could drop the x after the 42... and use that free char to close the [, like freeman42[NixOS] but unfortunately I can't since everything is cooler if it has a letter x in it
<infinisil>
this adds a symlink $PWD/rootlink which prevents /nix/store/... from being gc'd as long as it's alive
chrisbarrett has joined #nixos
<sphalerite_>
freeman42x]NixOS: should I change to xX_sphalerite_Xx? :D
<infinisil>
chreekat: the result symlink you get with nix-build is such an indirect root
<freeman42x]NixOS>
sphalerite_, god please no, that would be so bad it made me say religious thingss
<infinisil>
chreekat: note that the build output usually doesn't contain any reference to the build tools used, so they would still be garbage collected
<sphalerite_>
chreekat: infinisil unless you have gc-keep-derivations and gc-keep-outputs set to yes in nix.conf
<sphalerite_>
which makes sense when you're using nix like this :)
<infinisil>
I actually think the --add-drv-link option for nix-build is exactly what you want chreekat, just found this option by looking through the man page
dbe_ has joined #nixos
<sphalerite_>
infinisil: I think that may result only in the drvs not being GCd (unless gc-keep-outputs = yes), which isn't super helpful
<chreekat>
wrinkle: this project is really only using nix-shell, which doesn't have such an option
<chreekat>
To avoid the XY problem, let me state that my real problem is that a nix-collect-garbage wiped out about an hour of dependency building that I want to avoid
<infinisil>
chreekat: yeah i understand
<infinisil>
sphalerite_: but nix-build creates result too, right? so it should neither gc the dependencies nor the build result
<chreekat>
cool, just making sure i wasn't causing ppl to bark up the wrong tree
<sphalerite_>
chreekat: you will need a derivation of some sort to use as a gc root. Simplest way to do that is to write a shell.nix, e.g. with import <nixpkgs> {}; runCommand "shell" {buildInputs = [foo bar baz];} "env > $out". Then you can nix-build that and it will have references to all the inputs. It's a horrible hack but should do the trick :D
arjen-jonathan has quit [Ping timeout: 276 seconds]
chrisbarrett has quit [Quit: #emacs]
<sphalerite_>
infinisil: yes but it may gc the outputs of drvs within the dependency tree. Again, only if the gc options aren't set to yes
<infinisil>
sphalerite_: haha nice
chrisbarrett has joined #nixos
<infinisil>
maybe it could even be done in shellHook
deanman has joined #nixos
<sphalerite_>
infinisil: what, building the derivation you're shelling into? I love it xD
oida has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
nixpkgs/master 5e62091 Vladimír Čunát: Merge #34882: linux: use absolute paths for compilers...
<NixOS_GitHub>
nixpkgs/master 3d24c5e Vladimír Čunát: linux: use absolute paths for compilers...
<NixOS_GitHub>
[nixpkgs] vcunat pushed 2 new commits to master: https://git.io/vAYCs
NixOS_GitHub has left #nixos [#nixos]
jtojnar has quit [Ping timeout: 255 seconds]
<sphalerite_>
oh no, git gc --aggressive uses lots of memory
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] samdroid-apps opened pull request #34911: vim-pencil: init at 2017-06-14 (master...add-vim-pencil-2) https://git.io/vAYCA
NixOS_GitHub has left #nixos [#nixos]
vaninwagen has quit [Ping timeout: 256 seconds]
ssmike has quit [Remote host closed the connection]
ssmike has joined #nixos
<infinisil>
sphalerite_: is that unexpected?
<sphalerite_>
infinisil: not entirely but it is a bit of a pain on my chromebook with 2G of RAM… I've plugged in a USB stick for swap now, which should be fun x)
<infinisil>
haha
<troydm>
what's the most convenient way to remove old generations?
<infinisil>
sphalerite_: you seem to always have problems with your chromebook
<sphalerite_>
I might try switching to a cross-compilation-based system. That would save a lot of space and headaches, possibly, but might also cause more
<sphalerite_>
troydm: no, you'll need to run nixos-rebuild switch afterwards to regenerate them
<sphalerite_>
but it will *break* the old boot entries
<infinisil>
troydm: `nixos-rebuild boot` will do too
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
nixpkgs/master 6457349 Sam Parkinson: vim-pencil: init at 2017-06-14
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
[nixpkgs] bjornfor pushed 1 new commit to master: https://git.io/vAYlM
<ndrei>
To the people using Nix on Darwin, how to you install darwin-specific packages? For instance, I'm trying to install xcode, but pkgs.xcode is undefined
<ndrei>
actually, this seems to be something else..hmm
<ndrei>
oh, sorry, I forgot there was a dedicated channel for darwin
rct has joined #nixos
<infinisil>
sphalerite_: Damnit, weechat doesn't work with python3, and I'm trying to use a plugin (whatsapp) that requires a python package that doesn't build with python2 (yowsup) :(
<sphalerite_>
nice
dan_b has joined #nixos
hakujin has joined #nixos
<sphalerite_>
you'd think that by now most popular and actively maintained software that interfaces iwth python would support 3.x…
chrisbarrett has quit [Quit: chrisbarrett]
<pie_>
simpson, do you use lyx?
ssmike has quit [Ping timeout: 252 seconds]
<sphalerite_>
is there a particular reason a `nix build` process would still need to have a lot of memory reserved during the actual build? Surely just the derivations should be enough at that point, and wouldn't fill up 100M?
chrisbarrett has joined #nixos
<simpson>
sphalerite_: Some software will never leave Python 2, and that's okay.
<simpson>
pie_: Yeah.
<pie_>
simpson, do you use the math macros in it? mine are coming out broken
JosW has quit [Quit: Konversation terminated!]
<pie_>
* math macro definition
hiratara has quit [Ping timeout: 255 seconds]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nix] edolstra pushed 1 new commit to master: https://git.io/vAY4J
<NixOS_GitHub>
nix/master 9bcb4d2 Eelco Dolstra: Fix hang in build-remote
NixOS_GitHub has left #nixos [#nixos]
<simpson>
No, I handwrite my maths. I don't really know much about LyX, sorry.
<pie_>
simpson, for some reason my two argument macro is coming out like this when i use it: \range 0{n-1} , i think it should be \range{0}{n-1}
<pie_>
ok thanks anyway
<sphalerite_>
simpson: I mean, ideally the software would leave python completely ;)
tester123 has quit [Quit: Page closed]
<infinisil>
simpson: but weechat is kinda big and very popular..
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
nixpkgs/staging a93b1ea Daiderd Jordan: qt510-qtbase: fix darwin build with clang-5
<NixOS_GitHub>
[nixpkgs] LnL7 pushed 2 new commits to staging: https://git.io/vAY4c
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
nixpkgs/staging 0bf153f Daiderd Jordan: qt59-qtbase: fix darwin build with clang-5
kelleyNif has quit [Quit: Leaving.]
justanotheruser has quit [Ping timeout: 252 seconds]
hiratara has joined #nixos
hamishmack has quit [Quit: hamishmack]
bebarker has joined #nixos
<hakujin>
if I want hydra to build nixos system images, how do I refer to secrets (e.g. passwords, private keys) in my `configuration.nix` so they don't get pulled into the closure?
<hakujin>
ideally the target machine will provide these credentials rather than the hydra machine
<hakujin>
maybe pass the secret in as an input?
<bebarker>
https://nixos.org/nixos/packages.html#awscl seems to indicate awscli is available, and I should be able to install it as either, but I get "error: selector ‘python36Packages.awscli’ matches no derivations"
<bebarker>
and similarly if I just try to install the unprefixed "awscli"
NixOS_GitHub has joined #nixos
NixOS_GitHub has left #nixos [#nixos]
<NixOS_GitHub>
nixpkgs/openssl-1.1 d9e6918 Vladimír Čunát: qt59.qtbase: fix with openssl-1.1.0 via Fedora patch
<NixOS_GitHub>
[nixpkgs] vcunat pushed 1 new commit to openssl-1.1: https://git.io/vAYBr
Drakonis has joined #nixos
vcanadi has joined #nixos
cement has quit [Ping timeout: 240 seconds]
simukis has quit [Ping timeout: 248 seconds]
<sphalerite_>
hakujin: basically you don't :/
<sphalerite_>
hakujin: anything that needs secrets should in that case typically be referred to through non-store paths. NixOps has some mechanism for that involving /run/keys, I don't know the details though
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Ericson2314 closed pull request #34863: Use static cabal2nix in callCabal2nix (master...callCabal2nix-use-static-cabal2nix) https://git.io/vAq0A
NixOS_GitHub has left #nixos [#nixos]
djahandarie has left #nixos [#nixos]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
nixpkgs/master 627444c Will Fancher: Use static cabal2nix in callCabal2nix
<NixOS_GitHub>
[nixpkgs] Ericson2314 pushed 2 new commits to master: https://git.io/vAYR6
<NixOS_GitHub>
nixpkgs/master 6acfa35 John Ericson: Merge pull request #34863 from ElvishJerricco/callCabal2nix-use-static-cabal2nix...
NixOS_GitHub has left #nixos [#nixos]
<sphalerite_>
I think srhb did some work related to that sort of thing recently (gitlab?)
<sphalerite_>
does anyone know a way to limit the throughput of a network device artificially? my flatmate's complaining about his internet dropping while I'm copying a bunch of stuff over the LAN
<bebarker>
thanks sphalerite_, nix-env -f '<nixpkgs>' -iA awscli seems to work, but it goes for the python27 version (which might be fine, but I'm generally doing development only with python 36)
<sphalerite_>
AFAIU that shouldn't happen with TCP, but hey, it still is...
ssmike has joined #nixos
<sphalerite_>
bebarker: that should indeed be fine, but you should be able to do -iA python3Packages.awscli if you really want to :)
duncan^ has quit [Quit: had too much beer toniute]
<sphalerite_>
bebarker: note that you'll usually not want to install any libraries, or a python interpreter
<sphalerite_>
(in case you don't know about nix-shell yet :) )
<bebarker>
spharelite_, I tried, but got "error: attribute ‘awscli’ in selection path ‘python36Packages.awscli’ not found ". Actually, my end goal here in this particular case is to install awscli as part of my default environment, as I'm not using it as a library as such
<LnL>
you need to prefix that with the channel name, so nixpkgs. or nixos.
<bebarker>
I tend to use nix-shell for specific apps, and my ambient environment for common tooling like
<bebarker>
LnL, ah, right!
<sphalerite_>
LnL: not if using -f '<nixpkgs>'
<LnL>
yeah -f will make it have the behaviour you where expecting
<bebarker>
hmm, no luck, still
<bebarker>
odd
<sphalerite_>
ok yeah it actually doesn't exist :p
<NixOS_GitHub>
[nixpkgs] vbgl opened pull request #34915: ocamlPackages.bitv: init at 1.3 (master...ocaml-bitv) https://git.io/vAYwB
NixOS_GitHub has left #nixos [#nixos]
knupfer has quit [Ping timeout: 268 seconds]
velovix has quit [Quit: Leaving]
oida has quit [Ping timeout: 256 seconds]
blahdodo has quit [Quit: Bye bye]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
nixpkgs/openssl-1.1 230dfc9 Vladimír Čunát: php56: build with older openssl, including closure...
<NixOS_GitHub>
[nixpkgs] vcunat pushed 1 new commit to openssl-1.1: https://git.io/vAYrA
NixOS_GitHub has left #nixos [#nixos]
<vcanadi>
How can I set up `services.hydra` to be built from source (master)? Concretely, I want this changes in GithubPulls.pm to be applied. https://github.com/NixOS/hydra/commit/028ecf7c1facc0e8a060c75f3b3abbc390529171. I have fetched master with fetchgit and added `hydra-module.nix` to imports list like in peti's Hydra tutorial.
<michalrus>
I *am* setting `gc-keep-outputs = true`.
<hakujin>
anyone familiar with the `githubstatus` plugin for hydra? specfically, how do I configure my github repo to communicate with my hydra instance? (webhook? if so, which URL? which events?)
<hakujin>
vcanadi: I'm a nix novice, but I think you could fetch nixpkgs master from github and use that instead of <nixpkgs/nixos>
fresheyeball has joined #nixos
<fresheyeball>
hey out there
<fresheyeball>
I am having a hard time
oida has joined #nixos
<fresheyeball>
everything was just fine, and I did a reboot
<fresheyeball>
and now it wont boot
<fresheyeball>
it just hangs on mounting the disk
<fresheyeball>
I booted of a usb stick, and was able to mount no problem
<fresheyeball>
but when I looked at my configuration.nix, it's got the wrong device in the grub settings!
<fresheyeball>
it looks like my device randomly changed it's name
<fresheyeball>
I changed configuration.nix, but don't know how I can do a generation from the live-cd