<Lisanna>
I have two remote builders configured but they won't take regular builds
<gchristensen>
specifically the "builtin" system set for localhost
<Lisanna>
I'm counting on hydra building locally
<gchristensen>
you neeed to explicitly list localhost as a builder
<Lisanna>
wait
<gchristensen>
gotta go, sorry
<Lisanna>
Oh, okay
<Lisanna>
this should be enough for me to figure it out
<Lisanna>
thanks for your hel
<Lisanna>
help*
<gchristensen>
can talk more later :)
daveo has joined #nixos
yastero[m] has joined #nixos
CapsLock has joined #nixos
<CapsLock>
Hi everyone
<samueldr>
hi!
<CapsLock>
I've just installed nixos with gnome3 ; it works fine ; but I have a theme issue with libreoffice (can be seen here : https://framapic.org/ntAHOicV4ikC/vquojg8Bkew3.png) ; any idea how I can fix that ?
knupfer has quit [Quit: knupfer]
matthewbauer has joined #nixos
sir_guy_carleton has joined #nixos
CapsLock has quit [Changing host]
CapsLock has joined #nixos
<Lisanna>
yeah, it's not a stuck build, it's a stuck evaluation
jperras has joined #nixos
simukis has quit [Ping timeout: 256 seconds]
jperras has quit [Ping timeout: 240 seconds]
palo_ is now known as palo
<{^_^}>
[nixpkgs] @matthewbauer pushed 3 commits to master: https://git.io/vhMIE
<Lisanna>
ran the hydra-eval-jobs evaluation command manually from a root shell and it worked fine
<Lisanna>
ran it as the hydra user and it worked as well <_<
alexteves_ has joined #nixos
<Lisanna>
restarted hydra and it's working now
<Lisanna>
lol
jperras has joined #nixos
jmeredith has quit [Quit: Connection closed for inactivity]
matthewbauer has quit [Read error: Connection reset by peer]
alexteves_ has quit [Read error: Connection reset by peer]
tzemanovic has joined #nixos
sbdchd has joined #nixos
<worldofpeace>
CapsLock: Hi, I think that's a problem only hacking on the expression would help. I noticed it also and it needs some tlc and attention brought to it.
<daveo>
is there a way to add everything listed in `nix-env -q` (my 'one off installs') automagically to the configuration.nix?
<daveo>
I'm about to just cut and paste them in there
<gchristensen>
an interesting question
<daveo>
but some I have never gotten to install in configuration.nix
<daveo>
like ruby-mine
<samueldr>
daveo: probably related to package names vs. attribute names
<samueldr>
gchristensen: some could some wizardry with manifest.nix work? or are the attributes lost already?
<daveo>
samueldr: ahh thanks
johanot has quit [Ping timeout: 260 seconds]
<gchristensen>
they're lost apparently, samueldr :) was just looking
<samueldr>
daveo: for rubymine, the package name is `ruby-mine`, but its attribute is `jetbrains.ruby-mine`
countoren has joined #nixos
mkoenig_ has joined #nixos
mkoenig has quit [Ping timeout: 248 seconds]
<daveo>
samueldr: how do I get that to work in the configuration.nix then. Using `jetbrains.ruby-mine` is not working in the block I have that lists the pkgs
johanot has joined #nixos
<daveo>
holy cow doing `nix-collect-garbage -d` just freed 40 gigs for me
<samueldr>
daveo: `environment.systemPackages = with pkgs; [ jetbrains.ruby-mine ];` seems to work for me
<gchristensen>
or pkgs.jetbrains.ruby-mine
<samueldr>
though, as it's unfree, maybe you need `nixpkgs.config.allowUnfree = true;`
<daveo>
samueldr: hmm will try
<daveo>
samueldr: and I do have the allowUnfree
<samueldr>
just verifying :)
<samueldr>
AGH, I was stuck for a small while (paused as I was about to pull my hair out) because I moved code from a file to another, but didn't change the relative paths :/
<samueldr>
and there I thought I had hit a huge snag and it works
<gchristensen>
:$
<daveo>
samueldr: looks like that works
<samueldr>
though, I must say (ab)using the nixos options system for device specific configuration seems like a really useful idea
<samueldr>
nice daveo
JasonGrossman has quit [Ping timeout: 245 seconds]
<daveo>
if you are working with Nix in a project does it matter what you call the .nix file?
<samueldr>
maybe, but the only case I think of is default.nix
<daveo>
I was calling them 'default.nix', I am watching a talk called 'Sneaking Nix at $work...' and the speaker uses 'shell.nix'
<samueldr>
( `import ./a/directory` will implicitly call default.nix )
<samueldr>
oh, right, forgot about shell.nix
<samueldr>
shell.nix is for nix-shell
<daveo>
if you type nix-shell that's what it uses?
<samueldr>
from its manpage:
<samueldr>
> If path is not given, nix-shell defaults to shell.nix if it exists, and default.nix otherwise.
<{^_^}>
error: syntax error, unexpected ',', expecting ')', at (string):149:21
<daveo>
ahh
<countoren>
Hi, im trying to install a custom bash script in nix and
<worldofpeace>
How can I like not use a nixpkgs channel?...
<daveo>
RTFManpage :)
<countoren>
i wonder what is the best way to do it
<samueldr>
daveo: not exactly, but the manpages for nix commands are well documented
<daveo>
samueldr: thanks. How frequently to use --pure? I might just try seems like that forces you to contain all dependencies and call them out in your project's Nix files?
<worldofpeace>
countoren: A bash script packaged or just use it?
<samueldr>
daveo: as you see fit, but --pure will allow you to find impurities, which always is a nice thing to know about
<daveo>
Also, dumb question, but can/should you use the .nix files to even set up databases etc
<samueldr>
(as an example, I don't use --pure on some scripts to allow use of system-installed stuff from non-nixos installs)
<countoren>
packaged
<daveo>
samueldr: do you ever wish it was all just packaged :D
<samueldr>
daveo: nix won't allow execution outside of the store, but you could always use an activation script
<samueldr>
daveo: sometimes it's not possible, e.g. virtualbox on macOS (afaik)
<countoren>
{ pkgs ? import <nixpkgs> {} }: with pkgs; let inherit stdenv fetchurl perl; version = "1.0.0"; in stdenv.mkDerivation rec { name = "homeInstall"; phases = [ "installPhase" ]; src = ./.; installPhase = '' substitute $src/homeInstallSymLinks $out/homeInstallSymLinks ''; }
<daveo>
I suppose that's why I'm using 'full on Nix' (NixOS) as well. Can just update the config and `nxu` (alias for `nixos-rebuild switch`)
Huddo121 has quit [Ping timeout: 260 seconds]
<countoren>
and my config.nix has: homeInstall = import ./HomeInstall {} ;
rprije has joined #nixos
<daveo>
samueldr: I'm surprised and delighted by how much is already packaged and I suppose the more people get increasingly involved that will get even more impressive.
Huddo121 has joined #nixos
<daveo>
samueldr: so I'd like to learn to make some packages and maybe set up a hydra
orivej has joined #nixos
<daveo>
is there any easy way to generate boilerplate for shell.nix or default.nix?
<daveo>
oh and is there something that replaced nix-repl?
<daveo>
found it... `nix repl`
<rprije>
Hi! I'm wondering why I can't seem to override my builder attribute in my derivation. The docs suggest I can pass a builder attribute to stdenv.mkDerivation but it's still spitting out a derivation using bash as the builder.
<rprije>
Is there a preferred pastebin I can use to show my working?
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<dje4321_>
Anyone have experince running the unstable branch of nixos daily?
orivej has quit [Ping timeout: 264 seconds]
<daveo>
me
<dje4321_>
how is it?
orivej has joined #nixos
<daveo>
lol. I'm new let me make sure I am truly doing what you're asking
<dje4321_>
lol
<daveo>
I set it up to update the bleeding edge if that's what you're talking about
<daveo>
and it seems fine
<daveo>
and many apps I needed updated are now up to date
<dje4321_>
maybe. im talking about running the latest and greatest version of nixos instead of stable. Didnt know if it was one of those cases where unstable is really buggy and bleeding edge or more stable than the stable branch XD
<daveo>
well seems better to me
<clever>
gchristensen: one per machine
<daveo>
but I'm newish. and everything has seemed stable. Besides KDE Plasma maybe. But Nix proj has nothing to do with that
<dje4321_>
thats just KDE being KDE lol
<daveo>
and I shouldn't actually hate on Plasma my problem happens in all X environments
<daveo>
I can't shutdown without first doing a sleep
<{^_^}>
[nixpkgs] @matthewbauer pushed commit from @orivej to master « netbsd.compat: fix build with musl (#41537) »: https://git.io/vhMYw
rprije has quit [Ping timeout: 260 seconds]
<daveo>
took me forever to figure out that worked. It was not always a problem. I used to just use i3wm and it could just shutdown. I now use KDE, Gnome, and i3wm sometimes. And I always have to sleep before I shut down
<dje4321_>
stange
rprije has joined #nixos
<dje4321_>
thanks for the info though :D
<daveo>
well I'll let you know if unstable decides to delete all my files. probably have to log in from somewhere else...
<daveo>
it's actually much better...
<daveo>
but ask a non n00b
<daveo>
at least from looking at configuration.nix files on Github I saw quite a few that rolled the dice and chose unstable
sir_guy_carleton has quit [Quit: WeeChat 2.0]
<daveo>
and if you back up all you personal stuff and just use NixOS like you could clobber your system at any moment and bring it back up from whatever's in your config... I guess that's not really that much of a gamble
Lev50 has quit [Quit: This computer has gone to sleep]
lassulus_ has joined #nixos
<daveo>
until your IDE crashes and you forgot to push to your remote or whatever
<daveo>
or Open Office crashes on you with unstable
daveo has quit [Remote host closed the connection]
<dje4321_>
dont worry im a noob too. actually just submitted my first PR to get a package i needed added to the repo :D
<dje4321_>
been playing with nixos for the past couple of weeks and i think im ready to switch to it as my daily linux os
b has joined #nixos
lassulus has quit [Ping timeout: 264 seconds]
lassulus_ is now known as lassulus
pie_ has quit [Ping timeout: 264 seconds]
schoppenhauer has quit [Ping timeout: 264 seconds]
<dje4321_>
thanks for the feedback though :D
schoppenhauer has joined #nixos
hph^ has quit [Ping timeout: 240 seconds]
JasonGrossman has joined #nixos
countoren has quit [Quit: Page closed]
iyzsong has joined #nixos
JasonGrossman has quit [Ping timeout: 276 seconds]
daveo has joined #nixos
<daveo>
reading the nix pills and trying to apply what I'm learning to understand my configuration.nix
<daveo>
it seems like the first thing I'm doing is making an anonymous function with an arguments set with variadic attributes if I do `{ config, pkgs, ... }:`
<daveo>
I had no idea what that was before and maybe understand more... Still so new
<daveo>
so config and packages are in this case required?
<colemickens>
yeah, I was looking at nixcloud.io or some other hydra instance.
<colemickens>
I've learned alot since I last commented.
Lev50 has quit [Quit: This computer has gone to sleep]
travankor has joined #nixos
palo_ has quit [Ping timeout: 256 seconds]
mji3sm has quit [Ping timeout: 240 seconds]
palo has joined #nixos
palo has quit [Changing host]
palo has joined #nixos
<{^_^}>
[nixpkgs] @AndersonTorres opened pull request #42122 → Skribilo: New Package(s) → https://git.io/vhMnu
<sphalerite>
it makes sense to configure a machine both as a remote builder and as a substituter, right?
mji3sm has joined #nixos
Mateon3 has joined #nixos
nico202 has joined #nixos
blankhart has quit [Ping timeout: 256 seconds]
Mateon1 has quit [Ping timeout: 264 seconds]
Mateon3 is now known as Mateon1
aexoxea has quit [Quit: Goodbye!]
rschm_ has quit [Read error: Connection reset by peer]
rschm has joined #nixos
igo95862 has quit [Quit: igo95862]
aarvar has quit [Ping timeout: 264 seconds]
<{^_^}>
[nixpkgs] @peti opened pull request #42123 → ghc: drop compiler version 8.4.2; we prefer 8.4.3 → https://git.io/vhMcD
<{^_^}>
[nixpkgs] @vcunat pushed 69 commits to staging-18.03: https://git.io/vhMcS
mahalel_1 has joined #nixos
toby1851 has quit [Ping timeout: 276 seconds]
smallville7123 has joined #nixos
xy2_ has joined #nixos
<cocreature>
Hey, does anyone have a working setup for using circleci with nix? I found https://github.com/nix-community/docker-nix which even mentions that there is apparently a "nixos/nix:circleci" image which seems exactly like what I’m looking for but that image doesn’t actually exist at https://hub.docker.com/r/nixos/nix/tags/ afaict
travankor has quit [Quit: Q]
nico202 has quit [Ping timeout: 264 seconds]
paraseba has quit [Ping timeout: 260 seconds]
paraseba has joined #nixos
m0rphism has quit [Quit: WeeChat 1.9.1]
philippD has joined #nixos
mahalel_1 has left #nixos [#nixos]
rprije has joined #nixos
thc202 has joined #nixos
smallville7123 has quit [Quit: rosa]
<flyx>
any recommendations on getting directory listings via HTTP with nixos? nginx fancyindex does not seem to be available.
rprije has quit [Ping timeout: 264 seconds]
<srhb>
flyx: Pretty sure it is.
<flyx>
srhb: hmm okay, I'll try using it
<srhb>
Or maybe just the regular index, I've at least used that from nginx
kreetx has joined #nixos
<srhb>
Using just "autoindex on;" in the extraConfig for a particular location.
<{^_^}>
[nixpkgs] @vcunat pushed to staging « libvorbis: upstream patch for CVE-2018-10392 »: https://git.io/vhMWj
logzet has joined #nixos
<{^_^}>
[nixpkgs] @vcunat pushed 2 commits to staging-18.03: https://git.io/vhMlf
<cocreature>
ah the image is at nixorg/nix:circleci not nixos/nix:circleci
<flyx>
well, 'autoindex on;' will surely work, but is not pretty
<srhb>
flyx: I agree that it looks like fancyindex is not packages. Maybe a project? :-)
smallville7123 has joined #nixos
<srhb>
packaged*
<flyx>
well, perhaps after I've finished migrating from debian :)
<srhb>
:)
<srhb>
Looks like it's really easy to add a module to the build.
<srhb>
nginx takes a modules ? [] argument
sorixelle has quit [Ping timeout: 260 seconds]
andreabedini has joined #nixos
<srhb>
So it's probably as easy as adding ngx-fancyindex src to the modules.nix file and having services.nginx.package = pkgs.nginx.override { modules = [ pkgs.nginxModules.ngx-fancyindex ]; };
<{^_^}>
[nixpkgs] @pSub pushed commit from @swflint to master « lice: init at 0.4 (#42108) »: https://git.io/vhMlZ
<flyx>
so I can test that locally in my configuration.nix by setting pkgs.nginxModules.fancyindex = { ... } and then including it, right?
<andreabedini>
hello, here I am with my usual random questions :) I'm developing a thing using (haskell application) nix on macos and I'd like to obtain a linux static binary, my current method is using the docker nixos image to run the build, caching the entire /nix, is there a better way?
<andreabedini>
(I'm afraid trying to cross-compile will trigger rebuilding the word)
<srhb>
flyx: Yes. :)
<srhb>
flyx: Err, no.
<srhb>
flyx: You'd be overriding pkgs. Just name it something else for the test :)
<srhb>
flyx: like let myFancyindex = ...
<srhb>
andreabedini: If you want to avoid cross compiling, maybe setting up a virtualbox build host locally with nixops would be helpful. I know of some people that do that.
<andreabedini>
srhb: thanks! basically I'm doing the same but with docker :)
<srhb>
andreabedini: OK, not sure if there's any advantage of one over the other :)
<srhb>
andreabedini: I don't think we're quite in a state where we can easily cross-build haskell from darwin to linux anyway, but I know things are moving really fast on that topic.
<andreabedini>
one thing that pleases my OCD is that since I can tell docker to cache /nix, the build happens in completely ephemeral docker containers
knupfer has joined #nixos
<srhb>
andreabedini: I think I'd prefer to have a persistent virtual machine that nix just sshs into to get a remote builder of the wanted architecture
<srhb>
Using the regular builders mechanism
<andreabedini>
oh right, there's that too
<andreabedini>
maybe I should give it a shot then, cheers!
<srhb>
andreabedini: Have fun. :)
<andreabedini>
I was indeed scratching my head wondering how to copy files across :D
<srhb>
I think nixops may be able to provisoin that virtualbox machine for you entirely
<srhb>
You'd just need to dump its local IP and give nix access with some key
<andreabedini>
nice, I haven't played with nixops yet
<{^_^}>
[nixpkgs] @bkchr opened pull request #42126 → lyx: Fixes building with Qt5.11 → https://git.io/vhMlo
<tomse>
hi.. I'm trying to build a haskell stack project with nix.. Right now, I'm trying different approaches. None worked so far: buildStackProject, stack2nix, cabal2nix, callCabal2nix... The latter seems to be the most promising.. since it does not download everything on each build. however it fails with `Setup: Encountered missing dependencies: QuickCheck <2.10` .. Which approach would you suggest (and if it's the last
<tomse>
one, how to fix this error :)
colabeer has joined #nixos
<cocreature>
tomse: callCabal2nix is probably a reasonable option. the error suggests that you are trying to use a newer version of QuickCheck than the one supported by the constraints
<cocreature>
you can either lift the constraints or use an older version of QuickCheck
<colabeer>
i've heard about a systemd service, which automatically cleans up old generations but keeps one per week of last moth, one per month of last year and one per year of past time. But I've forgott the name. Does anybody know what I am talking about?
<flyx>
hum, what's happening when renewing ACME cert tells me „TypeError: can only concatenate list (not "NoneType") to list“
tzemanovic has quit [Ping timeout: 260 seconds]
<tomse>
cocreature: that looks like a good reference.. I'm wondering though why the build needs quickcheck, since it's not used or mentioned in my package.yaml/project.cabal file..
andymandias has quit [Ping timeout: 240 seconds]
<cocreature>
tomse: I’m going to have to see the full build output to answer that but my guess is that the test suite of one of the dependencies uses QuickCheck
<sphalerite>
does nix keep track of where paths come from? I'd like to sign all the paths that have previously been built locally but not those that were obtained from binary caches
fendor has joined #nixos
sorixelle has joined #nixos
<sphalerite>
ah, it seems that the sig info is what I want — the ones with "ultimate" were built locally
andymandias has joined #nixos
<tomse>
cocreature: yeah.. the error happens while building the superbuffer package, which I don't use directly. would I have to go through all my deps to find the one using superbuffer? sounds weird :)
<cocreature>
tomse: you can view a dependency tree using something like "nix-store -q --tree $(nix-instantiate -A yourpackagehere)"
tzemanovic has joined #nixos
<sphalerite>
hm wait no, some paths don't have any sort of trust…?
<cocreature>
tomse: as for fixing this, you can probably just disable tests for the superbuffer package using "haskell.lib.dontCheck" (should be mentioned in the reference I linked before)
Ariakenom has joined #nixos
deepfire` has quit [Ping timeout: 264 seconds]
rschm has quit [Remote host closed the connection]
rschm has joined #nixos
deepfire` has joined #nixos
<tomse>
cocreature: mhh.. when I change my default.nix to
<tomse>
`pkgs.haskell.lib.dontCheck (pkgs.haskellPackages.callCabal2nix "myproject" ./. { })` I still get the same error... Using `nix-store -q --tree $(nix-instantiate default.nix) | grep quickcheck` gives me tons of entries...
<cocreature>
tomse: you need the dontCheck on superbuffer, not on your project
<cocreature>
tomse: and you should also be grepping for superbuffer, not quickcheck
<tomse>
cocreature: it's Spock > Spock.Core > superbuffer ... Is it maybe a a cleaner solution to use an older stack resolver (right now I have lts-9.21)
rprije has joined #nixos
<cocreature>
tomse: nix doesn’t care about your stack resolver. but either way, I’d say disabling the test suite of superbuffer is a pretty reasonable solution (and the one that I personally would pick)
<tomse>
cocreature: alright... but how would I express this in the `default.nix`?
<tomse>
(use lib.dontCheck for superbuffer instead of my project)
smallville7123 has quit [Remote host closed the connection]
<tfc[m]>
hi there. i have a little private hydra server which contains a project with some packages inside. i added the project-channel to another nixos machine and can query what's inside. but when i enter `nix-build '<my_channel>' -A my_package` it says `error: path '!out' is not in the nix store` - what's wrong here? i think that it is supposed to download this from the channel?
<{^_^}>
[nixpkgs] @bkchr opened pull request #42130 → vlc: Fixes build with fribidi version 1.0 → https://git.io/vhMBC
smallville7123 has quit [Client Quit]
smallville7123 has joined #nixos
<aminechikhaoui>
ugh, seems I can't get rid of `kernel: systemd: 27 output lines suppressed due to ratelimiting` even with `services.journald.rateLimitBurst = 0;`
<aminechikhaoui>
probably because it's in a early stage of the switch configuration? it basically happens on first boot of a GCE instance
<aminechikhaoui>
I even tried with a different image where I set services.journald.rateLimitBurst = 0 in nixos/modules/virtualisation/google-compute-image.nix
<aminechikhaoui>
but seems no luck
<aminechikhaoui>
any idea how can I get rid of that rate limiting ?
<LnL>
what about services.journald.rateLimitBurst = mkForce 0; in your configuration?
<aminechikhaoui>
I'll give it a shot, but not sure if there is anything else that overwrites that option in the first place
eqyiel has quit [Remote host closed the connection]
<LnL>
well mkForce is basically the highest priority
<LnL>
so doesn't matter if something else sets it
<srhb>
aminechikhaoui: Shouldn't that be rateLimitInterval if you want it off completely?
tom1919 has quit [Ping timeout: 260 seconds]
<aminechikhaoui>
srhb: both man journald.conf/configuration.nix mention it's either way
iyzsong-x has joined #nixos
eqyiel has joined #nixos
<srhb>
aminechikhaoui: So I see. Hmm.
iyzsong has quit [Ping timeout: 260 seconds]
b has joined #nixos
<srhb>
aminechikhaoui: Oh, is this actually printk rate limiting?
smallville7123 has quit [Quit: rosa]
<srhb>
aminechikhaoui: Meaning, it's actually the kernel throttling printk messages *about* systemd, not systemd rate limiting anything.
<srhb>
or printk_devkmsg=on instead of the default printk_devkmsg=ratelimit in the boot parameters
<aminechikhaoui>
hm you know it seems it's not very important for my issue actually as I see the relevant logs that I need are much later in the process
<aminechikhaoui>
but thanks for the suggestions :)
ericsagn1 has quit [Ping timeout: 265 seconds]
oida has quit [Remote host closed the connection]
oida has joined #nixos
<srhb>
OK. fwiw I'm pretty sure that was what you were seeing. :)
karlguy has joined #nixos
kiloreux has joined #nixos
roconnor_ has quit [Quit: Konversation terminated!]
sbdchd has joined #nixos
sbdchd has quit [Ping timeout: 256 seconds]
sgflt has joined #nixos
ericsagn1 has joined #nixos
<andreabedini>
srhb: uhm, if I do `nix-build --builders ssh://192.168.190.195` it looks like the build is still happening locally, what obvious thing am I missing?
<sgflt>
hello everyone. i'm trying to install xfce4 - is there some sort of meta-package for this (sorry, i am new to nix)
<sphalerite>
andreabedini: if you want to build only on that machine, use --store
<sphalerite>
you also need to use ssh-ng rather than ssh, since nix's "legacy" ssh protocol doesn't support building
<andreabedini>
sphalerite: uhm, that's not entirely obvious :)
<sphalerite>
additionally, --builders is only allowed to be set by trusted users
<andreabedini>
also do I need to set something like system?
<sphalerite>
andreabedini: as for the difference between --store and --builders — --builders will have it copy the results back to the local machine, while --store will *only* have the build results available remotely
<symphorien>
sphalerite, since you seem to know how to do it for a single user, would you mind completing the article ?
<andreabedini>
sphalerite symphorien thanks!
<sphalerite>
argh that StrictHostKeyChecking=no D:
<andreabedini>
still not there :-/ `a 'x86_64-darwin' is required to build '/nix/store/xyz', but I am a 'x86_64-linux'
<sphalerite>
andreabedini: that looks good. What are you building?
toby1851 has joined #nixos
<andreabedini>
a simple binary written in haskell, used cabal2nix on my local directory
<andreabedini>
set up a builder nixos vm (i am on macos)
<sgflt>
symphorien, JasonGrossman i was trying to avoid to do the xserver.xfce.enable, but i guess it's harmless? i don't use xfce per se, i just use its component with xmonad
<gchristensen>
(features?)
<andreabedini>
and nix-build --store 'ssh-ng://andrea@192.168.190.195' --argstr system x86_64-linux -v -j0
<sphalerite>
andreabedini: you've got the remote building working correctly as far as I can see, but the evaluation is resulting in a darwin package
<andreabedini>
sphalerite: I was hoping "--argstr system x86_64-linux" would help about that
<sphalerite>
andreabedini: I'm not sure exactly how cabal2nix'd expressions work, but essentially you need to make sure that system = "x86_64-linux" is passed into *nixpkgs*
<andreabedini>
ah, I see
<sgflt>
symphorien, JasonGrossman alright, thank you. i'll give it a try!
<andreabedini>
thanks sphalerite
<{^_^}>
[nixpkgs] @pSub pushed to master « qpdf: apply patch for CVE-2018-9918 »: https://git.io/vhMRS
<{^_^}>
[nixpkgs] @pSub pushed to master « mupdf: use CVE in name to enable vulnix detection »: https://git.io/vhMRd
<gchristensen>
any `import <nixpkgs> {}` needs to be fixed
pie_ has joined #nixos
hanetzer has joined #nixos
<hanetzer>
yo.
<teto1>
is there an easy way to change the default login screen ? it is too bright for me
<andreabedini>
gchristensen: yes! I found the right place I hink
<andreabedini>
*think
<andreabedini>
lol, other way around now :D `a 'x86_64-linux' is required to build ... but I am a 'x86_64-darwin'`
<andreabedini>
almost there
<hanetzer>
question regarding nixos/nixpkg; can it be used sort of like gentoo prefix? as in, $otheros installed to / but nixos installed (not as a chroot) to $HOME/nixos ?
<sphalerite>
teto1: set services.xserver.displayManager.slim.theme
<sphalerite>
teto1: unfortunately the site where themes used to live is gone now…
wchresta has joined #nixos
<sphalerite>
hanetzer: nixos, no. nixpkgs stuff, yes in principle but you'll have to build the world from source and I'm not sure how well it's supported in general
dejanr has quit [Ping timeout: 245 seconds]
<srhb>
andreabedini: Is that using builders? Does it make a difference if you specify the builder system in the string?
<srhb>
andreabedini: (I'm no expert here, so merely guessing a bit to hopefully nudge you ahead)
<srhb>
andreabedini: That is, --builders 'ssh://... x86_64-linux'
<andreabedini>
srhb: yes, that's using --builders, specifying system doesn't help. I tried -j0 as the wiki suggests but at that point it refuses to build at all
<andreabedini>
and I added myself to the trusted users
<andreabedini>
¯\_(ツ)_/¯
lo_mlatu has joined #nixos
<srhb>
andreabedini: You mean specifying the system in the builders string does nothing?
<andreabedini>
both give error: a 'x86_64-linux' is required to build '/nix/store/1dncc3wca9xsah8n5p67img2yfixdrf3-remove-references-to.drv', but I am a 'x86_64-darwin'
<sphalerite>
andreabedini: did you restart the nix daemon after adding yourself to trusted-users?
sgflt has quit [Quit: WeeChat 1.0.1]
<srhb>
andreabedini: Hm. Sounds like it's not even attempting the remote builder then.
<srhb>
More verbose flags might give us an indication if it's an ssh issue.
<andreabedini>
sphalerite: yes I did (learned that the hard way)
<joepie91>
hmmm
<sphalerite>
well since we got `a 'x86_64-darwin' is required to build '/nix/store/xyz', but I am a 'x86_64-linux' earlier
<sphalerite>
that shouldn't be the eproblem anymore
<srhb>
Good point.
<joepie91>
if I wanted to add the 18.03 channel to my own Hydra instance as a source input, how would I do that? 'Git checkout' only lets me specify the repo URL, not the branch
<andreabedini>
bingo
<srhb>
joepie91: Yes, just add it after a space
<sphalerite>
andreabedini: what have you changed from when you got that error?
<joepie91>
aha. this should probably be in the docs :)
<andreabedini>
unable to open SSH connection to 'ssh://andrea@192.168.190.195': cannot connect to 'andrea@192.168.190.195'; trying other available machines...
<joepie91>
thanks!
<andreabedini>
but I can ssh in just fine
<srhb>
andreabedini: If it's the daemon doing it, root should be able to as well
<srhb>
(I think...?)
<andreabedini>
DAMN
<andreabedini>
right
<andreabedini>
I am using a key to log in
pie__ has joined #nixos
pie_ has quit [Remote host closed the connection]
<srhb>
andreabedini: Just setup ~/root/.ssh such that it's possible to ssh keylessly to andrea@... without a password, that should suffice.
lo_mlatu_ has joined #nixos
<srhb>
s/keylessly/passwordlessly
<sphalerite>
~root/.ssh not ~/root/ssh :)
<srhb>
Woops, thank you
lo_mlatu__ has joined #nixos
<lo_mlatu__>
hi, how can I install a package without nix trying to fetch the binary path? Sometimes I want to install a custom package, all the sources are on the local machine, dependencies have been fetched, but nix-env will still try to download the narinfo. When I'm offline, it fails even with the --fallback
<sphalerite>
lo_mlatu__: man nix.conf → If set to true, Nix will fall back to building from source if a binary substitute fails. This is equivalent to the --fallback flag. The default is false.
<sphalerite>
gchristensen: I did
<gchristensen>
!!! sphalerite++ !!!
Lisanna has quit [Quit: Lisanna]
<sphalerite>
:)
<andreabedini>
error: you are not privileged to build deriva
<andreabedini>
do I have to be a trusted user on the builder as well?
<sphalerite>
yes
<sphalerite>
because the build initiator copies the build inputs onto it
<lo_mlatu__>
sphalerite: you are so kind, thank you :)
dejanr has joined #nixos
<sphalerite>
lo_mlatu__: it is a bit of a mess at the moment, as nix 2.0 introduced setting the same options in nix.conf and on the command line, but the documentation hasn't really caught up. So I can understand why you'd be confused :)
<sphalerite>
lo_mlatu__: substituters is also in man nix.conf
<lo_mlatu__>
yeah I see :)
ThatDocsLady has quit [Quit: Leaving]
iyzsong-x has quit [Ping timeout: 248 seconds]
<andreabedini>
omg it freaking works now
michael_ has joined #nixos
<andreabedini>
thank everybody <3<3<3
lo_mlatu__ has quit [Quit: Page closed]
<srhb>
andreabedini: Nice! ^^
<srhb>
andreabedini: If you care, you can transfer the builders information to your nix.conf to have it automatically pick the remote builder if you're building a linux derivation :)
<andreabedini>
srhb: yeah, I'm considering it
<andreabedini>
I kinda want to look back at my "docker way" of doing it
<andreabedini>
I can do something like "docker run --rm -v nix:/nix -v $PWD:/src nixos/nix nix-build /src --out-link /src/result2"
<andreabedini>
with *zero* prior setup
<joepie91>
hmm, is there a way to get the fancy Nix 2.0 progress bar for system rebuilds?
<andreabedini>
and have the build sym-linked into ./result2
<sphalerite>
joepie91: nix build -f '<nixpkgs/nixos>' system && nixos-rebuild <action>
<andreabedini>
but the link is broken because the build happened in the other filesystem (within the container)
<sphalerite>
:p
<joepie91>
sphalerite: ... I'll accept it. it's a horrible hack, but I'll accept it. :)
<joepie91>
thanks :P
<sphalerite>
:D
<joepie91>
sphalerite: hmm, first one can be done as non-root then, correct?
<sphalerite>
yep
<joepie91>
neat
<sphalerite>
you can do nixos-rebuild build as non-root too
* joepie91
bash alias
<sphalerite>
joepie91: watch out for the --upgrade case though if you ever use that
<joepie91>
sphalerite: what's special about it?
nuncanada has joined #nixos
<sphalerite>
it causes nixos-rebuild to run nix-channel --update first
<sphalerite>
but if you have that aliased, it will run nix build before that's hahppened
<hanetzer>
sphalerite: figured; using gentoo prefix you have to rebuild the world as well. What I really need to do is just get around to setting up a proper crosstool profile for gentoo
<joepie91>
right, worst case that'll just cause most of the work to happen in rebuild
<joepie91>
instead of nix build
<sphalerite>
yeah, it won't truly break anything.
<sphalerite>
oh and you probably want --no-link on nix build, to avoid leaving result symlinks lying about everywhere :)
<gchristensen>
hanetzer: a trouble is in NixOS, the world rebuilds much more than in Gentoo
<joepie91>
possibly we need a nixos-rebuild-fancy :)
<sphalerite>
joepie91: or just update nixos-rebuild itself to use nix build
<gchristensen>
^
<hanetzer>
gchristensen: fun.
<joepie91>
I don't see that happening until `nix` is considered non-experimental though
<sphalerite>
I'm guessing the obstacle to that is that it's not considered a stable interface yet.
<sphalerite>
yeah
<gchristensen>
^
asymmetric has joined #nixos
<joepie91>
btw, is there a reason to not just *always* run nixos-rebuild with --upgrade?
<sphalerite>
yes, you may want to apply config changes without updating the system
michael_ has left #nixos [#nixos]
<joepie91>
right, but once you've updated the local copy of the channel, then that's it, right? it'll install updates when you rebuild?
<sphalerite>
be that because you have no network connection, because you don't have the space, because some dep of your system doesn't build…
<sphalerite>
yes
<joepie91>
I feel like there's an ergonomics win to be had there
michael5423 has joined #nixos
<asymmetric>
does anyone know how to keep track of when a merged PR will make it to the unstable channel?
<sphalerite>
joepie91: it rolls back to the previous generation of the channels profile. So where it was before the last nix-channel --update
<joepie91>
right, and is that repeatable? or is there only one rollback step possible?
<sphalerite>
yes, it's kind of terrible UI since there's no obvious way to list the generations or jump to a specific one :)
<sphalerite>
you can do --rollback over and over again until you reach the first gen that hasn't been deleted
<gchristensen>
sphalerite: --rollback <n>?
<joepie91>
right
<joepie91>
thanks :)
<sphalerite>
gchristensen: TIL
<joepie91>
totally different question: why was xonotic excluded from hydra again?
<joepie91>
asset size?
<asymmetric>
sphalerite: what am i looking at? :D meaning, how do i find the PR i'm looking for?
civodul has joined #nixos
<sphalerite>
gchristensen: apparenrly this doesn't exist for nix-env (or if it does it's not in the manpage). Yay consistency!
<sphalerite>
gchristensen: nor does --list-generations exist for nix-channel
<sphalerite>
>.>
<sphalerite>
asymmetric: the "input changes" bit shows which commit of nixpkgs is being built
<sphalerite>
asymmetric: you can look at the history to see if the merge commit is included in that rev
<gchristensen>
sphalerite: yay consistency indeed :P --switch-generation for nix-env
<sphalerite>
joepie91: yep. 40cd4a8a9d67
<joepie91>
excellent, I have my testcase then
<sphalerite>
testcase?
<joepie91>
sphalerite: working on an overlay for difficult-to-package and experimental stuff that would be a pain to get merged into or built for nixpkgs in its current state
<joepie91>
a more experimental playground, so to say
<sphalerite>
ah
<sphalerite>
for vdrift, which was previously excluded for the same reason, I split it up to consist of the binary, the data separately, and a wrapper that points the binary to the data
<joepie91>
yeah, that is my current idea, sort ofc
<joepie91>
of*
<joepie91>
problem is that "pointing the binary to the data" is not always a possibility
<asymmetric>
sphalerite: got it, thx
<joepie91>
and using a data package as an input for a 'combined' package can easily lead to bloat issues
<sphalerite>
joepie91: paaaaatch it! :p
<asymmetric>
sphalerite: do builds make it to the channel even if there are some failures?
<joepie91>
having a duplicate copy of all assets in your store
<joepie91>
sphalerite: well, the idea here is to have a playground to experiment in :)
<joepie91>
without having to go through a PR process every time I need to change the approach
<sphalerite>
asymmetric: to nixos-unstable-small, yes. nixos-unstable, I'm not sure what the exact criteria are
<joepie91>
once it works out, it can be adopted in nixpkgs or w/e
<joepie91>
sphalerite: there's a few other things I'm working on that I expect nixpkgs to be wary of, such as PlayOnLinux-style "ship a crapton of WINE versions and package games with deps on specific WINE versions and configs"
<sphalerite>
oh yeah, I wanted to do something similar with sauerbraten as well
<sphalerite>
well, I packaged the community edition client locally, never published it anywhere I think…
<joepie91>
sphalerite: basically, this overlay + build server would be my dumping grounds for "shit that doesn't go in nixpkgs and/or is still being actively worked on too much to go through a PR process", whatever that stuff may be :P
<joepie91>
rolling release
<joepie91>
no stability guarantees, etc.
<sphalerite>
joepie91: sounds good
<andreabedini>
docker solution: `docker run --rm -v nix:/nix -v $PWD:/src nixos/nix sh -c 'cp -r $(nix-build /src) /src/result'` will build your derivation inside a nixos container and copy back ./result into the current folder, zero setup (other than having docker installed)
alexteves has joined #nixos
<andreabedini>
the derivation will pick nixpkgs from inside the container, so system will change automatically
<gchristensen>
andreabedini: dangerous :/
<andreabedini>
gchristensen: you can always pin the nixpkg revision you like from your derivation
<gchristensen>
the nix DB doesn't know about those paths so they could go away
<sphalerite>
your dependencies are very likely to go AWOL with that approach
<joepie91>
andreabedini: I don't know what your reason for doing Docker-based builds is, but obligatory warning: Docker does not provide secure isolation against untrusted software or actors
<andreabedini>
my use case is building a (static) binary to redistribute
<joepie91>
if that's not what you're expecting, then you can ignore said warning :P
mt_caret1 has quit [Quit: Lost terminal]
<gchristensen>
it isn't a good idea to share your nix store like that, and may cause unexpected problems
<andreabedini>
appreciated joepie91, I'm fine with it (also given on macOS docker runs inside a linux vm anyway)
<gchristensen>
and we strongly recommend against that approach
<joepie91>
right, just wanted to make sure you were aware, heh; this is one of *the* most common misconceptions I see around Docker
<andreabedini>
gchristensen: oh, I'm not sharing the nix store with the host! :D
<andreabedini>
`-v nix:/nix` creates a volume called `nix` and mounts it at `/nix`
<gchristensen>
ooooh neat
<gchristensen>
ok well less bad :)
<joepie91>
wait, is that shared folders, or just a disk image?
<andreabedini>
so that the volume persists the container (which gets automatically deleted with `--rm`)
<sphalerite>
ooh, github comment edit history is now public?
<joepie91>
ah, if it's just a disk image, it's fine
karlguy has quit [Ping timeout: 240 seconds]
<joepie91>
sphalerite: yeah, but not retroactively
<joepie91>
only for edits made after the feature was introduced
<gchristensen>
for making linux builds on macos trivial
<joepie91>
(I already checked :P)
<andreabedini>
joepie91: -v $PWD:/src shares the current folder with the container
<andreabedini>
gchristensen: you are showing that link now ಠ_ಠ
<andreabedini>
:)
<joepie91>
andreabedini: so when you say it "creates a volume called nix", does "volume" refer to a folder on disk (ie. shared folder), or an actual disk image (eg. qcow)?
<andreabedini>
joepie91: on linux it would be a folder on disk (somewhere inside /var/docker/blah)
<andreabedini>
on mac (given the vm) is a folder on the vm
<gchristensen>
andreabedini: because it is hard to start with -- you need a linux server to build it, to start using it
<joepie91>
andreabedini: right, in that case be very careful; pretty much every 'shared folder' implementation I've seen has been super unreliable, randomly introducing data corruption
<joepie91>
applies to Docker, VirtualBox, and others as well I believe
<joepie91>
qcow-esque disk images are fine though
<gchristensen>
joepie91: careful with the fud here, it is a clever solution!
mojjo has joined #nixos
<andreabedini>
joepie91: ¯\_(ツ)_/¯ sometimes you got no alternatives
<joepie91>
not FUD, just a warning :)
<joepie91>
people don't generally expect implementations like this to randomly corrupt data, and I'm not sure I understand why it happens in the first place, but it's a common-ish problems so I'd rather point it out so that people are aware
<joepie91>
problem*
<joepie91>
andreabedini: oh yeah, not saying it's bad
<joepie91>
just important to have the right expectations :p
<andreabedini>
gchristensen: looking at the repo, you're basically reimplementing docker for mac ... with nix instead of docker
<andreabedini>
<3 it
<gchristensen>
andreabedini: :D yep, with the help of puffnfresh. Target and Atlassian sponsored a lot of this work! do you have any good name ideas for it? Nix for Mac is bad because ... nix works fine on mac.
<joepie91>
anyway, the shared folder corruption issue is something that's still on my to-research list; I haven't yet seen a plausible explanation for it, but it seems to occur in basically every virtualization and containerization system, so I'm super curious what causes it
<gchristensen>
and Linux Nix for Mac is "wat"
<joepie91>
gchristensen: Nix Subsystem For Mac
<joepie91>
:P
<andreabedini>
lol
<mojjo>
hi! Say I have a derivation which is merely a wrapper bash script looking like so: ` writeShellScriptBin "my-exe-wrapped" {} "DIR=${someDerivation}/config ${someOtherDerivation}/bin/my-exe" ` I'm looking for a way to make *one* executable from this (which I need to deploy somewhere else)..
pie__ has quit [Ping timeout: 276 seconds]
<joepie91>
hmm, sanity check; if I have derivation A and it contains symlinks to files in derivation B, then that will keep derivation B from being garbage-collected, right?
<joepie91>
assuming that derivation A is somehow in the root
<joepie91>
cc sphalerite since you seemed on a roll :P
wchresta has quit [Remote host closed the connection]
<sphalerite>
joepie91: yes
<joepie91>
then I may have a generalizable solution for binary + asset data \o/
<gchristensen>
andreabedini: anyway I can (try to) ping you when the bootstrapping problem is fixed.
<aminechikhaoui>
I need some systemd help :), so I have this /etc/fstab on a GCE instance http://termbin.com/nqla, and that device is up in the filesystem but it's seems systemd is having trouble seeing it as `393 dev-mapper-n\x2de4f2f7331b0b11e8af4202420fd689de\x2dmachine\x2ddata.device start running` keeps in start running until timing out
<sphalerite>
please pretend I didn't make any quote balancing errors there
<andreabedini>
gchristensen: I'm looking and it's very interesting
<joepie91>
one package for binary, one package for assets, and a 'composite' package that builds a 'composite environment' consisting of symlinks to both binary and asset data at the highest level possible
<sphalerite>
joepie91: /run/current-system/sw/share/terminfo is often a good illustration, if you have some terminal emulator that provides its own terminfo
<sphalerite>
mojjo: that looks like a .NET-specific thing. And our discussion is unrelated AFAICT :p
<sphalerite>
well if system-path takes a long time to build then yes
hanetzer has quit [Quit: WeeChat 2.1]
<joepie91>
I think that's where the slowdown is, yes
<sphalerite>
But I'd suspect evaluation is a lot more expensive thna that
xcmw has joined #nixos
<sphalerite>
and setting up the sandbox has a non-negligible impact as well for all the little trivial derivations involved in building nixos
<sphalerite>
I guess it also depends on how much stuff you have in your systemPackages.
xcmw has quit [Client Quit]
<mojjo>
sphalerite: yeah, nix-bundle looks very promising.. The examples work here. I'm just wondering how I can use it with a custom derivation, which I have defined as default.nix inside my project dir.
sbdchd has joined #nixos
<datakurre>
Anyone around, who'd know how to run "elm-test" on NixOS?
xcmw has joined #nixos
<sphalerite>
mojjo: you could modify the expression created in nix-bundle.sh, or make an overlay so that your custom thing is available in nixpkgs's scope
<mojjo>
datakurre: I assume you receive an error with interface-to-json, no?
<fendor>
hello, i am trying to install rstudio with ggplot2, i adapted my ~/.config/nixpkgs/config.nix file to contain https://hastebin.com/maxiqalile.scala, but if i start rstudio via `rstudio`, it claims that ggplot2 is not installed
justbeingglad has left #nixos [#nixos]
<datakurre>
mojjo: I didn't get that far. Already "nix-shell -p nodePackages.elm-test" fails.
<datakurre>
mojjo: Assuming that is the correct package.
<datakurre>
mojjo: I'm not on unstable, but 18.03
sbdchd has joined #nixos
<{^_^}>
[nixpkgs] @pSub pushed commit from @vcunat to release-17.09 « libvorbis: upstream patch for CVE-2018-10392 »: https://git.io/vhMu1
<mojjo>
the reason is that this node package has some dependencies from npm which are not nixified.. You must sort of replace them with the ones people already patches for nix. Right now, I'm not installin elm-test via nix. Instead I install is in the elm project itself via npm. then I run the following script, which replaces the relevant deps in the node
<teto1>
sphalerite: I overrode the nixpkgs-overlay so it isn't that. I am working on a PR to make kernel building better so the mistake might come from my code but not sure where to start
<sphalerite>
fendor: you probably want an overlay. Try wrapping what you pasted in self: super: { … } and putting it in ~/.config/nixpkgs/overlays/rstudio.nix then running nix-env -f '<nixpkgs>' -iA studioWrapper
booglewoogle has joined #nixos
<sphalerite>
pie__: tinc.lugnet-netdev.service I think
<sphalerite>
well, s/lugnet/name-of-yours/
<pie__>
thanks ill give it a look
asymmetric has quit [Ping timeout: 264 seconds]
<booglewoogle>
hey there. i have just compiled the simplest helloWorld.hs haskell program via 'ghc --make' and tried to run the binary on another linux (mint) machine. says there's no such file. both are 64bit systems. what's happening here?
jasongro` has joined #nixos
<pie__>
booglewoogle, the ld.so for the binary from your nix machine probably does not point to the standard ld.so
<pie__>
you need to patchelf it but i cant remember off the top of my head the paths
<booglewoogle>
okay, i see
<booglewoogle>
thank you!
<pie__>
well, thanks me after it works :D
<booglewoogle>
makes so much sense though, i'm optimistic :D
<booglewoogle>
just gotta find out about patchelf now
<sphalerite>
booglewoogle: generally speaking, you can't just move stuff built on a nix-based system around.
<pie__>
sphalerite, the file contains ip tuntap add dev "tinc.mynet" mode "tun" user "root"
<pie__>
sphalerite, but if i run systemctl restart on the service it doesnt seem to do anything
<sphalerite>
does systemctl status tinc.mynet-netdev say anything useful?
<pie__>
it says its running but let me check again
<pie__>
yeah nothing useful
<pie__>
im not even sure its actually restarting it
<fendor>
sphalerite, well it downloads at least the dependencies. Why did I need an overlay?
<pie__>
i guess it is
<simendsjo>
Does the emacs package somehow mangle the NIX_PATH variable (splits at first '='..?)? Seems it's corrupt when checking from emacs, which it looks fine before launching emacs: https://github.com/NixOS/nixpkgs/issues/42131
<pie__>
sphalerite, ah well ok i think it does seem to create the device it just wasnt configured so it was hidden in ifconfig, let me poke around some mroe
<pie__>
basically my problem is the vpn died after a rebuild switch
<sphalerite>
fendor_: oh wait I'm confusing your issue with a different one
<fendor_>
nah, i did another mistake... the current problem is, that variables like pkgs and the stable channels are not defined
fendor has quit [Ping timeout: 260 seconds]
<fendor_>
and if i try to get pkgs get passed as a parameter, there is infinite recursion
<sphalerite>
fendor_: if you put something in your config.nix it just ends up in nixpkgs's config attr, but that doesn't mean it's going to get used by anything
<sphalerite>
fendor_: meanwhile overlays are functions that actually extend nixpkgs, allowing you to define your own stuff on top of it
asymmetric has joined #nixos
<sphalerite>
fendor_: try replacing both stable and pkgs in your expression with `self`
<pie__>
well it doesnt seem like the right issue but its definitely an issue, what in the world is going on here:
<pie__>
if out=$(ip route add "10.0.164.0/24" dev iaa_cluster dev "tinc.iaacluster" proto static 2>&1);
<pie__>
dev iaa_cluster dev "tinc.iaacluster" ??
<fendor_>
sphalerite, still infinite recursion
<sphalerite>
fendor_: that's odd, could you paste the whole thing? And your ~/.config/nixpkgs/config.nix as well?
simendsjo has left #nixos ["ERC (IRC client for Emacs 25.3.1)"]
<pie__>
can i get the whole systemd config to be rebuilt somehow?
<sphalerite>
pie__: you could try nix verify-path on the path if you think it might be path corruption
<pie__>
i think some kind of bad file generation but im usually wrong
simendsjo has joined #nixos
<sphalerite>
fendor_: right, your config.nix is probably breaking stuff. Try renaming that so it doesn't get picked up and see if that makes it work
<sphalerite>
fendor_: your config.nix looks like you're trying to use nixos options for your nixpkgs config, which doesn't work — environment.systemPackages, services.* and such are nixos options, not nixpkgs config options
<fendor_>
sphalerite, renamed to config_.nix, but same error.
thblt has left #nixos ["ERC (IRC client for Emacs 26.1)"]
<fendor_>
sphalerite, yeah, my config file is a little bit odd, never took the time to actually understand it, which is why it is mainly garbage
tzemanovic has quit [Remote host closed the connection]
<sphalerite>
or at least evaluates
<sphalerite>
it's still doing some downloading so I'm not sure if it builds everything and runs successfully yet.
<pie__>
sphalerite, nix-store --verify --check-contents gave nothing *shrug*
* pie__
checks his files more closely
<fendor_>
sphalerite, oh, i renamed it from rstudioWrapper to myRstudioWrapper
jmiven has quit [Quit: co'o]
<fendor_>
now it builds the dependencies i think
<fendor_>
yeah c libraries are beign built
slyfox has quit [Quit: :)]
<pie__>
ok well i found the problem heh, uses error for the parameter setting there, at least partly
<sphalerite>
fendor_: oh, if you used the same name that the normal nixpkgs thing has then yes it's normal for that to cause infinite recursion
<fendor_>
yeah, makes actually sense
jmiven has joined #nixos
<pie__>
i really need to clean up my config files somehow (WIP)
<fendor_>
sphalerite, but why didnt it work in the config.nix? just because it is really broken?
<sphalerite>
fendor_: in your paste you called it studioWrapper, not rstudioWrapper so I thought you had a different name
<sphalerite>
fendor_: pretty much — that's just not how config.nix works
<fendor_>
sphalerite, but i am pretty sure, that it worked once... what else should i remove from the config.nix?
<sphalerite>
fendor_: the allowUnfree and chromium bit is the only bit that makes sense really
<pie__>
still dont see why dev gets added twice
<fendor_>
what about the vim configuration?
<pie__>
ah ok i see it
<pie__>
it was implicit
<sphalerite>
fendor_: the rest is either nixos options (/etc/nixos/configuration.nix territory) or custom packages (overlay territory)
<sphalerite>
oh and it should just be a simple set, not a function
rihards has joined #nixos
<sphalerite>
so basically it should look something like `{ allowUnfree = true; chromium = { enablePepperFlash = true; enablePepperPDF = true;}; }` and that's it
<sphalerite>
so your myNeovim can go in your overlay as well, then you can install it using nix-env -f '<nixpkgs>' -iA myNeovim
Fare has quit [Ping timeout: 260 seconds]
michael5423 has quit [Ping timeout: 260 seconds]
WilliButz has quit [Read error: Connection reset by peer]
slyfox has joined #nixos
<fendor_>
sphalerite, ok, thanks! if i want to update, is neovim and rstudio automatically updated=?
<sphalerite>
fendor_: you'll need to rerun the nix-env command to update them
WilliButz has joined #nixos
<sphalerite>
for updating stuff in general, there's some advice in the wiki page on nix-env -iA vs -i (because nix-env -u has the same problems as nix-env -iA without -A)
<pie__>
sidenote: youll probably eventually want to progress past using nix-env to a more declarative configuration though (imho), just something to keep in mind
<sphalerite>
pie__: declarative configs can use nix-env too
<sphalerite>
see the wiki page ;)
<pie__>
ah well my bad :D
<sphalerite>
I use nix-env with -r for declarative config
Fare has joined #nixos
lo_mlatu has quit [Quit: Connection closed for inactivity]
<pie__>
what does -r do
* pie__
didnt find it in a quick man page search
tzemanovic has joined #nixos
<sphalerite>
-r/--remove-all removes everything except the things specified to be installed
<pie__>
ah heh
<pie__>
well crap:
<pie__>
# systemctl restart network.target
<pie__>
Failed to restart network.target: Operation refused, unit network.target may be requested by dependency only (it is configured to refuse manual start/stop).
<fendor_>
sphalerite, to what to the paramters super and self exactly refer?
<sphalerite>
so if you have an overlay like self: super: { myStuff = { inherit (self) firefox zsh foo bar baz; }; } you can do nix-env -irf '<nixpkgs>' -A myStuff
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<sphalerite>
fendor_: the final and the previous "layer" of nixpkgs
<sphalerite>
I don't think there's a way without separately determining what <nixpkgs> is
<pie__>
sphalerite, cant i somehow restart everything thats a parent node of network, or however that works
<joepie91>
thanks, you really are on a roll today :P
<joepie91>
yeah, that's fine
<joepie91>
so long as I'm not hardcoding store paths it's all good, heh
<fendor_>
sphalerite, can i still differentiate betweeen an unstable and stable channel in overlays?
slyfox_ has joined #nixos
<sphalerite>
fendor_: not really, since the overlay is applied to whichever nixpkgs is being evaluated. But you can for instance do nix-env -f channel:nixos-18.03 -iA myRStudio or whatever
<sphalerite>
or if you have the appropriate NIX_PATH entries, nix-env -f '<nixpkgs-unstable>' -iA myRStudio
<sphalerite>
etc etc
<fendor_>
sphalerite, ok, so, everythings complicated
<fendor_>
i will try to experiment
<yyadavalli>
Hi, I am having audio issues with firefox and mpv installed using nix, can someone please help me.
<fendor_>
thanks for the help!
<yyadavalli>
I am currently using nix package manager on an arch linux install
slyfox has quit [Ping timeout: 268 seconds]
<yyadavalli>
I believe the issue is with alsa
Ariakenom_ has joined #nixos
__monty__ has joined #nixos
<yyadavalli>
What setup is required for applications installed using nix to use alsa?
<sphalerite>
fendor_: if you want to make one piece to combine packages from different versions of nixpkgs you'll need to go a layer above. Yo ucould write something like let stable = import <nixpkgs> {}; unstable = import <nixpkgs-unstable> {}; in { inherit (stable) myRStudio; inherit (unstable) firefox; } , put that in userPackages.nix, and do nix-env -f userPackages.nix -i to install your R Studio config with
<sphalerite>
stable versions and firiefox from unstable
<sphalerite>
yyadavalli: there shouldn't be anything in particular AFAIK. What issues are you experiencing?
<yyadavalli>
No audio at all
Ariakenom has quit [Ping timeout: 276 seconds]
<yyadavalli>
mpv has errors [ao/alsa] Playback open error: No such file or directory [ao] Failed to initialize audio driver 'alsa'
<sphalerite>
Do you have pulseaudio set up? Firefox requires pulseaudio nowadays (not just from nixpkgs)
<fendor_>
sphalerite, that sounds nice, thanks!
<sphalerite>
Do audio-related applications from arch work correctly?
<yyadavalli>
sphalerite, yes
pie_ has joined #nixos
pie__ has quit [Read error: Connection reset by peer]
<yyadavalli>
In fact both firefox and mpv from pacman work fine
<sphalerite>
hm ok… can you maybe share the full output from mpv?
<sphalerite>
joepie91: it's been too long since I've been properly active here, catching up a bit ;)
<sphalerite>
yyadavalli: hm ok. I'm not sure what's going on there but I can help you debug if you want (of course if you prefer to just give up and use arch's that's okay too. But I always like to work issues with nix out so we can improve the experience 😉)
<pie_>
sphalerite, i get this issue consistently "Jun 17 17:38:40 serv network-addresses-tinc.iaacluster-start[11151]: adding route 10.0.16.0/24... 'ip route add 10.0.16.0/24 dev tinc.iaacluster' failed: RTNETLINK answers: Network is down"
<pie_>
if i do a restart of the networking services
<jD91mZM2>
yyadavalli: Do you have apulse installed on Arch?
<yyadavalli>
I would love to debug, I want to know more about how nix works. I can fallback to pacman anytime.
<sphalerite>
pie_: the link unit needs to be started first. I think there should be a dependency expressing that between them really…
<pie_>
sphalerite, it appears that there is not?
<yyadavalli>
jD91mZM2 no
<jD91mZM2>
Any other compatibility packages like alsa-oss?
<sphalerite>
yyadavalli: since the error you're getting is no such file or directory, working out which file or directory is missing would help. So maybe strace -fo >(grep ENOENT) mpv <file> can enlighten us a bit. Probably a good idea to use an audio-only file so we don't get too much X11 junk mixed in
<mojjo>
does anyone know how I would use nix-bundle on the build result inside e.g. a travis build?
<yyadavalli>
Yes I have alsa-oss and some others (alsa-lib, alsa-plugins, alsa-tools, alsa-utils)
<yyadavalli>
I will try that
<jD91mZM2>
What happens if you install alsa-oss and similar in nix as well?
<pie_>
sphalerite, do you know how i could add the missing dependenvy
<{^_^}>
[nixpkgs] @xeji pushed commit from @wfranzini to master « riemann-tools: 0.2.6 -> 0.2.13 (package name only) (#42040) »: https://git.io/vhMoZ
* pie_
checks that he catted the right files
<mojjo>
When building a derivation on my machine via `nix-build default.nix` there are no problems. However, when running the same thing on travis, the build fails with the error `Setup: Encountered missing dependencies: free >=4.6 && <5` while building a haskell project.. Any ideas what could make the difference?
<pie_>
ok i guess it works now
<sphalerit>
pie_: if you make a PR, ping me in it :)
<manveru>
mojjo: your nixpkgs version might be different
<pie_>
sphalerit, well its not a big thing so it might be good if you made one since i dont have a github ;D
<pie_>
part of the confusion may have been that apparently restarting a service in systemd may not restart other services so thats why some of my testing was breaking
<{^_^}>
[nixpkgs] @xeji pushed commit from @r-ryantm to master « mkdocs: 0.17.3 -> 0.17.4 (#41988) »: https://git.io/vhMoF
<pie_>
i havent figured out the exact relationship between what is and isnt getting restarted but i think that maybe should be fixed...
<pie_>
or at least, it worked during rebuild switch but my manual restart doesnt seem to work correctly
<sphalerit>
Yeah, there's a lot to cover with unit dependencies
<nh2[m]>
how can I use `--builders` to build *everything* removely, no package locally?
<pie_>
bleh
<pie_>
so this works: systemctl restart network-local-commands.service network-addresses-enp0s25.service network-interfaces.target network-addresses-tinc.iaacluster.service
<sphalerit>
nh2: add -j0
<pie_>
which i got with (Thanks stackoverflow): systemctl show -p Wants network.target | cut -d= -f2
<nh2[m]>
(removely -> remotely)
<sphalerit>
nh2: or use --store instead, in which case the stuff won't be copied to the local machine either
<mojjo>
manveru: True, how can I find out for sure which one is used locally? And how could I make sure that the same one is used by travis?
<pie_>
im not sure if thats actuall restarting the link
<pie_>
i think that might only be restarting the immediate ancestors
<pie_>
it seems really complicated to get a full network stack reboot -_-
<{^_^}>
[nixpkgs] @xeji pushed commit from @yrashk to master « slack: 3.2.0-beta25a7a50e -> 3.2.1 (#42043) »: https://git.io/vhMKM
<pie_>
which seems like a horrible requirement
johanot has quit [Ping timeout: 264 seconds]
<pie_>
sphalerit, ah also for a pr, i think you would have to make the dependency optional on whether there even is a link service?
<nh2[m]>
Linus: -j0 sounds like a good idea but it complains: "unable to start any build; either increase '--max-jobs' or enable remote builds"
<pie_>
idk if there is always one
<nh2[m]>
I want remote builds, not sure why it thinks they aren't enabled
<sphalerit>
nh2: then they're not configured right, or the builders can't be reached, or something
<sphalerit>
pie_: yeah I think that's what after does, unless you also have requires
<nh2[m]>
Linus: if I give it more packages than 2 to build, then it starts building remotely :o
timjrd has joined #nixos
<nh2[m]>
Linus: in particular, if I tell nix-store --realise to build both chromium and opencv, then it builds chromium locally and opencv remotely; if I tell it to build only chromium, it refuses
<nh2[m]>
so it seems to think that it can build opencv remotely, but not chromium for some reason
<sphalerit>
nh2: chromium requires the big-parallel feature
<sphalerit>
So if you add that to your builder's supported features it should work
<sphalerit>
Very non-obvious :|
<timjrd>
Hi! I'm packaging an application for nixpkgs, and I would like to know if it's possible to get the outPath of a derivation inside its nix-expression ?
asuryawanshi has joined #nixos
<sphalerit>
timjrd: sort of.
<nh2[m]>
Linus: how can I make my remote host have that feature? I can see I can *require* it with `requiredSystemFeatures`, but am struggling to find how to declare a machine has it.
alex`` has joined #nixos
<nh2[m]>
I'm using currently `--builders 'ssh://root@1.2.3.4 x86_64-linux'`, does it go somewhere in there?
<sphalerite>
timjrd: is there a reason you can't use the $out environment variable?
<LnL>
timjrd: that was added in 2.0 but you can't use that in nixpkgs yet
<sphalerite>
nh2[m]: yep — in the 6th field
<LnL>
timjrd: there are a number of ways to solve that so you don't need it at eval time
<pie_>
sphalerite, idk. i think something is still screwed up in the dependency graph
<sphalerite>
nh2[m]: thank you for making the PR. Happens so often that we discover this sort of thing, say "that should be in the docs", then nothing…
<{^_^}>
[nixpkgs] @xeji pushed commit from @r-ryantm to master « obs-linuxbrowser: 0.3.1 -> 0.4.0 (#41978) »: https://git.io/vhMPp
sbdchd has quit [Remote host closed the connection]
<sphalerite>
yyadavalli: did you try strace-ing speaker-test from both nixpkgs and arch to compare?
<joepie91>
nh2[m]: this is not that bad an idea :) I'm trying to get myself into a similar habit for Node.js questions... any time somebody asks something, I don't respond until I've put it in a gist or whatever
<nh2[m]>
sphalerite: sounds reasonable to me; I started using all my NixOS servers as builders to get big building speedups
brodul has joined #nixos
<nh2[m]>
I also made myself a small nixops config that allocates me an AWS m5.24xlarge instance with 48 real cores, it deploys in ~2 minutes when I'm lucky, speeding up a build of e.g. chromium from 4 hours on my desktop to 20 minutes
<__monty__>
sphalerite: Would this allow not downloading anything on the host, only on the builders?
<sphalerite>
__monty__: not quite, because it's still the host executing the build plan.
<pie_>
so...i added my local nameserver as the first entry in my resolv.conf but onyl querying it directly works ??? https://bpaste.net/show/e311a23c2b43
<sphalerite>
__monty__: so it'll only help to the point that some of the builders have stuff in their stores already, but not beyond that.
<__monty__>
sphalerite: Is this being worked on? Remote builds are great for resource limited hosts but the redundant download and upload are still pain points.
<sphalerite>
pie_: just a complete stab in the dark, but maybe you need to restart nscd to drop any caches
igo95862 has joined #nixos
<pie_>
sphalerite, note that the direct query works
logzet has quit [Remote host closed the connection]
<sphalerite>
__monty__: not to my knowledge. Although what you can do in those situations is build with --store, then copy the results and their runtime deps over using nix copy
<sphalerite>
pie_: yeah which is why I suspect the NXDOMAIN result might have been cached somewehre
<sphalerite>
(locally)
<pie_>
hm
timjrd has quit [Ping timeout: 260 seconds]
<pie_>
sphalerite, actually i think i just read that this wont work for other reasons....i read that if a server doesnt have a domain it will return "not found" and resolv wont go on to the next server?
<sphalerite>
did you set networking.nameservers to get it in there?
<pie_>
ah no i just edited it...but that usually works
<sphalerite>
¯\_(ツ)_/¯ idk the exact details
<pie_>
actually i have two machines, on the other one i did set that and it has the same problem
<sphalerite>
that's possible, I'm not sure how that works either. But if the server forwards local queries for global domains correctly you won't get that
blankhart has quit [Ping timeout: 245 seconds]
<ThatPako>
where would I store my mkDerivation wrapper?
<sphalerite>
ThatPako: what mkDerivation wrapper?
<ThatPako>
sphalerite: I'm trying to do something like buildRustPackage but for emojicode
<sphalerite>
for nixpkgs?
<sphalerite>
pkgs/build-support probably
alexteves has quit [Ping timeout: 240 seconds]
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<ThatPako>
so I have to clone the entirety of nixpkgs for this?
<ThatPako>
wew
<sphalerite>
if you want to put it in nixpkgs, yes
<sphalerite>
if you want to use it on top of nixpkgs, no
<ThatPako>
how long would it take for that RP to be accepted?
<ThatPako>
right now all I have is the emojicode compiler in a local expression imported into my systemPackes
<yyadavalli>
sphalerite, sorry had to step away for a little while. I'm trying strace now
<sphalerite>
yyadavalli: no worries!
<sphalerite>
ThatPako: I don't know, it depends on how good it is :p
<ThatPako>
sphalerite: is that regarding how long the pr would take? lol
<sphalerite>
also just based on the name (correct me if I'm wrong) it sounds like a toy language where providing first-class support would be a maintenance burden without a major benefit
<sphalerite>
yes
foldingcookie has joined #nixos
alexteves has joined #nixos
<ThatPako>
well, one might call it a toy language. It can do anything a normal language does though. Uses LLVM as backend and all those fancy thingamajings
<ThatPako>
Is it possible to use a local nixpkgs clone but have it cross-check with the official one for updates?
<ThatPako>
would be nice if I could use the stuff before the PR is accepted, but I don't want to pin my system to the packages from when I cloned the repo
<sphalerite>
yyadavalli: speaker-test might be better since it does less
<sphalerite>
ThatPako: well you could make an overlay and test building stuff with -I nixpkgs=/path/to/your/nixpkgs and -I nixpkgs=channel:nixos-unstable
<sphalerite>
you can put it on NIX_PATH, but note that that'll also affect nixos itself
Ariakenom_ has quit [Quit: Leaving]
<ThatPako>
I somehow have to make it the default though. How else would I add the emojicode compiler into my systemPackages?
sbdchd has joined #nixos
<sphalerite>
you could make an expression for the compiler like the ones in nixpkgs (function taking dependencies as arguments), and put (pkgs.callPackage ./emojicode.nix) into your systemPackages
<ThatPako>
oh
<ThatPako>
but I need to do `-I nixpkgs=/some/path`to get access to my build function which would then call mkDerivation?
tzemanovic has quit [Ping timeout: 260 seconds]
<ThatPako>
unless I use that approach from infinisil
<sphalerite>
no, you could just put your build function in a file next to configuration.nix
<ThatPako>
hm?
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<ThatPako>
sphalerite: how would that work?
sary has quit [Ping timeout: 260 seconds]
spear2 has quit [Ping timeout: 240 seconds]
<sphalerite>
put it in /etc/nixos/emojicode.nix and (callPackage ./emojicode.nix {}) in your systemPackages
<sphalerite>
yyadavalli: maybe take out the -o >(grep ENOENT) bit so we get all the system calls. But I think we're on a good route to finding out something!
<sphalerite>
because there are certainly some distinctive similarities between the traces
sbdchd has quit [Remote host closed the connection]
johanot has joined #nixos
tmaekawa has quit [Client Quit]
kiloreux has quit [Quit: Leaving]
<ThatPako>
sphalerite: so my buildEmojicodePackage would live in emojicode.nix too?
<sphalerite>
well depends
<sphalerite>
if you really want to go there I think an overlay would be the best place to do that sort of thing
<{^_^}>
[nixpkgs] @markuskowa opened pull request #42133 → nixos/pgbackup: Fix and refactor the postgres backup module → https://git.io/vhMFW
xAFFE has joined #nixos
<pikajude>
has anyone here used tinc before?
<sphalerite>
pikajude: yes. How about asking a more useful question? :p
<cocreature>
hey, I’m trying to enable benchmarks for my haskell package using haskell.lib.doBenchmark but the benchmarks are still not being compiled and run when I run "nix-build". here’s my "default.nix" https://gist.github.com/cocreature/faab392d7a39b7f0b3f4ccfc2ded08f2
<cocreature>
doBenchmark seems to be doing _something_ since the dependencies are being built and included in a nix-shell environment
<elvishjerricco>
cocreature: `doBenchmark` does not cause the benchmarks to be run in the `nix-build`. Just makes the packages available so that you can use them in a `nix-shell`
<cocreature>
also if that’s not the right way to enable benchmarks being run, what is?
slyfox has joined #nixos
<elvishjerricco>
cocreature: I don't think there is a way to do it built in at the moment. Benchmarks aren't really meant to be test cases.
<cocreature>
well at least I would want to test that they still build
<elvishjerricco>
cocreature: Yea. I'd also like to see benchmark exes installed in `$out/bin`, so that I could run them
<elvishjerricco>
Maybe `--enable-benchmarks` does that? Try adding that as a configure flag
<cocreature>
elvishjerricco: thanks! that works :)
<elvishjerricco>
cocreature: Does it put the bench exes in `bin`?
<cocreature>
nope but at least it builts the executables
Lev has joined #nixos
<elvishjerricco>
Darn. Oh well, glad this suits your needs
alex`` has quit [Quit: WeeChat 2.1]
<elvishjerricco>
cocreature: It'd probably be good if generic-builder added that configure flag when `doBenchmarks = true;`
<cocreature>
yeah, we should probably also adjust the docs to mention the fact that the benchmarks are not being executed
<cocreature>
(or change the generic-builder to execute them)
<elvishjerricco>
Anyone have any ideas for making the nixos module system a bit more modular? The main thing is making it so that only the modules you actually use have to be evaluated. But also dependency management; i.e. the diamond problem if I want to import two modules from github and there's a third module they each want to import.
fendor_ has quit [Ping timeout: 256 seconds]
rardiol1 has joined #nixos
<elvishjerricco>
Asking because I think it's *generally* a good pattern, and I think it'd be great to have a generalized `nixos-rebuild build` for project types other than NixOS configs, but the modularity is a bit of a blocker
benley has quit [Quit: WeeChat 1.9.1]
<sphalerite>
elvishjerricco: thing with not evaluating everything is that manual generation requires all the modules
<infinisil>
elvishjerricco: The reason the current implementation can't only evaluate the files it needs, is because it does 2 passes: First it goes through all imports transitively and assembles all the options, then it goes through all files again and checks if they assign a valid option
<sphalerite>
(as in generation of the manual, not generating things manually)
alex`` has joined #nixos
<infinisil>
So setting an option can't influence the amount of options that are available by design
<elvishjerricco>
infinisil: Right, and I think that's fine. The solution would be to have people `imports` only the modules they need and not import everything every time.
Lev has quit [Quit: This computer has gone to sleep]
<elvishjerricco>
sphalerite: And in that case, a manual could be generated by just having a module that imports everything you want to document
<infinisil>
I don't think that's a good idea
lord| has quit [Ping timeout: 245 seconds]
<elvishjerricco>
infinisil: Probably not for NixOS
<elvishjerricco>
but again, my interest here is more general
<sphalerite>
I do love the idea of requiring explicit imports.
endformationage has joined #nixos
<sphalerite>
Not too sure about the documentation bit though.
<elvishjerricco>
The main problem to me is the dependency solving problem, when a project needs a graph of remote imports
<infinisil>
I think the config evaluation could work in three phases: include all options from 'base' modules including a module that adds all the 'enable' options, then evaluate the configurations to determine which 'enable' options have been set to true and include those options. Then lastly evaluate it again for all options
lord| has joined #nixos
<infinisil>
I thought a lot about the dependency thing, and I think it would be a mess
igo95862 has quit [Quit: igo95862]
<infinisil>
The dependencies are over options being used, but this quickly gets complicated if you have options that are only used optionally and depend on another option
<elvishjerricco>
infinisil: I'm not interested in option-level dependencies though. Just the basic ability to import other people's code, and not have problems when these imports form diamonds (with potentially mismatching versions)
<infinisil>
What's an example of where this occurs?
<pikajude>
sphalerite: it's useful to get the basics out of the way
Jackneilll has joined #nixos
<pikajude>
anyway, do you know how to override the compiler version it uses?
<pikajude>
there doesn't seem to be an obvious way
<sphalerite>
pikajude: basics?
<pikajude>
the basics of whether anyone has even heard of tinc
<elvishjerricco>
infinisil: For example, I'm considering using modules for Haskell stuff. People could write modules that add their haskell packages to the package set and perform the right configuration. Plus they could set project-wide GHC options and add install targets.
<elvishjerricco>
So then let's say I use this to import a Reflex module, but that one imports a GHCJS module, and so does some other module I import
<sphalerite>
yyadavalli: and for the working pacman one?
<elvishjerricco>
The overall goal is to get a consistent API and command line interface for any large nix build project
<infinisil>
elvishjerricco: Where the ghcjs modules are exactly the same?
woodson has quit [Ping timeout: 264 seconds]
<elvishjerricco>
infinisil: Potentially, but this is obviously a place with room for error. It's the error I'm trying to solve. What if they don't have the same ones? What's the right way to prevent that or resolve it?
<sphalerite>
pikajude: you could ask a more specific question, which would lead to more useful results, or, if nobody uses it, the same results as asking if anybody has used it.
Jackneill has quit [Ping timeout: 256 seconds]
<infinisil>
elvishjerricco: I'd go for using options for things instead
<infinisil>
elvishjerricco: Using "enable" options which act the same as including something
<infinisil>
Oh
<infinisil>
Wait I think i might not get the whole problem just yet
<infinisil>
I mean, all modules will probably be known beforehand, how can it be that 2 ghcjs modules aren't the same?
<elvishjerricco>
infinisil: Yea, the point of the imports is that we can't just have options for everything everyone might be interested in. They have to be able to import their own choices
<elvishjerricco>
infinisil: If the two modules that depend on the ghcjs module both use `builtins.fetchurl` to get the source and add it to `imports`, but they fetch different versions
<sphalerite>
yyadavalli: are there differences between /usr/share/alsa.conf and /nix/store/x068z7l3wmcmkqz5ixm4s37pfpszk0w8-alsa-lib-1.1.6/share/alsa/alsa.conf that jump out at you
<infinisil>
elvishjerricco: Oh hmm
<elvishjerricco>
infinisil: Obviously there's no general way to say "These are different versions of the same module, so here's how to resolve them." So we have to find a way to prevent the situation outright, while still allowing these remote imports
pie_ has quit [Ping timeout: 276 seconds]
<infinisil>
elvishjerricco: How about a ghcjs.version option, which the ghcjs module sets, and it can be only set to 1 value
<elvishjerricco>
infinisil: That doesn't really solve anything though, because then the user just gets screwed if the two modules depend on different versions and they can't do anything abou tit
<sphalerite>
yyadavalli: interesting how the nix one tries to use /dev/snd/controlC0 while the pacman one uses /dev/snd/controlC1
<elvishjerricco>
s/abou tit/about it/
aarvar has quit [Quit: Leaving.]
<infinisil>
elvishjerricco: Oh how about this: each module sets its version number but only applies its settings if the version number matches. Then the user could mkForce this version number on a conflict
<yyadavalli>
spahlerite: there is defaults.ctl.card & defaults.pcm.card are different
<yyadavalli>
I changed them manually in the store and it works
<yyadavalli>
But what would be the correct way to achieve that
<sphalerite>
yyadavalli: ooooh! Does that also make mpv and firefox work?
<yyadavalli>
Yeah, checked both. Thanks for your help.
<elvishjerricco>
infinisil: Possibly... Honestly at this point I think the solution I'm hoping for is just version solving a la cabal :P
<infinisil>
elvishjerricco: Oh but the option declarations would still conflict
<yyadavalli>
But I have a more general question, when using nix the package manager are we expected install system packages like alsa-libs
<infinisil>
elvishjerricco: Hmm yeah, maybe the solution would be to change the module system to do versioning and declare each dependency manually..
<yyadavalli>
I mean I'm using the term system packages loosely, there is no clear demarcation
<sphalerite>
yyadavalli: changing it manually is a Very Bad Thing™ and you should definitely not leave it like that.To work around it correctly I think maybe symlinking /usr/share/alsa.conf to /ertc/asound.conf might help
<sphalerite>
basically because the applications, not the user, are the consumers of the libraries, and so they don't need to live in a shared global namespace
<infinisil>
elvishjerricco: I previously thought about having a single file for each option, and putting those files at a path that resembles the option: services.xserver.enable would be in nixpkgs/nixos/options/services/xserver/enable.nix, and do some fancy dependency resolution like this. I stumbled into some problems, but I think it's a neat idea
<yyadavalli>
what if I change the symlink ~/.nix-profile/share/alsa/alsa.conf to point to /usr/share/alsa/alsa.conf
<sphalerite>
Which leads to much more predictable bejhavoir
<sphalerite>
the nix profile is also in the store, so that's not a good idea either
<infinisil>
elvishjerricco: Then when you use an option "services.xserver.enable", it can just transform it into a path and look it up there
<infinisil>
(This may be able to solve the manual dependency inclusion problem)
<yyadavalli>
spalerite: ok, will nix pick up /etc/asound.conf?
<sphalerite>
additionally, alsaLib doesn't seem to actually search ~/.nix-profile/share/alsa/alsa.conf so it wouldn't even make a difference
<sphalerite>
yyadavalli: yes. Oh, or ~/.asoundrc should work too
<sphalerite>
I'm also not sure why the default configs are different though, or what the differences mean
<yyadavalli>
They just point to the card number on my particular machine
<yyadavalli>
So 0 is the HDMI nvidia and 1 is my ALC1220 which I use
<sphalerite>
but /usr/share/alsa.conf shouldn't be a machine-specific thing
<sphalerite>
did you modify it?
<sphalerite>
You should have put your custom stuff in /etc/asound.conf rather than modifying stuff in /usr
<infinisil>
elvishjerricco: Actually, this might work, I'll think about it some more
<yyadavalli>
I think I so, I don't remember when I did that. Do /usr/share/alsa/alsa.conf and /etc/asound.conf (~/.asoundrc) share the same format can I just symlink?
blankhart has quit [Ping timeout: 255 seconds]
Lev has joined #nixos
Lev has quit [Client Quit]
sbdchd has quit [Ping timeout: 265 seconds]
<sphalerite>
yyadavalli: yes, but since the content isn't actually the default it's better to have your config in /etc/asound.conf and have /usr/share/alsa/alsa.conf be the one from the package
<sphalerite>
because /usr is the package manager's responsibility — an update might also overwrite your changes
<sphalerite>
whereas system-local config goes in /etc
<yyadavalli>
sphalerite: Yup, I add the new config file now. I removed manually installed alsa packages from nix and everything is still working fine.
<sphalerite>
great, glad to hear it! A bit annoying that we took so long to get to the bottom of it, but hey, I think we've both learnt things :D
pie_ has joined #nixos
<yyadavalli>
Definitely, thanks a lot.
<{^_^}>
[nixpkgs] @tazjin opened pull request #42134 → Add package & NixOS module for journaldriver → https://git.io/vhDUy
bbarker has joined #nixos
<joepie91>
how do I create a derivation (folder) with a single named file in it?
<joepie91>
in my configuration.nix
<infinisil>
joepie91: writeText "name" "contents"
<infinisil>
Or writeTextDir, which creates a folder derivation
lord| has quit [Ping timeout: 260 seconds]
<joepie91>
infinisil: and writeTextDir returns a derivation?
<infinisil>
Yup
<joepie91>
excellent, thanks, that's exactly what I needed :)
<{^_^}>
[nixpkgs] @xeji pushed commit from @lopsided98 to master « python: grpcio: 1.9.1 -> 1.12.0 (#41300) »: https://git.io/vhDLE
<sphalerite>
infinisil: oooooh you have that working again, awesome
<infinisil>
Yea just turned it on for here :)
alexteves_ has joined #nixos
alexteves_ has quit [Remote host closed the connection]
woodson has joined #nixos
random_name has joined #nixos
sbdchd has joined #nixos
alexteves_ has joined #nixos
alexteves has quit [Ping timeout: 256 seconds]
<random_name>
Hey, guys! Tell me, is it possible to build two different packages (versions of the same software, with different inputs and different executable files on the output) using the same nix expression? And the configuration and build phase will be different. Or the separate nix expression will be better?
<catern>
is there an easy way to get debug symbols for Python on NixOS? i.e. without recompiling?
<catern>
I am just using Python out of a nix-shell
phdoerfler has joined #nixos
<sphalerite>
random_name: not exactly the same nix expression, but you have a parameterised expression and apply it to different arguments.
Ariakenom has joined #nixos
<sphalerite>
nixpkgs itself does this with all its packages: each package takes its various dependencies as arguments
<sphalerite>
catern: unfortunately no.
<sphalerite>
catern: availablility of debug symbols in nixpkgs is terrible :(
<joepie91>
random_name: to expand on what sphalerite said, based on what I think you're trying to ask: no, you do not need to copypaste the expression to build two different versions
<{^_^}>
[nixpkgs] @xeji merged pull request #41511 → Fixed nilfs2 fsck error at boot because its not needed by the nilfs2 filesystem → https://git.io/vhRnC
<joepie91>
and 'parameterised expression' here just means making the expression to some degree configurable through its arguments, and then using the resulting package twice with different arguments
Fare has quit [Ping timeout: 260 seconds]
xcmw has joined #nixos
<rihards>
hey, i'm a bit confused by typeclasses, like Functor, which can appear as :: Functor f => f a -> ... in type signatures. what's the thing in the typeclass definition that sets apart Functor, Applicative, Monad and others from, say, Num and Eq?
<infinisil>
rihards: Wrong channel haha
<random_name>
sphalerite, joepie91: ok, thanks!
<rihards>
damn, sorry :D
<rihards>
though i think there might be a few haskell folk here as well ;)
* joepie91
twiddles his thumbs waiting for his broken DNS records to fall out of the cache
<sphalerite>
joepie91: so irritating
<joepie91>
indeed
<joepie91>
but in about an hour I'll be able to continue setting up my build server
<joepie91>
lol
orivej has joined #nixos
<sphalerite>
can't you give it a different domain temporarily?
<hodapp>
hmmm. fix Nixpkgs' broken meshlab build, or try to learn Blender's mesh modeling again?
<joepie91>
sphalerite: $hassle
<sphalerite>
hodapp: you can do mesh modelling at all? Respect :D
<catern>
sphalerite: well - how do I do it the hard way, then? get a buildPythonPackage for my nix-shell that uses a Python with debug symbols, even if I have to recompile Python?
<sphalerite>
catern: yeah, probably easiest to use an overlay that overrideAttrs-es python with separateDebugInfo = true;
<sphalerite>
actually using the debug symbols is also not quite trivial >.> but not too hard. Basically make a buildEnv putting the debug symbols of all the packages you want together, and point gdb to $env/lib/debug
<catern>
an entire overlay? :(
<catern>
I guess I can inline it into the "import <nixpkgs> {}"
<{^_^}>
[nixpkgs] @yegortimoshenko pushed to yegortimoshenko-patch-6 « lib/modules: bump mkOptionDefault priority to 1500 »: https://git.io/vhDOR
<{^_^}>
[nixpkgs] @yegortimoshenko opened pull request #42138 → lib/modules: decrease mkOptionDefault priority to 1500 → https://git.io/vhDOE
<{^_^}>
[nixpkgs] @Ekleog opened pull request #42139 → opensmtpd: fix interaction with dovecot-2.3.1 → https://git.io/vhDOu
asuryawanshi has quit [Ping timeout: 255 seconds]
Fare has joined #nixos
<ekleog>
obadz: if you can review ^ ? :) (for 18.03 backport, I wonder whether the update to 6.0.3p1 should also be backported: 6.0.3 appears to be fully backwards-compatible? https://www.opensmtpd.org/announces/release-6.0.3.txt )
civodul has joined #nixos
random_name has quit [Quit: Page closed]
jmeredith has quit [Quit: Connection closed for inactivity]
<joepie91>
it generates absolute URLs based on the Host header...
Fare has quit [Ping timeout: 265 seconds]
thither has joined #nixos
<thither>
Hey, just trying out nixos for the first time today in a VM. Is there a more convenient way to install software than adding to the list of packages in the configuration file?
<gchristensen>
nix-env -qaP '.*git.*' and then nix-env -iA nixos.gitMinimal
<thither>
nvm
<makefu>
there is also 'nix-shell -p <package>' for just testing out tools by dropping yourself into a shell with the package in your path.
<thither>
I'm curious what happens when software performs some configuration change on its own. For example - I just installed firefox and through firefox it set itself as the default browser. Can stuff like that break NixOS's guaranteed rollback safety?
tzemanovic has joined #nixos
hamishmack has joined #nixos
<__monty__>
thither: Since the configuration probably goes into $HOME it's not managed by nix in any way.
<thither>
Okay
<__monty__>
So if the software doesn't work because of newer incompatible configuration then you could say the rollback is broken. But you can just as easily say the newer config isn't the proper config imo.
<hoshineko>
i just realized my crontab hasn't been running for a few days
<thither>
oof
<hoshineko>
I'm only using services.cron which apparently uses vixie, it used to work right out of the box, what could be wrong?
<thither>
nix manages cron too?
<thither>
Damn
rprije has quit [Ping timeout: 248 seconds]
rprije has joined #nixos
<hoshineko>
eh, I can't be fucked, I'll just use services.fcron instead
JasonGrossman has joined #nixos
vcunat has quit [Quit: Leaving.]
rprije has quit [Ping timeout: 240 seconds]
rprije has joined #nixos
<{^_^}>
[nixpkgs] @dtzWill opened pull request #42146 → libgcrypt: disable tests w/musl, seems to hang → https://git.io/vhDCm
genesis has quit [Ping timeout: 256 seconds]
<hoshineko>
oh ffs, now fcron is giving me errors when i try to add/edit my crontab
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
silver_ has joined #nixos
<angerman>
elvishjerricco: i thought I did. I’ll check when I’m at the desk. I have some annoying ssh key issues recently that might have interfered:-/
joehh has quit [Ping timeout: 256 seconds]
silver has quit [Ping timeout: 264 seconds]
xcmw has joined #nixos
jackdk has joined #nixos
andymandias has quit [Ping timeout: 245 seconds]
<pie_>
sphalerite, put too many &&, locked myself out again
<pie_>
sigh lol
rprije has quit [Ping timeout: 260 seconds]
rprije has joined #nixos
andymandias has joined #nixos
ericsagn1 has quit [Ping timeout: 264 seconds]
tzemanovic has quit [Remote host closed the connection]
tzemanovic has joined #nixos
logzet has quit [Remote host closed the connection]