<supersandro2000>
evils: you have an example? I am trying to find a good balance between a unify style and being to nitty but sometimes its a bit hard to find that
<evils>
with version strings i think it's arguable that it's consequential; but on stuff like putting `++ optionals` on the same line as the preceding `]`; it feels like you're enforcing your style
<evils>
with removing parentheses in `if (stable)` i would even call it consequential because i can no longer do `ci(` in vim
<evils>
supersandro2000: i think if you want to set a style standard for nixpkgs, write documentation and refer to it, rather than adding suggested changes to every violation
<supersandro2000>
evils: lib.optionals is meant to be used when working with lists because it enforces that type
<supersandro2000>
the () there is optional and not required.
<evils>
not only will it save you time, for it to get merged it'll (hopefully) have approval of multiple people, which strengthens your argument in favour of such a style
<supersandro2000>
What does ci(? chumps it to the next char of that?
<supersandro2000>
but it is written in common doc which is xml so... when someone converts it to md I can add everything
<evils>
supersandro2000: not sure how your lib.optionals message is relevant to the style changes you suggested
<evils>
and i prefer having `]` and `''` on separate lines as it aids refactoring the code and spaces out separate blocks, which i find more readable
<nicolas[m]>
Is it possible to override a package in an environment (steam in steamPackages) when it doesn't use lib.makeScope?
<supersandro2000>
evils: putting ``] ++ lib.optionals true [`` is a very common style to prevent adding to many new lines which just stretches the file
<supersandro2000>
specially if you have optionals which only use one or two entries per list you get a way shorter list which is way more readdable
bkv has joined #nixos
<evils>
supersandro2000: yea, and at some point the kicad file was of reasonable length, then #100066 dumped a whole lot of stuff in there; but i'm not going to "fix" that by compressing the style
<supersandro2000>
this are now 5 lines and could be ``then wxGTK30.override { withGtk2 = false; }``
<evils>
my main point is that style is subjective; and unless you can show either a consensus on nixpkgs style, or a significant issue with not following your style (besides my PR not being merged), don't force it on people
<supersandro2000>
and if people would do that at a few more places it would be way less stuff to look at
<evils>
supersandro2000: same amount of stuff to look at, in my opinion
<supersandro2000>
evils: a language which does not care about intendation like python can never have any significant issue with styling but if everyone just does whatever the code is a mess to work with
<supersandro2000>
I can add all my points to the contributing guide and until then just take it as good advice that would be nice to follow
<evils>
i feel like i've been forced into an unneccesary impasse by you several times...
<supersandro2000>
the reviewing doc is also very lacking so we do not have a consensus there either
<evils>
because it's near impossible to achieve consensus on style
<supersandro2000>
its also hard getting it right for everyone
<supersandro2000>
some people really appreciate it if they get some styling hints
<evils>
definitely
<supersandro2000>
for example inputs should so be sorted by usage order and I actually mostly ignore it
<supersandro2000>
so what do we do now with the formatting changes?
<DigitalKiwi>
my favorite formatter is rm
<supersandro2000>
Should I get a knife to eat the kiwi?
* evils
hands supersandro2000 a sharpened spoon
<supersandro2000>
evils: we can keep the styling if you like but I am pretty sure I will forget that until next month :P
jesystani has quit [Ping timeout: 250 seconds]
<evils>
supersandro2000: well, that's why i'm trying to get you to be a bit more forgiving of style; unless it's particularly bad / inconsistent with the rest of the document, let people (especially package maintainers...) write what they like
jesystani has joined #nixos
<supersandro2000>
that gets us to the next issue: being a maintainer doesn't mean to much. If I know that you know what you are doing I am more forgiving but I don't know all people who know what they are doing :P
<evils>
i'm being a bit touchy about kicad because it's my baby, and it's already been trampled on
<supersandro2000>
I definitely get from where you are coming from
<supersandro2000>
but if you are going by feeling for a lot of things its hard to get it right for everyone and changing something usualy takes a bit
<supersandro2000>
also I never use the real fancy short cuts in vim because pointing with a mouse on it is just faster
<evils>
`set mouse=` it's the only way to vim (i haven't had the courage to disable `jkhl`)
<DigitalKiwi>
"being a maintainer doesn't mean to much" like wtf man
<DigitalKiwi>
half of the shit i have my name in maintainer field for i've spent dozens if not hundreds of hours on
<supersandro2000>
if you compare it to being a maintainer on debian there is a big difference
<evils>
git blame kicad | grep berce
<supersandro2000>
for example I also touched the kicad package and remove some unused inputs
<evils>
i really should set code ownership on the kicad directory...
<supersandro2000>
then you would get at least a notification every time
<supersandro2000>
you don't have any duties or responsibilities
<supersandro2000>
if something is broken and someone fixes it, it usually gets merged without explicitly waiting for feedback
<DigitalKiwi>
stupid znc ;_;
<simpson>
What's the point of the `maintainers` field, then? Is it just a list of community members who've volunteered their time to help fix broken packages? Is it a list of gatekeepers who prevent packages from becoming broken?
<evils>
it's a breadcrumb for who to try when you can't fix it
<supersandro2000>
evils: berce has no real activity on his github since late 2017. If you want to remove him go ahead.
<evils>
radvendii: i was thinking more of a last resort, though it's not only that
<supersandro2000>
the packages should eventually be removed if being maintainer means more. There are some plans to add more to it but they are not here yet.
<simpson>
supersandro2000: What DigitalKiwi is saying is not about whether such a PR would be merged, but about what kind of power the PR-merging implies. Recall that power and responsibility are dual: The ability to merge PRs is the ability to reassign responsibilities, such as merging PRs.
<evils>
i also think of meta.maintainers of people with an interest in the package staying functional
<supersandro2000>
radvendii: that can also help but also yields treewide changes and following renames is not as easy
<supersandro2000>
also you get notifications if a package is changed
<evils>
just because they have an interest and they could fix it, doesn't mean they're actively changing it
<radvendii>
supersandro2000: ah, good points
<supersandro2000>
Debian also has uploader and not everyone can do that
<supersandro2000>
and I think they could actually have less than NixOS does
theDon has quit [Ping timeout: 240 seconds]
<qbit>
is there a way to make a package that has landed in nixpkgs master (unstable?) build before it's available in the cache?
<DigitalKiwi>
is this debian? why are we talking about debian?
<supersandro2000>
surely the system is not the worlds best but not having it would not be better I think
<supersandro2000>
qbit: add the branch as a channel and use <nixpkgs-unstable> or <nixpkgs-master> instead
spacefrogg has quit [Quit: Gone.]
aw has quit [Quit: Quitting.]
aw has joined #nixos
theDon has joined #nixos
<qbit>
oooo
<simpson>
DigitalKiwi: Traditional traditionalist strategy: We are not run as poorly as our neighbors, therefore our community has no structural or systemic issues~
<qbit>
makes sense
<qbit>
ty
stephank3 has joined #nixos
spacefrogg has joined #nixos
<supersandro2000>
qbit: well, use the name of the branch in <...> and then use the pkgs from there
<supersandro2000>
DigitalKiwi: Debian has a few more years on its back to know what can work and what not
<supersandro2000>
looking at that experience is not wrong
<supersandro2000>
for example NixOS is way more liberal when adding unfree packages or leaving bits in which are not DFSG confirming
<radvendii>
qbit: if you're using flakes you can also do `nix build nixpkgs#package`
<supersandro2000>
and if you would know me a bit better then you wouldn't call me traditionalist at all
<supersandro2000>
if you want a more AUR packaging experience then NUR or a fork or flakes are great options to quickly get something to work
stephank has quit [Ping timeout: 240 seconds]
stephank3 is now known as stephank
<supersandro2000>
for example that part is pretty hard on Debian
<DigitalKiwi>
i do not know what dfsg is but the urban dictionary definition is probably not what you mean but lolol
<supersandro2000>
and NixOS likes to take a look what other distros do because otherwise there would be to many questions for a Distro not having some commercial support behind it
<delroth>
someone just asked me a "fun" question: the nixos derivation for mongodb carries patches. how does that work with the AGPL?
<delroth>
quoting the license: "Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version"
<supersandro2000>
radvendii++ thanks
<{^_^}>
radvendii's karma got increased to 2
<delroth>
is anyone running mongodb on nixos right now violating the AGPL?
<supersandro2000>
delroth: IIRC AGPL means the patches need to be open sourced, right?
<tpw_rules>
how does regular mongodb "prominently offer all users" its code?
<delroth>
not only
<radvendii>
delroth: they can just go to nixpkgs and get the patch, no?
<delroth>
see the part I quoted
<evils>
delroth: you want the postPatch source, easily available (presumably modifying the package to dump out the source at that point doesn't count?)
<delroth>
it clearly says "must prominently offer all users interacting with it [...] an opportunity to receive the Corresponding Source"
<evils>
supersandro2000: the patches alone are not the source, the unpatched source is not the corresponding source
<delroth>
I don't see how it would be doing that right now
<delroth>
I think the Corresponding Source would be the patched source
<evils>
so would i
<supersandro2000>
you are not required to mail us something or ask for the source, it is in the package repository
<tpw_rules>
delroth: how does regular mongo do that? also sspl only says "you must make the Service Source Code available via network download to everyone at no charge"
<evils>
this kinda ties in to something i've wanted for a while, and have no idea how to do it: have a way to get all the source code that went into your nixos generation
siraben has quit [Ping timeout: 245 seconds]
<evils>
corresponding source code would be preffered in that...
<delroth>
oh right, mongo is sspl now -- we still have agpl versions in nixpkgs though
<delroth>
(3.4.24)
<supersandro2000>
evils: garbage collect and then do realpath /nix/store/-source
siraben has joined #nixos
<supersandro2000>
except if it is named
<tpw_rules>
delroth: but even then, how does mongodb do this? does it advertise its url on every connection?
<evils>
supersandro2000: is that patched source?
<supersandro2000>
no...
<supersandro2000>
the unpatched
<qbit>
i can't even with how awesome nixos is..
<radvendii>
qbit: yeah, that's a mood. :P
<evils>
supersandro2000: still, step towards what i'd love to see, thanks
<supersandro2000>
but you could write something that easily adds the patches
<delroth>
but then you still need to modify the nixos mongodb to advertise the modified source
<tpw_rules>
how does non-nixos mongodb advertise the source?
<delroth>
well, I don't think it has to? they're the copyright owners
<delroth>
that "advertising modified source" clause in the AGPL only applies "if you modify the Program" (quoting from the license)
<evils>
delroth: does mongodb itself have to advertise te corresponding source for it to count as "prominent"? something like `nix get-source mongodb` would be good enough if that's documented?
<delroth>
evils: it clearly says "must prominently offer all users interacting with it remotely through a computer network" so I don't think documentation counts?
<radvendii>
i guess the question is what does "prominently offer" mean
<radvendii>
any lawyers in the house?
<tpw_rules>
delroth: it also says in the next half of that sentence "by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software". is git not standard or customary?
<radvendii>
is stallman here?
<supersandro2000>
delroth: tell them to send us a notice if that is not within what the license wants
<supersandro2000>
I think freenode is none free code
<evils>
radvendii: we do not speak of Him
<delroth>
tpw_rules: git is very much standard and customary, but you still need to advertise it within regular user interactions, the second part of that clause doesn't invalidate the first
<radvendii>
>.> <.<
<evils>
genuinely, 24 occurences in the log xD
<radvendii>
the word "by" seems to suggest otherwise
<radvendii>
evils: oh damn, now i do feel bad
<evils>
delroth: i do think the convention around this kind of stuff is "ignore it untill someone complains"
<radvendii>
i would hope there's a certain "best effort" expectation of other open source projects. like, these licenses aren't here to be gotchas or hamper people's ability to make convenient FOSS softare
<radvendii>
which they would if it required you to ask people on every download whether they want the source
<evils>
radvendii: we have a centralized listing of the packages, anyone can recreate the corresponding source, i think that's a fair best effort
<supersandro2000>
yeah. compare it how to get the kernel source of any new samsung phone and you know what isn't easy
<radvendii>
evils: yeah, i didn't mean to suggest we weren't
<evils>
with something like snaps where you can publish an artefact without publishing how you built it, that may be an issue
<radvendii>
evils: are you talking about snaps in general, or using snaps in nixpkgs?
<evils>
radvendii: i mean the snap package management system
<evils>
i wouldn't be surprised if the "best effort" approach there is to publish the manifest
AlpineLlama has joined #nixos
<evils>
which i think is is practically the default
<radvendii>
mm, would that not be sufficient? as long as the manifest is pointing at publically available sources, that seems to be similar to what we do
<evils>
hmm, so would one way to do it better than what we have now be: have a way to instantiate the corresponding source; patch the program to point to that
<simpson>
I hear that AGPL was supposed to be like a quine; if Mongo wanted to enforce that clause, then they should have built a standard way to retrieve a server's source code from its running instances.
<simpson>
We'll have to wait for the next database/package manager/etc. to try using AGPL and see if they remember to include a way to automatically force folks to distribute source code at the API level.
<radvendii>
evils: seems like this wouldn't actually be that hard to implement. package.overrideAttrs(old: {phases = [ "unpackPhase" "patchPhase" "installPhase"]; installPhase = "cp * $out";}) should do the trick for most of them, no?
<radvendii>
i'm sure there are packages for which that wouldn't work, but it's probably a pretty reliable way to get the source with patches applied for any given package
<DigitalKiwi>
i hate this stupid distro i hate this stupid channel
<simpson>
supersandro2000: I think it's worth at least considering that nixpkgs isn't a binary Linux distro, but a ports tree. This typically comes with some expectation of decentralization of responsibility.
<DigitalKiwi>
and i hate you
* evils
pokes DigitalKiwi
<simpson>
c.f. the idea of flakes, which have taken entirely too long to get going.
<supersandro2000>
simpson: but it has binary pre builds
ddellaco_ has quit [Ping timeout: 252 seconds]
<DigitalKiwi>
what evils
<evils>
DigitalKiwi: please keep this channel welcoming
<supersandro2000>
please get some sleep and we talk tomorrow
<simpson>
I can't wait for the next thing after Nix.
<radvendii>
simpson: :O
<evils>
radvendii: sounds about right, though how do you embed that in a patch so the program can point a user to it?
<radvendii>
evils: i'm not sure what you mean. does mongodb point you to its source code?
<evils>
radvendii: no idea, but kinda sounds like the license wants it to
<{^_^}>
[rfc39-record] @grahamc pushed commit from rfc39 to main « Automated team sync results. »: https://git.io/JOrA3
mcint has quit [Ping timeout: 246 seconds]
<evils>
oh yea, related thing i've wondered about, the GPL is supposed to ship with the application
<radvendii>
i feel like adding more patches on things so that they point to the right source code adds a lot of clutter, but maybe it's necessary. I certainly wouldn't want someone distributing a modified version of my game but with the info still pointing at my website
<DigitalKiwi>
pretty sure every application is supposed to instead of doing what you want it to do display the GPL
<evils>
i thought it was common for GPL apps to just embed the license for ease of distribution
<evils>
hmm, i'm somewhat disappointed `nix-build -A lib.licenses.gpl3` doesn't produce the license text
<radvendii>
It's funny, in some ways we're spoiled. Like, it is extremely standard for proprietary software to start by opening up a license you have to agree to before it will do anything. There's no reason in theory there shouldn't be a similar requirement for GPL software to display the GPL so you understand your rights
<radvendii>
it would be annoying and I don't want it to require that, but in theory it probably could
<radvendii>
part of the joy of FOSS is it tends to avoid that kind of bloat
<simpson>
radvendii: I strongly recommend reading that link about spellservers if you have the spare time; it helps explain how code delivery could be done securely.
<evils>
radvendii: there is a reason it's not like that: everyone would fork it to remove the license agreement
cjb has quit []
<samueldr>
radvendii: the GPL is not a EULA, you don't need to agree to use it
<samueldr>
it's a description of your rights as a recipient of the software
<evils>
or more realistically, no one would use a license that requires user agreement before use
<simpson>
evils: Right. So, we have to imagine that the AGPL only works if the original software delivers a copy of itself over its main API. Then, forks would have to preserve the code-delivery behavior as a condition of being allowed to use the software in the first place.
<evils>
simpson: the effect would be the same, people would avoid the software
bqv has quit [Ping timeout: 245 seconds]
Supersonic112 has joined #nixos
<radvendii>
evils: by that logic nobody would use proprietary software with EULAs
<radvendii>
okay. it seems like linux ++ darwin might be more future-proof if support for other systems becomes completed my package will have to actually get tested there
zie has joined #nixos
<supersandro2000>
and if the package should theoretically work on netbsd then unix is preferred or we change platforms for 40 000 packages just because no one used unix
<radvendii>
oh gotcha
<radvendii>
i don't know what would lead me to believe that it "should theoretically work on netbsd" or not
<supersandro2000>
platforms is mostly used for hydra and to save people from compiling packages which do not work
<radvendii>
i've never used any bsd variant
<supersandro2000>
I didn't either but they surely appreciate trying to build more packages :P
<evils>
well, if it works on linux and darwin, and isn't too specific, i'd say there's a good chance it works on unix
<supersandro2000>
if hydra had a bsd builder then we would take this a bit more serious
<supersandro2000>
if it is just shell script then all is preferred
waleee-cl has joined #nixos
<radvendii>
oh okay, then i'll just make it platforms.unix
<radvendii>
well we have windows as a platform right? for cross-compiling purposes
<radvendii>
that wouldn't be unix
<evils>
windows has a fair bit of POSIX stuff
<samueldr>
radvendii: at worst, choosing the most minimal platform set is not a bad thing, since if it ends up being needed by someone on another platform they can add it, and contribute back, if it works
<supersandro2000>
or worst case mark it broken
<supersandro2000>
I am not sure what the windows state of things is
<euank>
oleks: that's a bit vague of a question. a nix expression / nix-shell environment is different from a docker image / docker container environment in a lot of ways. Do you have a more specific way to ask that to narrow things down some?
<twoolie>
oleks: Dockerfile is like a list of commands to run to mutate one docker image into another, usually by starting at some base image and installing stuff from the internet and copying in files.
* Kinnison
repeats his question from before he slept: I have a system configuration which includes vscode. If I try and install it, nixos-install fails claiming it cannot read a store path which is indeed present. Sadly it is only present in /mnt and I wonder if the vscode extension handling expression needs help to work in this context.
<Kinnison>
Is there a way to tell, or to exclude some packages during install only?
<twoolie>
oleks: .nix file is a program that computes a dependency graph of packages, with all the inputs defined down to their hashes, potentially creating a docker image at the end.
<euank>
Kinnison: do you have the exact error you're getting pasted somewhere? I'm curious.
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ddellaco_ has joined #nixos
cfinch has joined #nixos
<Kinnison>
I don't because it was on a console on a laptop last night, but it was trying to read the extension directory. The trace showed it was in the vscode package derivation I think. I will be able to reproduce it later, but I'm about to go get my car camera replaced.
sangoma has joined #nixos
<Kinnison>
I am very new to nix, so could easily be doing something very wrong
vidbina_ has joined #nixos
<twoolie>
Kinnison: so this is a custom extension that depends on some files in /mnt?
cfinch has quit [Remote host closed the connection]
cfinch has joined #nixos
oida has quit [Remote host closed the connection]
<Kinnison>
twoolie: well, it is the rust-analyzer extension whose store path is 'not found' but I think it is how the vscode package gathers the extensions for itself
<sterni>
Mic92: neither jess nor graham around to un-k-line it seems :(
cransom has joined #nixos
<{^_^}>
[hydra] @edolstra closed pull request #918 → hydra-queue-runner: fix building on machines specified with the `ssh-ng` protocol → https://github.com/NixOS/hydra/pull/918
evanjs has quit [Read error: Connection reset by peer]
<phalrax>
Hi, should I care about that message or is it safe to ignore? collision between `/nix/store/r8izla2w614q7qsband1nwh8r93k7v09-nix-bash-completions-0.6.8/share/bash-completion/completions/nixos-container' and `/nix/store/h7q15cq4d56r4g82wnb2sqvxiy8cb7wv-nixos-container/share/bash-completion/completions/nixos-container'
ivunchata has joined #nixos
<LinuxHackerman>
phalrax: looks like a minor bug, but shouldn't affect anything working unless it breaks your build :)
marianoguerra has joined #nixos
cole-h has quit [Ping timeout: 252 seconds]
<phalrax>
it doesn't, looks more like a warning
<phalrax>
one other thing, I noticed vscode in my nix store, it doesn't get garbage cleaned and nix why-depends says '/nix/store/1wzv2yfp715vfy2k6fzhc79i3g8mz0n1-nixos-system-tokyo-21.05pre283671.04bb7dc19bc' does not depend on 'nixpkgs.vscode'. I have a condition in my config.nix that says to install it only if xserver is enabled, which is disabled...any
<phalrax>
ideas why it's being pulled? config.services.xserver.enable: false
spinus[m] has quit [Quit: Idle for 30+ days]
john-appleseed[m has quit [Quit: Idle for 30+ days]
coloneljohnby[m] has quit [Quit: Idle for 30+ days]
gentauro has quit [Read error: Connection reset by peer]
Qwerky has joined #nixos
<Kinnison>
phalrax: old build not yet expired, or a user env perhaps?
<phalrax>
I did gc -d. I suspect it might be my bit in systemPackages: in common ++ (if config.services.xserver.enable then xorg else []); where common are packages that should always be installed and xorg is stuff like vscode or firefox
<phalrax>
something wrong with that expression?
feathers has joined #nixos
feathers has quit [Client Quit]
myeisha has joined #nixos
<myeisha>
heya. has anyone else noticed that libreoffice leaves an instance of dbus-daemon around when it's closed?
<l-as>
Does anyone know why `builtins.toFile` has the odd and very inconvenient restriction that you can't refer to other derivations?
<marianoguerra>
hi! started playing with nix yesterday, managed to setup shell.nix to use nix-shell for development and now I want to make the builds using the same shell.nix file for different operating systems (ubuntu LTSs and centos 6,7 and 8), I already have Dockerfiles for each that until now install the build requirements by hand and I have to keep them in sync, now what I want to do is build each image by
<marianoguerra>
copying the shell.nix file at build time and entering a nix-shell so that it fetches all the packages at build time, if I change the fetchTarball url I just rebuild the images, my intention is to avoid dowloading stuff at each build
<marianoguerra>
I'm almost there, the only problem I have is that I can't "logout and login" in the Dockerfile and sourcing the file as specified during installation doesn't work for me, I know there are ways to build docker images with nix but it's too much a jump for me at this point
<marianoguerra>
I've searched online and there are other users that have the same problem but the proposed solutions don't seem to work for me
<phalrax>
interestingly vscode doesn't show up when I inspect config.environment.systemPackages in nix repl...so not sure why it is in my nix store
jess has joined #nixos
HeN has joined #nixos
<Kinnison>
phalrax: OOI if you run `which code` which path does it end up finding it? is it the current-system/sw/bin ?
<phalrax>
not found
<Kinnison>
okay so it's definitely not in your current env, hrm
<phalrax>
I reinstalled recently, is it possible that those files are leftovers from another config? would garbage collect clean up those 'foreign' files?
<Kinnison>
if the store knows about them I can't imagine it wouldn't know how to GC them
<phalrax>
it meant if it doesn't know about them
<phalrax>
*I
<phalrax>
would it clean them up or just leave them?
<phalrax>
just trying to think of ways why it would be there
<Kinnison>
that looks like the tree of code down, not code up. Maybe check if it needs an argument to run in reverse?
<myeisha>
how i'd go at it: search for vscode (/), select it (enter), why-depends (w). should open a curses popup with all the dependency paths to roots
<phalrax>
there is why-depends mode which only shows me vscode-1.55.2
lukegb has quit [Ping timeout: 252 seconds]
<myeisha>
is it a gc root itself for some reason?
<phalrax>
I also tried to completely comment out the section in my config that supposedly installed it, but nothing changed either
awuji has joined #nixos
zakame has quit [Ping timeout: 246 seconds]
<myeisha>
(at any rate i'd just run a gc and see what happens, gc shouldn't break a running system after all)
lukegb has joined #nixos
JerryXiao has quit [Ping timeout: 246 seconds]
<phalrax>
I ran nix-collect-garbage -d multiple times to no avail
<myeisha>
mrf :/
<myeisha>
is it listed in nix-store --gc --print-roots?
JerryXiao has joined #nixos
<phalrax>
it's not
<afontain_>
phalrax: doesn't a generation depend on it?
kmein has quit [Quit: ciao kakao]
zakame has joined #nixos
<phalrax>
I only have one generation currently
kmein has joined #nixos
<phalrax>
nix why-depends /run/current-system nixpkgs.vscode: '/nix/store/1wzv2yfp715vfy2k6fzhc79i3g8mz0n1-nixos-system-tokyo-21.05pre283671.04bb7dc19bc' does not depend on 'nixpkgs.vscode'
<phalrax>
really weird
Qwerky has joined #nixos
Mateon1 has quit [Remote host closed the connection]
<myeisha>
just how reliable is nix root detection for running things anyway? i've seen processes that had their executable deleted more than once, mostly in firefox and postfix
<phalrax>
LinuxHackerman: that was it...completely forgot I built a live iso which has those deps
<phalrax>
sorry for being an idiot and forgetting :D
Havvy has quit [Ping timeout: 258 seconds]
<Kinnison>
phalrax: well it was an enjoyable exploration anyway :D
<LinuxHackerman>
myeisha: hm, that surprises me, especially for executables it should detect them correctly since it checks /proc/*/exe
phalrax2 has quit [Quit: Connection closed]
Qwerky has joined #nixos
<phalrax>
Kinnison: was helpful to see the different methods for finding out things like this anyway, yes :D next time I'll know, thanks everybody!
<myeisha>
LinuxHackerman: exactly. no clue why it would delete executables from running processes (or why it always kills postifx's qmgr but nothing else?)
<myeisha>
immae: XDG_RUNTIME_DIR is passed, but we don't have a DBUS_SESSION_BUS_ADDRESS even though the session has dbus running. that's probably it then
<myeisha>
but why isn't it set though
fuiltilt has quit [Quit: WeeChat 2.9]
<myeisha>
(using the xinit pseudo display manager, maybe that needs some extra loving config?)
<immae>
when you say "you don’t have", you mean that it’s absent from the shell too?
<myeisha>
yep
<immae>
ok
<immae>
Then that’s probably the direction where you should look
<immae>
you can try setting it manually to something like "unix:path=/run/user/1000/bus" to eliminate libreoffice from the equation
<immae>
(check that the socket exists)
<myeisha>
it definitely exists, other applications are using it with no trouble :/
<immae>
It’s not impossible that they revert to a default value
<myeisha>
explicitly setting it does help with libreoffice (though the question remains why it doesn't kill its local instance on exit)
<myeisha>
guess i'll just export that in xinitrc or something. eh
jordiplaygames has joined #nixos
<immae>
that would work, but I suggest that one day you look at it more closely to understand why it is not passed
<myeisha>
huh, you're right. the shell has it, i3 loses it. wat
<myeisha>
where did it *go*
<JordiPlayGames[m>
myeisha:
<immae>
oh good
<JordiPlayGames[m>
myeisha: ok.
<immae>
Much easier to debug i3 than systemd :D
respawn_ has joined #nixos
<immae>
myeisha: beware, once it is set it is set "forever", so if you just spawn a shell to check it then it says nothing about your first shell (which may not have it if it is spawned before the env being set)
<myeisha>
yeah, that just dawned on me too. trying with a fresh user
<immae>
12 years ago, so probably way before DBUS env var was set above it
<myeisha>
presumably that means running starx into xephyr or something
<myeisha>
eh. will just re-set it. can't be bothered to override xinit 🤷
<immae>
I guess Archlinux is right in there, it doesn’t make sense anymore to unset it now that it is set globally
<immae>
sure, now tha you have an explanation I guess the best thing is to reset it later :p
<myeisha>
sad as that is :(
<immae>
myeisha: since nixos is systemd-oriented you could probably patch it in nixpkgs like arch does, if you feel like it (I'd gladly approve the patch but I couldn't merge it though)
<myeisha>
yeah, could. but can't be bothered
jumper149 has joined #nixos
<myeisha>
don't even have a github account to post anything with
<myeisha>
... and now ssh-agent stopped working. what *is* it with today
<immae>
That could be linked, who starts ssh-agent? is it a forked program executed in your xinitrc or are you using the systemd units?
__monty__ has joined #nixos
cybersyn has quit [Remote host closed the connection]
<immae>
note that it can fail due to "another instance is already running". There’s some history here where many things used to be set in xinit scripts (including the DBUS env var and starting ssh-agent) and it moved up to systemd services but not with a perfect transition
<fendor>
,locate patchelf
<{^_^}>
Found in packages: patchelf, patchelf_0_9, patchelfUnstable
dev_mohe has joined #nixos
Qwerky_ has joined #nixos
<immae>
(so things may happen to be done multiple times depending on that)
<myeisha>
immae: the ssh-agent user unit nixos install sets DISPLAY=fake
<myeisha>
..this keyboard needs cleaned, doesn't it
hiro98 has joined #nixos
jess has joined #nixos
<immae>
myeisha: as long as it sets it locally (i.e. only inside the unit) I don’t find that chocking
<myeisha>
not shocking, it does work in the terminal. just doesn't work worth a damn in X
dev_mohe has quit [Quit: dev_mohe]
<immae>
normally ssh-agent is a program that runs in the background and doesn’t need an X display (we communicate with it via a socket). An X session is only a bonus for asking for a password or so
<immae>
So I would not accuse that at first look I guess
<myeisha>
we set all ssh keys to confirm and have processes that run without a tty, those break if ssh-agent can't askpass through X
<immae>
ah yes then maybe we’re touching some specificity of your configuration indeed
<myeisha>
mhm
zupo has joined #nixos
<myeisha>
remaining bugs today though: libreoffice doesn't kill dbus, startx unsets dbus, i'm sure there was something else too we solved much earlier :/
ddellacosta has joined #nixos
<immae>
Here are the things I would look at for ssh-agent: who starts the first ssh-agent? (is it your xinit, a systemd agent, a gpg-agent-that-also-does-ssh), does it use the "normalized socket path" (quite recent), and how does it ask for password (does it need a valid DISPLAY for that)
<myeisha>
it's fixed now, starting it in xinitrc
<immae>
about libreoffice not killing dbus I’m not so surprised because dbus is supposed to be a long-running program in the background (it is started by systemd but it used to be started via xinit)
<myeisha>
if soffice starts its own dbus it should clean it up though, not litter the system with unreachable dbus daemons :<
<immae>
Well that’s more complicated than that :)
<immae>
it should but it may not be able to due to how dbus was thought
<myeisha>
like, it doesn't start the default user bus. it's a fully private instance
<immae>
In systemd age there’s no more reason for that kind of thing to happen, you can have a private session without needing to start a new "server"
<immae>
But anyway, having a DBUS already running solves the issue so...
<myeisha>
it wants to use the user bus, but it couldn't find it here because startx unset the env var. so it started a private bus and forgot about it on exit
<myeisha>
all very strange tbh
<immae>
you can make a parallel with tmux: say a program needs to start a tmux sessoin. It finds no tmux server, so it starts one and then starts his session. When it exits, do you expect it to kill the tmux server too?
ddellacosta has quit [Ping timeout: 245 seconds]
<immae>
that means killing all tmux sessions that you started afterwards
<myeisha>
just the one that was started for that exact session, which is how tmux operates too(?)
<myeisha>
with office it's a bit easier because there's not really a long-running process you'd start from it
<myeisha>
but anyway. not to spam even more :<
<immae>
ok
<myeisha>
thanks for all the help
<immae>
you’re welcome
<ivunchata>
hello everyone, I'm having a question regarding WWAN devices, I'm having one plugged in into the M.2 slot of an SEEED Odyssey and was able to connect to the internet from a live Ubuntu, however from NixOS I don't see the device listed by nmcli. Do you have any ideas what am I missing? (I tried setting this https://nixos.org/manual/nixos/stable/options.html#opt-hardware.usbWwan.enable to true and adding ModemManager systemd service, but no luck)
<ivunchata>
I forgot to mention that I do see the device in dmesg and from `ip address show`
<immae>
ivunchata: I don’t know the specificities of wwan, but the first thing you could check is if "ip address show" shows an ip address associated to the device, and if not why
<immae>
(could be as simple as having a dhcp server running only for eth0 when your device is named eth1 for instance)
<ivunchata>
AFAIK I need to specify APN and other provider data before I get to look for an IP address. I was able to do that from NetworkManagers GUI from Gnome (in Ubuntu nmcli did see the device). However NixOS' nmcli does not see the device at all.
<immae>
ok
<immae>
it’s out of my competences then sorry
<ivunchata>
thanks anyway :) I hope someone else might be able to assist
<twoolie>
hey all, i'm trying to get a list of all the services that are enabled in a nixos config. trying to mapAttrs over config.services to find all enabled services errors when it finds a service that has been marked as removed.
<twoolie>
Anyone know a good way of doing this?
civodul has joined #nixos
Qwerky_ has quit [Remote host closed the connection]
respawn_ has quit [Quit: Leaving]
<twoolie>
ivunchata: the comment in usb-modeswitch/data.nix refers to the fact that `make install` for that package installes a dispatcher script (/usr/sbin/usb_modeswitch_dispatcher) that requires (is written in?) TCL
<twoolie>
AFAIK it's that script that reads or dispatches into extra "drop-in" config files in usb_modeswitch.d (the .d is for dispatcher ;)
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Qwerky has quit [Remote host closed the connection]
<hazel[m]>
Synthetica: so I installed it and it actually hit the binary cache and worked, but now I don't know how to actually execute sage. like, it isn't in PATH.
<hazel[m]>
pardon my ignorance, I haven't yet used it on NixOS
<AmandaC>
is it not advisable/possible to do a "remote build" to the same local machine over ssh? It seems that my homelab's nix builds are just hanging in that case.
<AmandaC>
I'm trying to use the same generic config that my laptop can use to offload the remote builds, but it doesn't seem to like that
<lamballama>
more directly is there a nice way of getting a list of licenses for all the build inputs for a derivation?
heywoodlh has joined #nixos
orivej has quit [Ping timeout: 252 seconds]
orivej has joined #nixos
rj has joined #nixos
<AmandaC>
Hrm, seems repeating most of that "use-camnet-builder" profile into the hydra profile,substituring my homelab's hostname with "localhost" seems to have made it happy, I guess nix doesn't like "remoting" to a machine that resolves to itself, and checks for the host "localhost" instead.
<AmandaC>
Wish there was another way to tell hydra that the nixos host was configured to emulate aarch64 as well so that those jobs can be scheduled to it
<gchristensen>
you should be able to by setting the architectures field?
das_j has left #nixos ["User left"]
<AmandaC>
Architectures field? I've not noticed anything about that in the nixos options for hydra, and can't really find any docs for the extra config wither
<potong>
Hi using nix version 2.3.10 wanted to try out `nix flakes` so input nix-shell -p nixFlakes, now get `error: could not dynamically open plugin file...` when entering nix flakes, any suggestions?
orivej has quit [Ping timeout: 240 seconds]
plakband has joined #nixos
vidbina_ has quit [Ping timeout: 268 seconds]
rj has quit [Ping timeout: 240 seconds]
<LuxExUmbra>
Is anyone using NixOS with vscode + java? I'm really struggeling here. I basically install one jdk in my `users.users.lux.packages` and the vscode java extension can sucessfully detect it. However I can not really get the language server working I think. This is a bit less a ask for concrete help because this probably gets out of context here, but a bit more a "is anyone using this sucessfully?"
<LuxExUmbra>
and maybe a bit more concrete: how would I install multiple jdks so that can be automatically detected?
<AmandaC>
gchristensen: what do you mean architectures field? I don't see anythign lik that under services.hydra{,-dev} and it hydra doesns't pickup from `boot.binfmt.emulatedSystems`
<aash>
Hi there. I just compiled and installed nix 2.3.10(and its dependencies) into $HOME/nix-build/root, store is located at $HOME/nix/store. nixpkgs-unstable has been added to channel. But when I did "nix-env -qa", I got the following error. I'm quite new to nix, now sure if I missed anything.
<aash>
error: anonymous function at /Users/aash/nix/store/xqf76gbrlkgh5y00xzwrhf65s3rimdpw-nixpkgs-21.05pre283671.04bb7dc19bc/nixpkgs/pkgs/build-support/cc-wrapper/default.nix:8:1 called without required argument 'lib', at /Users/aash/nix/store/xqf76gbrlkgh5y00xzwrhf65s3rimdpw-nixpkgs-21.05pre283671.04bb7dc19bc/nixpkgs/pkgs/stdenv/native/default.nix:128:5
<radvendii>
it seems like stdenv/native is used for (a) very unused systems (e.g. powerpc) and (b) everything we haven't accounted for (which is the case for darwin-aarch64
<radvendii>
ah
<gchristensen>
AmandaC: IIRC hydra will look to your machines file, and if you don't have one, add localhost as a remote builder by default
<radvendii>
it seems like darwin-aarch64 isn't totally supported yet
<gchristensen>
scroll to "Each machine specification"
<AmandaC>
Yeah that's what I ended up doing, basically. though I used the nix.buildMachines for that
<gchristensen>
yep, that will do the same thing
<gchristensen>
one caveat though is that populates /etc/nix/machines which is picked up by interactive uses of Nix also, whereas Hydra can accept additional machine files
<aash>
radvendii: yeah, I've seen it, didn't realize it's a PR instead of an issue. Let me figure out how to use it.
erasmas has joined #nixos
<AmandaC>
just seems that nix.buildMachines isn't happy with a host that isn't "localhost" if it'll resolve to that localhost anyway. I was using the genreic profil eI made for all my machines to offload to my homelab, including homelab.example.com -- and bulds would just hang
<gchristensen>
I don't understand
<radvendii>
aash: nono, i'm saying the specific comment was saying the current way to use aarch64-darwin is to install under rosetta, and then add aarch64-darwin under extra-platforms
<radvendii>
i don't think the PR is ready for use, it's listed as a draft
<AmandaC>
homelab.example.com was trying to connectto homelab.example.com to offload it's job.. which would hang. When I changed the host in the machines to "localhost" -- it no-longer hangs
rj has quit [Ping timeout: 240 seconds]
<gchristensen>
can homelab.example.com ssh to homelab.example.com?
<AmandaC>
It should be able to
<gchristensen>
sometimes it can't without hairpin nat for example
<AmandaC>
At the very least my user can ssh to it to get the nixos git repo
<AmandaC>
s/nixos/config/
<radvendii>
aash: it seems like you may also be able to check out the apple-silicon branch of nixpkgs, but i don't know how stable / functional that is (see the previous comment to the one i linked)
<AmandaC>
( From homelab.e.c )
<AmandaC>
I can't think of any reason it'd be different for the hydra-queue-runner or root users.
<gchristensen>
does the hydra-queue-runner user have access to the ssh key needed for it? hydra runs builds (and `ssh`) itself
<AmandaC>
yup
<aash>
radvendii, it's ok, this is not my work laptop, maybe I can help on testing the branch.
proofofkeags_ has joined #nixos
ericsagnes has quit [Ping timeout: 260 seconds]
<gchristensen>
does this work? sudo -u hydra-queue-runner ssh user@homelab.example.com nix-store --version
<gchristensen>
does your entry in the machines file have a defined user? (ie: foo@homelab.example.com, not just homelab.example.com)
<{^_^}>
[nix] @regnat pushed to nix-shell-missing-outputs « Make `nix shell` fallback to static outputs when needed »: https://git.io/JOK6A
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ram19890 has quit [Read error: No route to host]
ram19890 has joined #nixos
nschoe has quit [Ping timeout: 240 seconds]
shibboleth has joined #nixos
<__monty__>
I've been running into "dumping very large path warnings" a lot. Is this very large path added to the store every time (because I'm also running out of diskspace fast)? And if so, is there a way to troubleshoot and change something so the path is only added once and then reused?
<myeisha>
is there a mailing list or other distribution medium that aggregates nixos security updates by channel?
<__monty__>
gchristensen: ^
mallox has quit [Quit: WeeChat 3.1]
<gchristensen>
myeisha: there used to be, but it was quite a lot of volunteer work and I stopped doing it. I've been considering taking it up again as part of my job, but Idon't have anything concrete on that
<myeisha>
ah, okay
<gchristensen>
#nixos-security also had some good chat about this today
<myeisha>
mainly just want to know when it'd be a good idea to run system updates, maybe arch has spoiled me in that regard
<Ke>
it will at least help you find, who uses the disk space
mcornick has left #nixos [#nixos]
ivunchata has quit [Ping timeout: 245 seconds]
ahmedelgabri has joined #nixos
mariano_ has joined #nixos
kuralsiz has joined #nixos
<mariano_>
hi! how can I install erlang and elixir with dontPatchShebangs = 1?
rj has joined #nixos
slack1256 has joined #nixos
<mariano_>
the problem I have is that I'm using nix to build a server for different OSs and nix patches the paths to bash and sh on shebangs and binaries too
attila_lendvai has joined #nixos
<slack1256>
Are gpg-agent options not read from ~/.gnupg/gpg-agent.conf anymore?
<mariano_>
I wouldn't have a problem shipping those binaries if it wasn't for the fact that the path is relative and at the root (/nix/...) which is not an easy ask for servers I don't manage
<gchristensen>
usually that is desirable so the Nix closure brings its dependencies with it
<radvendii>
mariano_: put in your overlays: erlang = erlang.overrideAttrs (old: { dontPatchShebangs = 1; })
kuralsiz has quit []
<mariano_>
radvendii: started using nix yesterday :) where do I read more about my overlays
ahmedelgabri has quit [Ping timeout: 260 seconds]
<radvendii>
mariano_: ohhh haha, one sec
<Kinnison>
In an expression, I know I can use pkgs.foo effectively as a shorthand for the path to foo in the store, but what do I do when I need that during the installer?
<mariano_>
in my shell.nix in the import package at the top from what I see
<gchristensen>
Kinnison: like at an interactive session? nix-shell -p foo
<radvendii>
mariano_: I'm not actually sure setting dontPatchShebangs will do what you're hoping it'll do, but it might be that simple
<Kinnison>
gchristensen: No, in this instance I have set up a flake-based /etc/nixos in a repo, which has a flake based dotfiles repo, which uses home-manager. home-manager's vscode integration ends up using builtins.readDir to look at vscode extensions in the store to prepare symlink data for the homedir.
<Kinnison>
gchristensen: but this means that during nixos-install it explodes
<radvendii>
mariano_: if you just want to build a specific package with dontPatchShebangs you can always do `nix-build --expr "(import <nixpkgs> { }).package.overrideAttrs (old: { dontPatchShebangs = true; })"`
<Kinnison>
line 134 has a builtins.readDir call
<radvendii>
mariano_: where "package" is the package you want to build
<Kinnison>
gchristensen: the path in question is not in /nix/store (installer) but is in /mnt/nix/store (where I'd expect it should be trying to look)
<radvendii>
mariano_: i.e. overlays are only if you want to change a package everywhere it appears as a dependency of other packages. if you just want to change a single package in a single place, you can just modify it directly
<myeisha>
gchristensen: now thinking about putting together a little thing that checks the nixpkgs pull request list every so often for things that are tagged `security` and send an email or w/e when one is merged
<__monty__>
Ke: Not necessarily, just because this path is considered "very large" doesn't mean it's among the largest in the store.
<Kinnison>
gchristensen: fascinatingly if I run `sudo nix repl --store /mnt` on my installation system and run builtins.storePath against the "offending" path, I see https://paste.rs/BJ2 by way of strace
<Kinnison>
oh no, that's not quite right
griff__ has quit [Quit: griff__]
<Kinnison>
I did two things, I did builtins.storePath for the offending path and that fails because it can't stat the stuff in /nix, then I did builtins.storePath for /mnt/nix/store/... (i.e. prefixed with /mnt) and that stats everything fine and then says the path is not in the store
<Kinnison>
sorry, straces of repls aren't easy to grok
shibboleth has quit [Quit: shibboleth]
vidbina_ has joined #nixos
<Kinnison>
It's as though it's not prefixing the /mnt of the --store when looking for stuff in the store
ManiacOfMadness has quit [Ping timeout: 260 seconds]
rj has quit [Ping timeout: 240 seconds]
pen has quit [Ping timeout: 240 seconds]
rj has joined #nixos
<DigitalKiwi>
committers don't really do anything all they do is post useless output from bots that the bots already post and complain about formatting
<simpson>
DigitalKiwi: They also get to bypass the code-review process sometimes, AIUI, especially if they've been committing for a while.
<hexa->
committers get a special pass on being unnecessarily grumpy during nitpicking reviews
shibboleth has joined #nixos
<DigitalKiwi>
this is me after sleep let's see if my mood improves after i eat
<hexa->
\s
avaq has joined #nixos
<simpson>
Ooh, yes, breakfast is a good idea. I could go for elevensies, personally.
<Kinnison>
Hmm, is there a way to get from a package ( e.g. pkgs.bash ) to a listing of its contents?
<Kinnison>
hexa-: can I list its content without resorting to things like builtins.readDir ?
<gchristensen>
Kinnison: you can't read the contents of a package during evaluation without invoking import-from-derivation behavior, which is expensive and not great
<_anb>
Hello, is it possible to install package from a local repo while the channel is empty? I checked out a git repo of nixpkgs, and used "nix-env -f $PWD -i nix", but it showed me an error that my arch is not supported by jdk. I'm not sure why these are related, nix shouldn't rely on java. Is it because nix-env tries to build a cache for all the packages?
evanjs has quit [Read error: Connection reset by peer]
rajivr has quit [Quit: Connection closed for inactivity]
<_anb>
gchristensen: looks like it works, thank you.
<gchristensen>
`-i` evaluates every package looking for packages by their name, and -A is much more efficient, looking directly for the packaeg by its attribute name
aveltras has quit [Quit: Connection closed for inactivity]
NinjaTrappeur has joined #nixos
<Kinnison>
gchristensen: Okay I bypassed the problem by using vscode-with-extensions instead of home-manager's extension handling, thanks for talking me through things.
* Kinnison
guesses home-manager needs teaching to not do that stuff at eval time
<gchristensen>
I'm glad you sorted it! :)
alexherbo2 has joined #nixos
<Kinnison>
(and really vscode-with-extensions could do with not using runCommand and being a proper derivation)
* Kinnison
had to shonk a // { pname = pkgs.vscode.pname; } on the end of the override :D
<gchristensen>
yes, but I've got to step away :) hopefully someone here can link to something, or explain, fixed output derivations and the nix sandboxing model
<_anb>
radvendii: Hi, I had a nix installation from source, now I'd like to bootstrap itself, so I ran 'nix-env -f $NIXPKGS -iA nix', but it show me some error about DNS resolution: https://pastebin.com/raw/NWFB7Wqf
<_anb>
nix show-config shows sandbox is not enabled.
<radvendii>
so i'm not sure why it's coming up in this particular case, but the reason you're getting DNS errors is that in general nix packages are not allowed access to the internet while building
<radvendii>
the one exception to that is fixed-output derivations, which specify the hash of their output, so we can be sure it's deterministic. because we know it will be deterministic, they're allowed access to the internet
<radvendii>
this is how e.g. fetchurl works
<radvendii>
so that's why you're able to curl the file directly, but it's not able to access it inside a derivation
<radvendii>
why it's happening in this particular case i'm not sure
<radvendii>
okay, well that tells us something at least
<radvendii>
it seems like the nix derivation that's being built is fine, it's turing that derivation into an output that's causing problems
<radvendii>
are you able to install anything else?
<_anb>
let me try bash
<_anb>
So first I'd like to confirm I'm doing it right: I haven't added any channel, but cloned a macos-aarch nixpkgs branch, and inside it, I'm going to run "nix-env -f $PWD -iA bash"
<_anb>
The first dep it tries to get is the same one: building '/Users/anb/nix/store/rzwnkji1s4738mlq36j2pnl0fvpwz0if-bootstrap-tools.cpio.bz2.drv'...
NinjaTrappeur has quit [Quit: WeeChat 3.1]
<radvendii>
ah, okay. so you're just not able to install anything at all
NinjaTrappeur has joined #nixos
<_anb>
So the derivation has outputHash{,Mode,Algo}, which means it's a fixed-output derivation, and should be able to access network during build, correct?
<radvendii>
correct
<radvendii>
i'm not entirely sure why it's not able to do that
<ben71>
the service starts successfully and everything looks good (no errors) but i simply cant conect
<_anb>
ben71: if you have kernel > 5.6, it's easier to use wireguard for 1:1 vpn, but if you want the connection between multiple peers, openvpn can save you soem configuration.
Qwerky has joined #nixos
reptarmigan has quit [Remote host closed the connection]
<ben71>
unfortunately i dont control the server and it uses openvpn
<_anb>
then you *have* to use openvpn client :-(
reptarmigan has joined #nixos
<ben71>
any suggestions on troubleshooting ?
<_anb>
How do you know you cannot connect?
<ben71>
well when i use an IP trace it is still showing my local ip
<ben71>
and i cant connect to the thing i should be able to when im connected
<_anb>
You need to know what routes the server sent to you.
<collares>
does ofBorg cross-compile to aarch64-linux?
<collares>
or is it a native build?
lom has quit [Quit: WeeChat 3.1]
<sterni>
native
<collares>
thanks!
griff__ has joined #nixos
<collares>
I am trying to update singular and it fails on ofBorg when running configure. configure.ac does AX_PROG_CC_FOR_BUILD and the test that CC_FOR_BUILD is a working compiler fails
<collares>
which is suspicious because CC is working fine and there is no cross-compilation involved
<radvendii>
how does nix decide which -lblah flags to include when linking a library/executable? or is that the job of the build system like CMake?
sciamp has quit [Quit: Konversation terminated!]
pushqrdx has joined #nixos
pushqrdx has quit [Remote host closed the connection]
ahmed_elgabri has joined #nixos
ben71 has quit [Quit: Connection closed]
pushqrdx has joined #nixos
<pushqrdx>
if packages built with nix suffer from the same issue that it's interpreter and linking pathes are hardcoded how can i build packages using nix for normal distros?
<Mic92>
Maybe just use a nix-shell but not a nix expression. Otherwise nothing stops you from using `/usr/bin/env`.
<Mic92>
linked binaries is an issue so.
<pushqrdx>
wdym of just use nix-shell does it make a difference? would interpreter be also hard coded to the compiler even if manually build inside nix-shell?
ahmed_elgabri has quit [Ping timeout: 250 seconds]
ben77 has joined #nixos
nisstyre has joined #nixos
<radvendii>
pushqrdx: i just did a bunch of work on this for building AppImages using nix, and I had to go through and patchelf all the executables / libraries to point to the usual location for a linker
<pushqrdx>
radvendii it sucks that building for non nix isn't built in because yeah i can use it as a dev environment on other distros but produce stuff that won't run outside of a nix-shell or without nix installed
<radvendii>
pushqrdx: my impression of this is that Nix at its core is not a build system, though it can (sort of) be used as such. it's a package management system
<radvendii>
pushqrdx: but i've also described to you a way to use Nix to build for other systems. what about that is not what you're looking for?
<pushqrdx>
radvendii but even if i use it purely as a package manager + nix-shell if i build something from a shell it will have the store path hardcoded into them right?
<pushqrdx>
s/path/paths
<radvendii>
no
<radvendii>
for instance i'm pretty sure if you just build something on nixos without using a nix expression, it won't run
<pushqrdx>
radvendii yeah i think i remember that, i have to wrap or set LD_LIB to correct locations
meh` has quit [Ping timeout: 240 seconds]
<pushqrdx>
hmm, if i can build inside a shell and make install on my system that would be awesome
<pushqrdx>
though i wonder how runtime dependencies are gonna behave in that situation
alexherbo2 has joined #nixos
<radvendii>
that's true of any distro though. if you compile on one machine with dependencies in certain places, and the build system hard-codes those locations, then you won't be able to run it elsewhere
<pushqrdx>
radvendii i was talking about a normal linux distro + nix as a package manager
reptarmigan has quit [Quit: Konversation terminated!]
syhn has joined #nixos
ddellacosta has quit [Remote host closed the connection]
ddellaco_ has joined #nixos
griff__ has joined #nixos
domogled has joined #nixos
m0rphism has quit [Ping timeout: 240 seconds]
ddellaco_ has quit [Ping timeout: 260 seconds]
<radvendii>
sure
<radvendii>
it's true of any SBPM too
<radvendii>
why would you expect to be able to apt-get something and then move it onto a system without apt installed?
bvdw has quit [Quit: Ping timeout (120 seconds)]
bvdw has joined #nixos
attila_lendvai has quit [Ping timeout: 240 seconds]
<radvendii>
what is the situation that is normally possible that is not possible with nix?
<{^_^}>
[nixpkgs] @mweinelt pushed 32 commits to staging-next: https://git.io/JO6Kn
zhaofeng1 has quit [Quit: Bridge terminating on SIGTERM]
<syhn>
just getting my feet wet with nix and I can't seem to find how etworking.interfaces.<name>.macAddress actually sets the interface's MAC when not using NetworkManager or networkd
<syhn>
setting the value doesn't actually change the MAC and I'm trying to figure out why
<lukegb>
syhn: it drops .link files in, even if systemd-networkd is disabled
rj_ has joined #nixos
<lukegb>
(by settings systemd.network.links)
<lukegb>
these are parsed by udev, not systemd-networkd, so this is Fine
<pushqrdx>
radvendii i know it's true for other package mans what i was talking about is nix-build where paths will be hardcoded however if nix-shell doesn't do that then yeah it will be pretty much like others
ddellacosta has joined #nixos
<radvendii>
you'll have to try it out. i'm not sure how it behaves on non-nixos
<radvendii>
if I'm compiling things statically, and we have libraries A -> B -> C where -> means "depends on", then i shouldn't have to have library C around when compiling library A, right?
collares has quit [Quit: leaving]
<radvendii>
because library B has all those dependencies statically compiled in
<radvendii>
like it's weird to get a "undefined reference" error from a .a file?
supersandro2000 is now known as Guest37093
supersandro2000 has joined #nixos
mbrgm has quit [Ping timeout: 245 seconds]
mbrgm has joined #nixos
iceypoi has quit [Ping timeout: 260 seconds]
ddellacosta has quit [Ping timeout: 246 seconds]
iceypoi has joined #nixos
ben77 has quit [Ping timeout: 240 seconds]
cr4y1 has quit [Ping timeout: 245 seconds]
Guest37093 has quit [Ping timeout: 240 seconds]
gustavderdrache has joined #nixos
ahmed_elgabri has joined #nixos
aaabbbbbbbbbb has quit [Ping timeout: 252 seconds]
<pushqrdx>
radvendii yes but that's true if you statically compiling B too i think
ahmed_elgabri has quit [Ping timeout: 260 seconds]
<radvendii>
yeah everything is static
<radvendii>
huh
<radvendii>
i don't know why this is happening then
Izorkin_ has joined #nixos
<radvendii>
i'm cross-compiling statically with windows as the target the libraries in question are SDL2_mixer -> libvorbis -> libogg
Izorkin has quit [Ping timeout: 260 seconds]
Izorkin_ is now known as Izorkin
<radvendii>
and i have to stick NIX_LDFLAGS = [ "-logg" ]; in the recipe for SDL2_mixer or it complains about undefined references in libvorbis.a