Skip to content

Instantly share code, notes, and snippets.

View infinisil's full-sized avatar

Silvan Mosberger infinisil

  • Tweag
  • Switzerland
View GitHub Profile

Nixpkgs Pivots

We have a number of problems that currently require full rebuilds of nixpkgs:

  • glibc needs to find third-party nss modules
  • cacerts needs to contain custom CA's from enterprises
  • tzdata just changed frequently
  • locales

Interestingly, Nix's deep pinning of cacerts and tzdata gets in the way of Nix's promise of packages working over the long term in an archival sense:

Dec 07 22:17:18 vario systemd[1]: Stopping Flox...
Dec 07 22:17:19 vario floxd[1056]: level=info msg="received SIGTERM"
Dec 07 22:17:19 vario floxd[1056]: level=info msg=exiting
Dec 07 22:17:19 vario floxd[1011]: 22:17:19.157 icfs.fuse: caught signo=15 (SIGTERM), code=0 (SI_USER), pid=2442, uid=0 (root)
Dec 07 22:17:19 vario floxd[1011]: 22:17:19.193 icfs.util: notify: pthread_kill: [Errno 3] No such process: (140697732802304, 10)
Dec 07 22:17:19 vario floxadm[2401]: floxadm stop complete
Dec 07 22:17:19 vario systemd[1]: flox.service: Succeeded.
Dec 07 22:17:19 vario systemd[1]: Stopped Flox.
Dec 07 22:17:19 vario systemd[1]: flox.service: Consumed 568ms CPU time, received 795B IP traffic, sent 976B IP traffic.
Dec 07 22:17:20 vario systemd[1]: flox.service: Unit cannot be reloaded because it is inactive.
TARGET SOURCE FSTYPE OPTIONS
/ /dev/disk/by-label/nixos ext4 rw,relatime
├─/dev devtmpfs devtmpfs rw,nosuid,size=76268k,nr_inodes=188409,mode=755
│ ├─/dev/pts devpts devpts rw,nosuid,noexec,relatime,gid=3,mode=620,ptmxmode=666
│ ├─/dev/shm tmpfs tmpfs rw,nosuid,nodev,size=762644k
│ ├─/dev/mqueue mqueue mqueue rw,nosuid,nodev,noexec,relatime
│ └─/dev/hugepages hugetlbfs hugetlbfs rw,relatime,pagesize=2M
├─/proc proc proc rw,nosuid,nodev,noexec,relatime
├─/run tmpfs tmpfs rw,nosuid,n
-- Logs begin at Mon 2020-12-07 19:13:28 UTC, end at Mon 2020-12-07 21:31:17 UTC. --
Dec 07 20:21:03 nixos floxd[6238]: 20:21:03.385 icfs.pkgs: download('http://storehouse.beta.floxdev.com:8085/', 'w9wc0d31p4z93cbgxijws03j5s2c4gyf-coreutils-8.31') parsing json: '{"errno":"EEXIST","error":"EEXIST: found in local /nix/store"}\n'
Dec 07 20:21:03 nixos floxd[6238]: 20:21:03.385 icfs.pkgs: download('http://storehouse.beta.floxdev.com:8085/', 'w9wc0d31p4z93cbgxijws03j5s2c4gyf-coreutils-8.31') json: errno = 17 = EEXIST (File exists): received '{"errno":"EEXIST","error":"EEXIST: found in local /nix/store"}\n'
Dec 07 20:21:03 nixos floxd[6238]: 20:21:03.391 icfs.pkgs: download('http://storehouse.beta.floxdev.com:8085/', 'dj6n505iqrk7srn96a27jfp3i0zgwa1l-acl-2.2.53', RequestContext(pid=6394, uid=0, gid=0) cmd: /run/current-system/sw/bin/bash)
Dec 07 20:21:03 nixos floxd[6238]: 20:21:03.395 icfs.pkgs: download('http://storehouse.beta.floxdev.com:8085/', 'dj6n505iqrk7srn96a27jfp3i0zgwa1l-acl-2.2.53') parsing json: '{"err
execve("/nix/profiles/flox/default/bin/flox", ["flox"], 0x7ffef47c4150 /* 35 vars */) = 0
access("/etc/ld-nix.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/dslyw9ybc554bizjm8pn5241npa60d6b-glibc-2.31/lib/tls/x86_64/x86_64/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/dslyw9ybc554bizjm8pn5241npa60d6b-glibc-2.31/lib/tls/x86_64/x86_64", 0x7fffcc19ebd0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/dslyw9ybc554bizjm8pn5241npa60d6b-glibc-2.31/lib/tls/x86_64/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/dslyw9ybc554bizjm8pn5241npa60d6b-glibc-2.31/lib/tls/x86_64", 0x7fffcc19ebd0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/dslyw9ybc554bizjm8pn5241npa60d6b-glibc-2.31/lib/tls/x86_64/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/dslyw9ybc554bizjm8pn5241npa60d6b-glibc-2.31/lib/tls/x86_64", 0x7fffcc19e
#!/usr/bin/env bash
# This works:
while read input; do
echo "$input"
done <<< "foo
bar"
# This exits after the first entry!
#!/usr/bin/env bash
# This works:
while read input; do
echo "$input"
done <<< "foo
bar"
# This exits after the first entry!
Domen
do we want to have a poll?
or rather a survey?
is weight of all people the same?
should the poll require some investment (given that contributing to docs isn't trivial)
print "Hello there\n"
sleep 1.seconds
print "test\n"
[ 0.836971] hub 1-0:1.0: USB hub found
[ 0.837004] hub 1-0:1.0: 2 ports detected
[ 0.863257] scsi host2: Virtio SCSI HBA
[ 0.864233] scsi 2:0:0:0: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5
[ 0.888481] random: fast init done
[ 0.897795] sd 2:0:0:0: Power-on or device reset occurred
[ 0.897872] sd 2:0:0:0: [sda] 251658240 512-byte logical blocks: (129 GB/120 GiB)
[ 0.897880] sd 2:0:0:0: [sda] Write Protect is off
[ 0.897881] sd 2:0:0:0: [sda] Mode Sense: 63 00 00 08
[ 0.897894] sd 2:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA