Bug#877331: sponsorship-requests: nix/1.1.15 (ITP 877019) -- Purely functional package manager
- To: Dmitry Bogatov <KAction@debian.org>, 877331@bugs.debian.org
- Subject: Bug#877331: sponsorship-requests: nix/1.1.15 (ITP 877019) -- Purely functional package manager
- From: Kai Harries <kai.harries@gmail.com>
- Date: Sat, 19 Jan 2019 21:05:02 +0100
- Message-id: <[🔎] 877ef0s9ap.fsf@x230.kaiha.invalid>
- Reply-to: Kai Harries <kai.harries@gmail.com>, 877331@bugs.debian.org
- In-reply-to: <[🔎] E1gkwO6-0004C8-3t@eggs.gnu.org>
- References: <150678793402.12432.16761805795839797034.reportbug@nix230.fritz.box> <20180225140718.GA1723@belkar.wrar.name> <87r2p890oi.fsf@x230.kaiha.invalid> <20180226174647.GG1723@belkar.wrar.name> <E1gcS5e-0001UZ-K0@eggs.gnu.org> <150678793402.12432.16761805795839797034.reportbug@nix230.fritz.box> <87zhsr468y.fsf@x230.kaiha.invalid> <150678793402.12432.16761805795839797034.reportbug@nix230.fritz.box> <E1gdJQ6-0003nV-OZ@eggs.gnu.org> <150678793402.12432.16761805795839797034.reportbug@nix230.fritz.box> <m3muoojh9g.fsf@debian.org> <[🔎] E1gkwO6-0004C8-3t@eggs.gnu.org> <150678793402.12432.16761805795839797034.reportbug@nix230.fritz.box>
Dmitry Bogatov <KAction@debian.org> writes:
> [2018-12-29 19:54] Vincent Bernat <bernat@debian.org>
>> > Probably not. Violations of FHS is violation of policy, and to get
>> > authorization to policy violation is long road, starting with discussion
>> > on debian-devel@.
>> >
>> > But, can't we just configure Nix to store it under /var/nix?
>>
>> This would break the ability to use pre-built stuff and make nix
>> slow.
>
> I belive you, but just for my curiosity, what will break if we download
> substitute (nar, almost tar archive) and extract it not in /nix, but in
> /var/nix?
The depender will break if the dependency is not at the path where it
used to be at build-time (by default /nix/store/...). All software
deployed by nix contains the full path to its dependencies. And all
dependencies are available inside the nix-store. The idea is to rely on
nothing that is outside the nix-store.
For example an ldd on bash looks like this:
$ ldd /nix/store/ij6wirzff9id7jr071p04w4nk6hksc3y-bash-interactive-4.4-p23/bin/bash
/nix/store/ij6wirzff9id7jr071p04w4nk6hksc3y-bash-interactive-4.4-p23/bin/bash:
linux-vdso.so.1 (0x00007ffe1a7d5000)
libreadline.so.7 => /nix/store/vvwxc17kpc39qbcz7qp7mkqa7fr0my84-readline-7.0p5/lib/libreadline.so.7 (0x00007f25b0593000)
libhistory.so.7 => /nix/store/vvwxc17kpc39qbcz7qp7mkqa7fr0my84-readline-7.0p5/lib/libhistory.so.7 (0x00007f25b0389000)
libncursesw.so.6 => /nix/store/2lbhgxlrhgnij2c3bm719xidymmhp0m0-ncurses-6.1-20181027/lib/libncursesw.so.6 (0x00007f25b011a000)
libdl.so.2 => /nix/store/7gx4kiv5m0i7d7qkixq2cwzbr10lvxwc-glibc-2.27/lib/libdl.so.2 (0x00007f25aff16000)
libc.so.6 => /nix/store/7gx4kiv5m0i7d7qkixq2cwzbr10lvxwc-glibc-2.27/lib/libc.so.6 (0x00007f25afb62000)
/nix/store/7gx4kiv5m0i7d7qkixq2cobra10lvxwc-glibc-2.27/lib/ld-linux-x86-64.so.2 => /nix/store/7gx4kiv5m0i7d7qkixq2cwzbr10lvxwc-glibc-2.27/lib64/ld-linux-x86-64.so.2 (0x00007f25b07def000)
Regards, Kai
Reply to: