Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introducing NetBSD userland #38822

Merged
merged 2 commits into from Apr 24, 2018
Merged

Introducing NetBSD userland #38822

merged 2 commits into from Apr 24, 2018

Conversation

matthewbauer
Copy link
Member

This adds some NetBSD userland into Nixpkgs. The main goal is to create some tools that will make adding more of NetBSD easier. The NetBSD tree is pulled from CVS directly and only needed paths are downloaded. FreeBSD and OpenBSD can use similar approaches.

This replaces the "musl-*" stuff that was really just hacked up versions of NetBSD sources. Hoping it doesn't break anything. It finally gave me an excuse to add my NetBSD work though.

/cc @dtzWill

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: cvs

The following builds were skipped because they don't evaluate on x86_64-darwin: musl

Partial log (click to expand)

cannot build derivation '/nix/store/ir47f55f9jnnwzd2f6h7k5nmrcp63ks4-openssl-1.0.2o.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/mfsaf5172fbizwjbw547yyqjh40x8b26-pkg-config-0.29.2.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/bxr22r68hqk154wxhhlq0cg60q9k42l2-texinfo-6.5.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/bx3rgjkg5mpjbwpbac4jc8chfmls9cim-libssh2-1.8.0.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/pbvvgds3qn84bhfsy4vz9scswm414gvf-nano-2.9.4.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/v7qq9zqfqfdwzql6kfsjijr1gbkmz20z-nghttp2-1.24.0.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/sqjrlm6x5vibd02f1zfiscpf47glh2wg-curl-7.59.0.drv': 8 dependencies couldn't be built
cannot build derivation '/nix/store/4dfnjnarwd2p1lrbbh1x7fxxjiz4p4v1-vasnprintf-high-sierra-fix.diff.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/af40kw8xjd9bdai8nlp8dfhmdhb7j4fc-cvs-1.12.13.drv': 4 dependencies couldn't be built
�[31;1merror:�[0m build of '/nix/store/af40kw8xjd9bdai8nlp8dfhmdhb7j4fc-cvs-1.12.13.drv' failed

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: cvs, musl

Partial log (click to expand)

/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13/share/cvs/contrib/sandbox_status: interpreter directive changed from " /bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13/share/cvs/contrib/rcs2log: interpreter directive changed from " /bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13/share/cvs/contrib/rcs-to-cvs: interpreter directive changed from " /bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13/share/cvs/contrib/newcvsroot: interpreter directive changed from " /bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13/share/cvs/contrib/debug_check_log: interpreter directive changed from "/bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13/share/cvs/contrib/cvs2vendor: interpreter directive changed from " /bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13/bin/cvsbug: interpreter directive changed from " /bin/sh" to "/nix/store/adw9jx59wnrh5659wz43nbjya3m4b3gl-bash-4.4-p19/bin/sh"
checking for references to /build in /nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13...
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13
/nix/store/y3qb2yfi1gky20vmd534hclm70c580yg-musl-1.1.19

Copy link
Member

@Ericson2314 Ericson2314 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job! You're really pushing us in a more portable direction and it's fantastic.

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: cvs

The following builds were skipped because they don't evaluate on x86_64-darwin: musl

Partial log (click to expand)

cannot build derivation '/nix/store/mqyzvqx3mwzgrx3cjgn9iv2h83f1mjy3-openssl-1.0.2o.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/mrzp3jdaflqcx2ilwzmjri8n15zsasdy-pkg-config-0.29.2.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/8ada41yqdadqddljnbyjq0x3qn9xjakv-texinfo-6.5.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/rm6flz7rpiy62p2njgm03dqxzhqj2jib-libssh2-1.8.0.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/vgmg9zaaqiz1h5wmpq0rv6d0amb4lk41-nano-2.9.4.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/7gyhznhgn6dn4f6qggaadzy3vyvv46vq-nghttp2-1.24.0.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/p22mz8rn6yri9bay5dz3xyhpfmzf7hcf-curl-7.59.0.drv': 8 dependencies couldn't be built
cannot build derivation '/nix/store/7w08nwc12mm4qbk8f5fkaszs6r0g6xna-vasnprintf-high-sierra-fix.diff.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/c3ygi7i9ic4pfkm43dqf3ydz2rhy18qf-cvs-1.12.13.drv': 4 dependencies couldn't be built
�[31;1merror:�[0m build of '/nix/store/c3ygi7i9ic4pfkm43dqf3ydz2rhy18qf-cvs-1.12.13.drv' failed

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: cvs, musl

Partial log (click to expand)

/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13/share/cvs/contrib/sandbox_status: interpreter directive changed from " /bin/sh" to "/nix/store/y62frnmr1q5zfz1pwn08wvwc017mx7n3-bash-4.4-p19/bin/sh"
/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13/share/cvs/contrib/rcs2log: interpreter directive changed from " /bin/sh" to "/nix/store/y62frnmr1q5zfz1pwn08wvwc017mx7n3-bash-4.4-p19/bin/sh"
/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13/share/cvs/contrib/rcs-to-cvs: interpreter directive changed from " /bin/sh" to "/nix/store/y62frnmr1q5zfz1pwn08wvwc017mx7n3-bash-4.4-p19/bin/sh"
/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13/share/cvs/contrib/newcvsroot: interpreter directive changed from " /bin/sh" to "/nix/store/y62frnmr1q5zfz1pwn08wvwc017mx7n3-bash-4.4-p19/bin/sh"
/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13/share/cvs/contrib/debug_check_log: interpreter directive changed from "/bin/sh" to "/nix/store/y62frnmr1q5zfz1pwn08wvwc017mx7n3-bash-4.4-p19/bin/sh"
/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13/share/cvs/contrib/cvs2vendor: interpreter directive changed from " /bin/sh" to "/nix/store/y62frnmr1q5zfz1pwn08wvwc017mx7n3-bash-4.4-p19/bin/sh"
/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13/bin/cvsbug: interpreter directive changed from " /bin/sh" to "/nix/store/y62frnmr1q5zfz1pwn08wvwc017mx7n3-bash-4.4-p19/bin/sh"
checking for references to /build in /nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13...
/nix/store/z622zzf9dqnpabdhw9s1kpv13xi5p3m8-cvs-1.12.13
/nix/store/llikn8rpxjsks6jynjz2375xk1bzlfwh-musl-1.1.19

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: cvs, musl

Partial log (click to expand)

stripping (with command strip and flags -S) in /nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/bin
patching script interpreter paths in /nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/share/cvs/contrib/sandbox_status: interpreter directive changed from " /bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/share/cvs/contrib/cvs2vendor: interpreter directive changed from " /bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/share/cvs/contrib/rcs2log: interpreter directive changed from " /bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/share/cvs/contrib/debug_check_log: interpreter directive changed from "/bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/share/cvs/contrib/rcs-to-cvs: interpreter directive changed from " /bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/share/cvs/contrib/newcvsroot: interpreter directive changed from " /bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13/bin/cvsbug: interpreter directive changed from " /bin/sh" to "/nix/store/xn5gv3lpfy91yvfy9b0i7klfcxh9xskz-bash-4.4-p19/bin/sh"
checking for references to /tmp/nix-build-cvs-1.12.13.drv-0 in /nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13...

@@ -44,6 +44,15 @@ in rec {
eject = singleBinary "eject" {
linux = pkgs.utillinux;
};
getconf = singleBinary "getconf" {
linux = if (hostPlatform.libc == "glibc") then pkgs.glibc.bin
else pkgs.netbsd.getconf;
Copy link
Member

@Mic92 Mic92 Apr 12, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we the only one using getconf/getent from netbsd? How does it compare to getent from busybox?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alpine Linux uses netbsd sources. Didn’t know about busybox getent though.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like the busybox version is just a patched version of glibc’s.

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: cvs

Partial log (click to expand)

these paths will be fetched (0.59 MiB download, 1.77 MiB unpacked):
  /nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13
copying path '/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13' from 'https://cache.nixos.org'...
/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: cvs

Partial log (click to expand)

these paths will be fetched (0.54 MiB download, 1.70 MiB unpacked):
  /nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13
copying path '/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13' from 'https://cache.nixos.org'...
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: cvs

Partial log (click to expand)

these paths will be fetched (0.59 MiB download, 1.74 MiB unpacked):
  /nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13
copying path '/nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13' from 'https://cache.nixos.org'...
/nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13

@matthewbauer matthewbauer changed the title [preview] Introducing NetBSD userland Introducing NetBSD userland Apr 24, 2018
hacky wrapper handles ssh issues in nix builders
Adds a couple of useful NetBSD and OpenBSD derivations. Some of these
will be integrated into Nixpkgs later.

Noncomprehensive list:

- netbsd.getent
- netbsd.getconf
- netbsd.fts
- openbsd.mg
- netbsd.compat (can replace libbsd)
@matthewbauer
Copy link
Member Author

matthewbauer commented Apr 24, 2018

Ok removed all of the unix-tools stuff. Right now this PR is just adding two attribute sets "openbsd" and "netbsd". Eventually this will replace some of the old BSD type stuff. Now nothing will change (outside netbsd & openbsd). Will follow Hydra results.

@GrahamcOfBorg eval

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: cvs

Partial log (click to expand)

these paths will be fetched (0.59 MiB download, 1.74 MiB unpacked):
  /nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13
copying path '/nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13' from 'https://cache.nixos.org'...
/nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: cvs

Partial log (click to expand)

/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: cvs

Partial log (click to expand)

these paths will be fetched (0.54 MiB download, 1.70 MiB unpacked):
  /nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13
copying path '/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13' from 'https://cache.nixos.org'...
/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13

@matthewbauer matthewbauer merged commit ab92a47 into NixOS:master Apr 24, 2018
@dtzWill
Copy link
Member

dtzWill commented Apr 24, 2018

yay!!

If you weren't already, can you make a PR with your unix-tools changes? I'd like to keep track of them and was planning to build on them once I have some time. Mark [WIP] or w/e as appropriate, I'm not sure where they stand exactly.

Woohoo re:NetBSD!

@matthewbauer
Copy link
Member Author

Yeah definitely. I just need to make sure it builds okay on Hydra before proposing any (potential) mass rebuilds.

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: cvs

Partial log (click to expand)

/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: cvs

Partial log (click to expand)

/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: cvs

Partial log (click to expand)

/nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: cvs

Partial log (click to expand)

/nix/store/rkbdlrzx1jk2ag3jylv0qp44hma9hli5-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: cvs

Partial log (click to expand)

/nix/store/s262sglk84x36bv7qpf3i12phr4rl7k0-cvs-1.12.13

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: cvs

Partial log (click to expand)

/nix/store/idjck5bgl5sxzlrs05achryb1224ppcx-cvs-1.12.13

@Ericson2314
Copy link
Member

Just want to say great job! So much more maintainable than what Alpine linux does I gather.

@matthewbauer
Copy link
Member Author

Hopefully! Still working my way through some of the initial failures though. netbsd.getent, netbsd.fts and netbsd.getconf are working reliable though.

@dtzWill
Copy link
Member

dtzWill commented Apr 26, 2018

Tried switching to using these (still might for getent/getconf), but ran into troubles with netbsd.fts building libselinux:

  • Seems to be misising includes, although documentation suggests fts.h expects code to include some things first. Haven't investigated, because
  • Seems to expect __RENAME macro from <sys/cdefs.h> which doesn't appear to be present in anyone's definition other than netbsd's own cdefs.

Thoughts?

@matthewbauer
Copy link
Member Author

Yeah we need to add nbcompat as a propagated build input.

@dtzWill
Copy link
Member

dtzWill commented Apr 26, 2018

Hmm, looks like getent can't be built on musl either--due to xinstall needing <fts.h> via mtree headers. Hrmm.

$ nix build -f . --arg localSystem '{config="x86_64-unknown-linux-musl";}' netbsd.install
error: build of '/nix/store/m11yvas0hcxzwsgpnzqxqv2lp3ri0xcl-xinstall-netbsd-7.1.2.drv' on 'ssh://wdietz2@presto' failed: builder for '/nix/store/m11yvas0hcxzwsgpnzqxqv2lp3ri0xcl-xinstall-netbsd-7.1.2.drv' failed with exit code 1
builder for '/nix/store/m11yvas0hcxzwsgpnzqxqv2lp3ri0xcl-xinstall-netbsd-7.1.2.drv' failed with exit code 1; last 10 log lines:
  In file included from /build/cvs-export/usr.sbin/mtree/getid.c:81:0:
  /build/cvs-export/usr.sbin/mtree/extern.h:43:10: fatal error: fts.h: No such file or directory
   #include <fts.h>
            ^~~~~~~
  compilation terminated.
  *** Error code 1
  
  Stop.
  make: stopped in /build/cvs-export/usr.bin/xinstall
  builder for '/nix/store/m11yvas0hcxzwsgpnzqxqv2lp3ri0xcl-xinstall-netbsd-7.1.2.drv' failed with exit code 1
[0 built (1 failed)]
error: build of '/nix/store/m11yvas0hcxzwsgpnzqxqv2lp3ri0xcl-xinstall-netbsd-7.1.2.drv' failed

If you want to poke at it, the above command should work as a template for testing...

@dtzWill
Copy link
Member

dtzWill commented Apr 26, 2018

Erm, I always forget the official binary cache doesn't have a musl toolchain.. yet O:).

Well I don't think it does. Anyway, if that's a problem you can save some build time using something like:

$ nix build --store $HOME/test-store --option binary-caches https://cache.allvm.org --option trusted-public-keys "gravity.cs.illinois.edu-1:yymmNS/WMf0iTj2NnD0nrVV8cBOXM9ivAkEdO1Lro3U= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" -f ./nixpkgs-staging --arg localSystem '{config="x86_64-unknown-linux-musl";}' netbsd.getent

Which I'll note:

  • Uses the ALLVM cache and key
  • Uses local store so you don't have to root-level trust me/my builders
  • As written expects your nixpkgs branch to be in ./nixpkgs-staging--this very likely won't be right :).

@matthewbauer
Copy link
Member Author

Ok I think it's fixed in https://github.com/matthewbauer/nixpkgs/tree/netbsd. Can you test it out before I push it to master?

@dtzWill
Copy link
Member

dtzWill commented Apr 26, 2018

Awesome, thanks! This looks better, here's what I found:

$ h exit code 1
builder for '/nix/store/702rd74gxcj138hqcxj2ss6c54slkq9k-getent-netbsd-7.1.2.drv' failed with exit code 1; last 10 log lines:
  install  -l h -r  -m 444  /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/share/man/html1/getent.html /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/share/man/html1/getcap.html
  echo '#  ' "install " /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getcap;  echo "install  -l h -r  -o root  -g wheel  -m 555  /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getent /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getcap" &&  install  -l h -r  -o root  -g wheel  -m 555  /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getent /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getcap
  #   install  /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getcap
  install  -l h -r  -o root  -g wheel  -m 555  /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getent /nix/store/h2h1lxhnppz2vniijclidpzv5skxic24-getent-netbsd-7.1.2/bin/getcap
  install: unknown group wheel
  *** Error code 1
  
  Stop.
  make: stopped in /build/cvs-export/usr.bin/getent
  builder for '/nix/store/702rd74gxcj138hqcxj2ss6c54slkq9k-getent-netbsd-7.1.2.drv' failed with exit code 1
[0 built (1 failed), 3 copied (3.0 MiB), 0.8 MiB DL]
error: build of '/nix/store/702rd74gxcj138hqcxj2ss6c54slkq9k-getent-netbsd-7.1.2.drv' failed

But netbsd.install builds now!

Also looking at the "compat" headers I'm not sure it's a good idea to propagate them-- or at least there are many more headers there than I think one might expect in order to use fts.h :3, and would probably require some extensive testing to ensure they're not problematic in some way.

More actionable feedback is that the compat headers seem to have references to /build--haha they try to do something like #include "/build/asdfadsf/..." which is probably no good :).

@matthewbauer
Copy link
Member Author

Those files shouldn't be installed. We just install what that include goes to. I think I have fixed your issue though. It's weird that I'm not getting it.

@matthewbauer
Copy link
Member Author

@dtzWill Have you been able to compare musl-getent & netbsd.getent? I think they are close but depending on your use case may have some differences.

Anyway I would like to start looking into using some of the netbsd stuff in the wider nixpkgs. Has it been working properly for you since? I've committed a few different changes that I think have hit master by now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants