From e90a8b7b6eba914ed1dc11de8ac953747abc15b6 Mon Sep 17 00:00:00 2001 From: Colin Date: Tue, 28 Mar 2023 06:03:20 +0000 Subject: [PATCH 1/3] nix flake update: `nixpkgs` 2023-03-09 (nixos-unstable) -> 2023-03-28 (staging); others MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit this will break moby; will work to re-enable ``` • Updated input 'mobile-nixos': 'github:nixos/mobile-nixos/9a0c317a027d1c085c641fe6df1f51b71880b720' (2023-03-03) → 'github:nixos/mobile-nixos/7a6e97e3af73c4cca87e12c83abcb4913dac7dbc' (2023-03-22) • Updated input 'nixpkgs-unpatched': 'github:nixos/nixpkgs/1e2590679d0ed2cee2736e8b80373178d085d263' (2023-03-09) → 'github:nixos/nixpkgs/f027fe965cc27f258e9f7ffd3d0cec011e51a41c' (2023-03-28) • Updated input 'sops-nix': 'github:Mic92/sops-nix/1568702de0d2488c1e77011a9044de7fadec80c4' (2023-03-10) → 'github:Mic92/sops-nix/4740f80ca6e756915aaaa0a9c5fbb61ba09cc145' (2023-03-26) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/d51554151a91cd4543a7620843cc378e3cbc767e' (2023-03-04) → 'github:NixOS/nixpkgs/da26ae9f6ce2c9ab380c0f394488892616fc5a6a' (2023-03-25) ``` --- flake.lock | 26 +++++++++++++------------- flake.nix | 3 ++- nixpatches/list.nix | 12 ++++-------- 3 files changed, 19 insertions(+), 22 deletions(-) diff --git a/flake.lock b/flake.lock index 4b4fb1c4..431483ac 100644 --- a/flake.lock +++ b/flake.lock @@ -18,11 +18,11 @@ "mobile-nixos": { "flake": false, "locked": { - "lastModified": 1677879564, - "narHash": "sha256-luJTRYY1zEoN5fSGwbZxq66IE1kdrqOq0/iBWzw7gOI=", + "lastModified": 1679516998, + "narHash": "sha256-w4baQlS84X8Lf0E5RN0nGkx03luDuV1X0+jWMAXm6fs=", "owner": "nixos", "repo": "mobile-nixos", - "rev": "9a0c317a027d1c085c641fe6df1f51b71880b720", + "rev": "7a6e97e3af73c4cca87e12c83abcb4913dac7dbc", "type": "github" }, "original": { @@ -66,11 +66,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1677948530, - "narHash": "sha256-BkQjq8AGHD55RJe4PUnrWRZZ8jS64p/k0bGDck5wKwY=", + "lastModified": 1679748960, + "narHash": "sha256-BP8XcYHyj1NxQi04RpyNW8e7KiXSoI+Fy1tXIK2GfdA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d51554151a91cd4543a7620843cc378e3cbc767e", + "rev": "da26ae9f6ce2c9ab380c0f394488892616fc5a6a", "type": "github" }, "original": { @@ -82,16 +82,16 @@ }, "nixpkgs-unpatched": { "locked": { - "lastModified": 1678380223, - "narHash": "sha256-HUxnK38iqrX84QdQxbFcosRKV3/koj1Zzp5b5aP4lIo=", + "lastModified": 1679983302, + "narHash": "sha256-vJe9Fct7k3NSnh0KVQAdS+hZQTKbei7xVJXBRQ4e7zY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "1e2590679d0ed2cee2736e8b80373178d085d263", + "rev": "f027fe965cc27f258e9f7ffd3d0cec011e51a41c", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-unstable", + "ref": "staging", "repo": "nixpkgs", "type": "github" } @@ -113,11 +113,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1678440572, - "narHash": "sha256-zfL09Yy6H7QQwfacCPL0gOfWpVkTbE5jXJh5oZmGf8g=", + "lastModified": 1679799335, + "narHash": "sha256-YrnDyftm0Mk4JLuw3sDBPNfSjk054N0dqQx8FW4JqDM=", "owner": "Mic92", "repo": "sops-nix", - "rev": "1568702de0d2488c1e77011a9044de7fadec80c4", + "rev": "4740f80ca6e756915aaaa0a9c5fbb61ba09cc145", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 356af0b3..2101872c 100644 --- a/flake.nix +++ b/flake.nix @@ -22,7 +22,8 @@ # nixpkgs-stable.url = "github:nixos/nixpkgs?ref=nixos-22.11"; # - nixpkgs-unpatched.url = "github:nixos/nixpkgs?ref=nixos-unstable"; + # nixpkgs-unpatched.url = "github:nixos/nixpkgs?ref=nixos-unstable"; + nixpkgs-unpatched.url = "github:nixos/nixpkgs?ref=staging"; # nixpkgs = { # url = "./nixpatches"; diff --git a/nixpatches/list.nix b/nixpatches/list.nix index 8fce2f68..e3f15abf 100644 --- a/nixpatches/list.nix +++ b/nixpatches/list.nix @@ -28,21 +28,17 @@ # it's a revert of nixpkgs commit dcf630c172df2a9ecaa47c77f868211e61ae8e52 # ./2023-01-30-mesa-cma-leak.patch # upgrade to 22.3.6 instead - ./2023-02-28-mesa-22.3.6.patch + # ./2023-02-28-mesa-22.3.6.patch # fix qt6.qtbase and qt6.qtModule to cross-compile. # unfortunately there's some tangle that makes that difficult to do via the normal `override` facilities ./2023-03-03-qtbase-cross-compile.patch # let ccache cross-compile - ./2023-03-04-ccache-cross-fix.patch - - # 2023-03-09: phosh: 0.23 -> 0.25.1 - (fetchpatch { - url = "https://github.com/NixOS/nixpkgs/pull/219355.diff"; - hash = "sha256-hx2keVWuokla2Oi92zoXsnjVuwakxL2cB55ctzlO8OQ="; - }) + # TODO: why doesn't this apply? + # ./2023-03-04-ccache-cross-fix.patch + # TODO: point to upstream PR ./2023-03-10-hase.patch # # kaiteki: init at 2022-09-03 From b1e9d8db80d1a8e6dac443847b552d30ca770c59 Mon Sep 17 00:00:00 2001 From: Colin Date: Tue, 28 Mar 2023 19:03:53 +0000 Subject: [PATCH 2/3] nix flake update: nixpkgs f027fe965cc2 -> fc47fa33a3ac; sops-nix --- flake.lock | 14 ++++---- flake.nix | 2 +- hosts/by-name/moby/default.nix | 1 + hosts/common/cross/default.nix | 60 ++++++++++++++++++++++++++++--- overlays/disable-flakey-tests.nix | 6 ++++ pkgs/browserpass/default.nix | 4 +-- 6 files changed, 73 insertions(+), 14 deletions(-) diff --git a/flake.lock b/flake.lock index 431483ac..c40aa996 100644 --- a/flake.lock +++ b/flake.lock @@ -82,16 +82,16 @@ }, "nixpkgs-unpatched": { "locked": { - "lastModified": 1679983302, - "narHash": "sha256-vJe9Fct7k3NSnh0KVQAdS+hZQTKbei7xVJXBRQ4e7zY=", + "lastModified": 1680026472, + "narHash": "sha256-f9824KWmxVBI4WLI7o6tDFfj+dW+qj6uQKo0ZRsbaZQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f027fe965cc27f258e9f7ffd3d0cec011e51a41c", + "rev": "fc47fa33a3ac1044098b1d516f88c38c2d22ef72", "type": "github" }, "original": { "owner": "nixos", - "ref": "staging", + "ref": "staging-next", "repo": "nixpkgs", "type": "github" } @@ -113,11 +113,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1679799335, - "narHash": "sha256-YrnDyftm0Mk4JLuw3sDBPNfSjk054N0dqQx8FW4JqDM=", + "lastModified": 1679993313, + "narHash": "sha256-pfZ/BxJDTifnQBMXg60OhwpJvg96LHvEXGtpHeGcWLM=", "owner": "Mic92", "repo": "sops-nix", - "rev": "4740f80ca6e756915aaaa0a9c5fbb61ba09cc145", + "rev": "5b26523e28989a7f56953b695184070c06335814", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 2101872c..4ea1ecf9 100644 --- a/flake.nix +++ b/flake.nix @@ -23,7 +23,7 @@ # # nixpkgs-unpatched.url = "github:nixos/nixpkgs?ref=nixos-unstable"; - nixpkgs-unpatched.url = "github:nixos/nixpkgs?ref=staging"; + nixpkgs-unpatched.url = "github:nixos/nixpkgs?ref=staging-next"; # nixpkgs = { # url = "./nixpatches"; diff --git a/hosts/by-name/moby/default.nix b/hosts/by-name/moby/default.nix index afd45c27..7618084b 100644 --- a/hosts/by-name/moby/default.nix +++ b/hosts/by-name/moby/default.nix @@ -38,6 +38,7 @@ # sane.programs.consoleUtils.enableFor.user.colin = false; # sane.programs.guiApps.enableFor.user.colin = false; sane.programs.sequoia.enableFor.user.colin = false; + sane.programs.tuiApps.enableFor.user.colin = false; # visidata, others, don't compile well boot.loader.efi.canTouchEfiVariables = false; # /boot space is at a premium. default was 20. diff --git a/hosts/common/cross/default.nix b/hosts/common/cross/default.nix index c4b255be..a17ea63b 100644 --- a/hosts/common/cross/default.nix +++ b/hosts/common/cross/default.nix @@ -241,6 +241,7 @@ let }); addNativeInputs = nativeBuildInputs: addInputs { inherit nativeBuildInputs; }; addBuildInputs = buildInputs: addInputs { inherit buildInputs; }; + addDepsBuildBuild = depsBuildBuild: addInputs { inherit depsBuildBuild; }; mvToNativeInputs = nativeBuildInputs: mvInputs { inherit nativeBuildInputs; }; mvToBuildInputs = buildInputs: mvInputs { inherit buildInputs; }; rmInputs = { buildInputs ? [], nativeBuildInputs ? [] }: pkg: pkg.overrideAttrs (upstream: { @@ -563,6 +564,9 @@ in # fixes error where python3.10-skia-pathops dependency isn't available for the build platform inherit (emulated) stdenv; }; + # fixes "FileNotFoundError: [Errno 2] No such file or directory: 'gtk4-update-icon-cache'" + # - only required because of my wrapGAppsHook4 change + celluloid = addNativeInputs [ next.gtk4 ] prev.celluloid; cdrtools = prev.cdrtools.override { # "configure: error: installation or configuration problem: C compiler cc not found." inherit (emulated) stdenv; @@ -760,6 +764,8 @@ in # }; # fixes: "src/meson.build:106:0: ERROR: Program 'glib-compile-resources' not found or not executable" file-roller = mvToNativeInputs [ next.glib ] super.file-roller; + # fixes: "meson.build:75:6: ERROR: Program 'gtk-update-icon-cache' not found or not executable" + gnome-clocks = addNativeInputs [ next.gtk4 ] super.gnome-clocks; # fixes: "src/meson.build:3:0: ERROR: Program 'glib-compile-resources' not found or not executable" gnome-color-manager = mvToNativeInputs [ next.glib ] super.gnome-color-manager; # fixes "subprojects/gvc/meson.build:30:0: ERROR: Program 'glib-mkenums mkenums' not found or not executable" @@ -846,6 +852,8 @@ in }); # fixes: meson.build:111:6: ERROR: Program 'glib-compile-schemas' not found or not executable gnome-user-share = addNativeInputs [ next.glib ] super.gnome-user-share; + # fixes: "FileNotFoundError: [Errno 2] No such file or directory: 'gtk4-update-icon-cache'" + gnome-weather = addNativeInputs [ next.gtk4 ] super.gnome-weather; mutter = super.mutter.overrideAttrs (orig: { nativeBuildInputs = orig.nativeBuildInputs ++ [ next.glib # fixes "clutter/clutter/meson.build:281:0: ERROR: Program 'glib-mkenums mkenums' not found or not executable" @@ -863,10 +871,12 @@ in # # new failure mode: "/nix/store/grqh2wygy9f9wp5bgvqn4im76v82zmcx-binutils-2.39/bin/ld: /nix/store/f7yr5z123d162p5457jh3wzkqm7x8yah-glib-2.74.3/lib/libglib-2.0.so: error adding symbols: file in wrong format" # inherit (emulated) stdenv; # }; - nautilus = super.nautilus.overrideAttrs (orig: { + nautilus = addInputs { # fixes: "meson.build:123:0: ERROR: Dependency "libxml-2.0" not found, tried pkgconfig" - buildInputs = orig.buildInputs ++ [ next.libxml2 ]; - }); + buildInputs = [ next.libxml2 ]; + # fixes: "meson.build:226:6: ERROR: Program 'gtk-update-icon-cache' not found or not executable" + nativeBuildInputs = [ next.gtk4 ]; + } super.nautilus; }); gocryptfs = prev.gocryptfs.override { @@ -1232,6 +1242,14 @@ in pythonPackagesExtensions = prev.pythonPackagesExtensions ++ [ (py-next: py-prev: { + + aiohttp = py-prev.aiohttp.overridePythonAttrs (orig: { + # fixes "ModuleNotFoundError: No module named 'setuptools'" + propagatedBuildInputs = orig.propagatedBuildInputs ++ [ + py-next.setuptools + ]; + }); + defcon = py-prev.defcon.overridePythonAttrs (orig: { nativeBuildInputs = orig.nativeBuildInputs ++ orig.nativeCheckInputs; }); @@ -1242,6 +1260,12 @@ in "tests/test_main.py" ]; }); + gssapi = py-prev.gssapi.overridePythonAttrs (_orig: { + # "krb5-aarch64-unknown-linux-gnu-1.20.1/lib/libgssapi_krb5.so: cannot open shared object file" + # setup.py only needs this to detect if kerberos was configured with gssapi support (not sure why it doesn't call krb5-config for that?) + # it doesn't actually link or use anything from the build krb5 except a "canary" symobl. + GSSAPI_MAIN_LIB = "${next.buildPackages.krb5}/lib/libgssapi_krb5.so"; + }); # h5py = py-prev.h5py.overridePythonAttrs (orig: { # # XXX: can't upstream until its dependency, hdf5, is fixed. that looks TRICKY. # # - the `setup_configure.py` in h5py tries to dlopen (and call into) the hdf5 lib to query the version and detect features like MPI @@ -1282,6 +1306,19 @@ in "tests/unit/test_compat.py" ]; }); + scipy = py-prev.scipy.override { + inherit (emulated) stdenv; + }; + # scipy = py-prev.scipy.overridePythonAttrs (orig: { + # # "/nix/store/yhz6yy9bp52x9fvcda4lr6kgsngxnv2l-python3.10-numpy-1.24.2/lib/python3.10/site-packages/numpy/core/include/../lib/libnpymath.a: error adding symbols: file in wrong format" + # # mesonFlags = orig.mesonFlags or [] ++ [ "-Duse-pythran=false" ]; + # # don't know how to plumb meson falgs through python apps + # # postPatch = orig.postPatch or "" + '' + # # sed -i "s/option('use-pythran', type: 'boolean', value: true,/option('use-pythran', type: 'boolean', value: false,/" meson_options.txt + # # ''; + # SCIPY_USE_PYTHRAN = false; + # nativeBuildInputs = lib.remove py-next.pythran orig.nativeBuildInputs; + # }); # skia-pathops = ? # it tries to call `cc` during the build, but can't find it. }) @@ -1330,6 +1367,13 @@ in # fixes "error: could not find git for clone of catch2-populate" buildInputs = orig.buildInputs or [] ++ [ next.catch2_3 ]; }); + rav1e = prev.rav1e.override { + # fix "aarch64-unknown-linux-gnu-gcc: error: unrecognized command-line option '-m64'" + inherit (emulated) + rustPlatform + stdenv + ; + }; rmlint = prev.rmlint.override { # fixes "Checking whether the C compiler works... no" # rmlint is scons; it reads the CC environment variable, though, so *may* be cross compilable @@ -1422,7 +1466,12 @@ in }); # fixes: "src/meson.build:12:2: ERROR: Program 'gdbus-codegen' not found or not executable" - sysprof = mvToNativeInputs [ next.glib ] prev.sysprof; + sysprof = mvToNativeInputs [ next.glib ] ( + addNativeInputs [ next.wrapGAppsHook ] ( + # addDepsBuildBuild [ next.pkg-config ] prev.sysprof + rmInputs { nativeBuildInputs = [ next.wrapGAppsHook4 ]; } prev.sysprof + ) + ); # fixes "configure: error: *** gdbus-codegen is required to build tpm2-abrmd; No package 'gio-unix-2.0' found" tpm2-abrmd = addNativeInputs [ next.glib ] prev.tpm2-abrmd; tracker-miners = prev.tracker-miners.override { @@ -1465,6 +1514,9 @@ in }); # fixes "perl: command not found" vpnc = mvToNativeInputs [ next.perl ] prev.vpnc; + wrapGAppsHook4 = prev.wrapGAppsHook4.override { + gtk3 = next.emptyDirectory; + }; xapian = prev.xapian.overrideAttrs (upstream: { # the output has #!/bin/sh scripts. # - shebangs get re-written on native build, but not cross build diff --git a/overlays/disable-flakey-tests.nix b/overlays/disable-flakey-tests.nix index da21b565..235c08c0 100644 --- a/overlays/disable-flakey-tests.nix +++ b/overlays/disable-flakey-tests.nix @@ -60,6 +60,12 @@ # - not ok 267 - tcp_bind_error_addrinuse_listen doCheck = false; }); + libwacom = prev.libwacom.overrideAttrs (_upstream: { + # 2023/03/30 + # "libwacom:all / pytest TIMEOUT" + doCheck = false; + mesonFlags = [ "-Dtests=disabled" ]; + }); llvmPackages_12 = let diff --git a/pkgs/browserpass/default.nix b/pkgs/browserpass/default.nix index f31531e7..a8708858 100644 --- a/pkgs/browserpass/default.nix +++ b/pkgs/browserpass/default.nix @@ -32,8 +32,8 @@ in owner = "colin"; repo = "browserpass-native"; # don't forcibly append '.gpg' - rev = "85bdb08379c03297c1236f66e8764160c922d397"; - hash = "sha256-SEfihU+GreWhYfLVr7tTnMCo6Iq20a78F8iVbycOQUQ="; + rev = "d3ef88e12cb127914fb0ead762b7baee6913592f"; + hash = "sha256-FRnFmCJI/1f92DOI1VXSPivSBzIR372gmgLUfLLiuPc="; }; installPhase = '' make install From 001a5fc252ced827c4aed82dd0b25473145a5d8f Mon Sep 17 00:00:00 2001 From: Colin Date: Fri, 31 Mar 2023 10:27:05 +0000 Subject: [PATCH 3/3] firefox: update addon hashes --- hosts/common/home/firefox.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hosts/common/home/firefox.nix b/hosts/common/home/firefox.nix index 8130a886..eaf9bc00 100644 --- a/hosts/common/home/firefox.nix +++ b/hosts/common/home/firefox.nix @@ -132,7 +132,7 @@ in sidebery.package = addon "sidebery" "{3c078156-979c-498b-8990-85f7987dd929}" "sha256-YONfK/rIjlsrTgRHIt3km07Q7KnpIW89Z9r92ZSCc6w="; sponsorblock.package = addon "sponsorblock" "sponsorBlocker@ajay.app" "sha256-hRsvLaAsVm3dALsTrJqHTNgRFAQcU7XSaGhr5G6+mFs="; ublacklist.package = addon "ublacklist" "@ublacklist" "sha256-RqY5iHzbL2qizth7aguyOKWPyINXmrwOlf/OsfqAS48="; - ublock-origin.package = addon "ublock-origin" "uBlock0@raymondhill.net" "sha256-52lYqMjrS3GVTaybDrH1p6VF90YVkifguCGxobI/fNQ="; + ublock-origin.package = addon "ublock-origin" "uBlock0@raymondhill.net" "sha256-eHlQrU/b9X/6sTbHBpGAd+0VsLT7IrVCnd0AQ948lyA="; browserpass-extension.enable = lib.mkDefault true; # bypass-paywalls-clean.enable = lib.mkDefault true;