From 0599b2185768a5656e7f782fd040ec6b18cdb825 Mon Sep 17 00:00:00 2001 From: Wong Hoi Sing Edison Date: Tue, 1 Dec 2020 14:53:35 +0800 Subject: Update nix pin with `make nixpkgs` This PR introduce 3 changes: - Upgrade Nix stable channel from 20.03 to 20.09. NixOS 20.09 released at 2020-10-27, see for more information. - Replace `git` with `gitMinimal`. All 6 projects (i.e. crun/conmon/skopeo/buildah/podman/cri-o) are having `git` as dependency for failsafe during bootstrap. BTW replace `asciidoc` with `asciidoctor` so trigger the dependency chain to `glib` and so failed (see below). Switching to `gitMinimal` skip this dependency chain to `glib`, which also speed up overall build process. - Adding `-pthread` for `glib` `conmon` couldn't skip the error by replacing `git` with `gitMinimal` since it do depend on `glib`. Since `glib` trigger error message "undefined reference to 'pthread\_create'", therefore adding `pthread` to `CFLAGS` could solve the problem. Also see: - - - - - - Signed-off-by: Wong Hoi Sing Edison --- Makefile | 2 +- nix/default.nix | 4 ++-- nix/nixpkgs.json | 11 +++++++---- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 610449e9d..68502e6b4 100644 --- a/Makefile +++ b/Makefile @@ -226,7 +226,7 @@ bin/podman.cross.%: .gopathok # Update nix/nixpkgs.json its latest stable commit .PHONY: nixpkgs nixpkgs: - @nix run -f channel:nixos-20.03 nix-prefetch-git -c nix-prefetch-git \ + @nix run -f channel:nixos-20.09 nix-prefetch-git -c nix-prefetch-git \ --no-deepClone https://github.com/nixos/nixpkgs > nix/nixpkgs.json # Build statically linked binary diff --git a/nix/default.nix b/nix/default.nix index a1a8c5287..13b4585ea 100644 --- a/nix/default.nix +++ b/nix/default.nix @@ -38,10 +38,10 @@ let doCheck = false; enableParallelBuilding = true; outputs = [ "out" ]; - nativeBuildInputs = [ bash git go-md2man installShellFiles makeWrapper pkg-config which ]; + nativeBuildInputs = [ bash gitMinimal go-md2man installShellFiles makeWrapper pkg-config which ]; buildInputs = [ glibc glibc.static gpgme libassuan libgpgerror libseccomp libapparmor libselinux ]; prePatch = '' - export CFLAGS='-static' + export CFLAGS='-static -pthread' export LDFLAGS='-s -w -static-libgcc -static' export EXTRA_LDFLAGS='-s -w -linkmode external -extldflags "-static -lm"' export BUILDTAGS='static netgo osusergo exclude_graphdriver_btrfs exclude_graphdriver_devicemapper seccomp apparmor selinux' diff --git a/nix/nixpkgs.json b/nix/nixpkgs.json index 81a2f974c..8e001f6b2 100644 --- a/nix/nixpkgs.json +++ b/nix/nixpkgs.json @@ -1,7 +1,10 @@ { "url": "https://github.com/nixos/nixpkgs", - "rev": "6e089d30148953df7abb3a1167169afc7848499c", - "date": "2020-11-05T09:56:30+01:00", - "sha256": "0ydqjkz7payl16psx445jwh6dc6lgbvj2w11xin1dqvbpcp03jcy", - "fetchSubmodules": false + "rev": "6ea2fd15d881006b41ea5bbed0f76bffcd85f9f9", + "date": "2020-12-20T13:26:58+10:00", + "path": "/nix/store/kyw1ackbp9qh1jzlzwmjvi5i3541ym5z-nixpkgs", + "sha256": "0kgqmw4ki10b37530jh912sn49x3gay5cnmfr8yz2yp8nvkrk236", + "fetchSubmodules": false, + "deepClone": false, + "leaveDotGit": false } -- cgit v1.2.3-54-g00ecf