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

Cannot build iso without substituters because lwfinger/rtlwifi_new is missing #95324

Closed
ElvishJerricco opened this issue Aug 13, 2020 · 2 comments
Assignees

Comments

@ElvishJerricco
Copy link
Contributor

ElvishJerricco commented Aug 13, 2020

Describe the bug
If you attempt to build the NixOS iso without any binary caches (i.e. you want to bootstrap NixOS from source), the build will fail with a 404 Not Found on https://github.com/lwfinger/rtlwifi_new/archive/a108e3de87c2ed30b71c3c4595b79ab7a2f9e348.tar.gz

This is because the repo no longer exists.

To Reproduce
Steps to reproduce the behavior:

On a system that does not already have this package installed: pkgs/os-specific/linux/rtlwifi_new/default.nix

nix-build --no-substitute "<nixpkgs/nixos>" \
  --arg configuration "<nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix>" \
  -A config.system.build.isoImage

Eventually, you'll see

  trying https://github.com/lwfinger/rtlwifi_new/archive/a108e3de87c2ed30b71c3c4595b79ab7a2f9e348.tar.gz
    % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                   Dload  Upload   Total   Spent    Left  Speed
    0     0    0     0    0     0      0      0 --:--:--  0:00:05 --:--:--     0
  curl: (22) The requested URL returned error: 404 Not Found
  error: cannot download source from any mirror

Expected behavior
An iso image of NixOS should be built.

Additional context
This is an issue for almost no one, as the build is cached, and the builders for the cache probably have the source cached or something. But some people do like the ability to build their OS from source themselves.

EDIT: Looks like the maintainer expects people to use the driver in the kernel. That repo used to direct people to the now-missing repo.

Notify maintainers
@TvoroG

@ElvishJerricco
Copy link
Contributor Author

It at least successfully builds if you simply remove this firmware on 20.03. Whether or not that's a good idea, I have no idea.

diff --git a/nixos/modules/hardware/all-firmware.nix b/nixos/modules/hardware/all-firmware.nix
index b07edb0f6ac..832583ade6d 100644
--- a/nixos/modules/hardware/all-firmware.nix
+++ b/nixos/modules/hardware/all-firmware.nix
@@ -48,7 +48,6 @@ in {
         rtl8192su-firmware
         rt5677-firmware
         rtl8723bs-firmware
-        rtlwifi_new-firmware
         zd1211fw
         alsa-firmware
         sof-firmware
diff --git a/pkgs/os-specific/linux/firmware/rtlwifi_new-firmware/default.nix b/pkgs/os-specific/linux/firmware/rtlwifi_new-firmware/default.nix
deleted file mode 100644
index 673ef686e48..00000000000
--- a/pkgs/os-specific/linux/firmware/rtlwifi_new-firmware/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ stdenv, lib, linuxPackages }:
-
-with lib;
-
-stdenv.mkDerivation rec {
-  name = "rtlwifi_new-firmware-${linuxPackages.rtlwifi_new.version}";
-  inherit (linuxPackages.rtlwifi_new) src;
-
-  dontBuild = true;
-
-  installPhase = ''
-    mkdir -p "$out/lib/firmware"
-    cp -rf firmware/rtlwifi/ "$out/lib/firmware"
-  '';
-
-  meta = {
-    description = "Firmware for the newest Realtek rtlwifi codes";
-    inherit (src.meta) homepage;
-    license = licenses.unfreeRedistributableFirmware;
-    platforms = with platforms; linux;
-    maintainers = with maintainers; [ tvorog ];
-  };
-}
diff --git a/pkgs/os-specific/linux/rtlwifi_new/default.nix b/pkgs/os-specific/linux/rtlwifi_new/default.nix
deleted file mode 100644
index 403f0a40010..00000000000
--- a/pkgs/os-specific/linux/rtlwifi_new/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, kernel }:
-
-with lib;
-
-let modDestDir = "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wireless/realtek/rtlwifi";
-
-in stdenv.mkDerivation rec {
-  pname = "rtlwifi_new";
-  version = "2019-08-21";
-
-  src = fetchFromGitHub {
-    owner = "lwfinger";
-    repo = "rtlwifi_new";
-    rev = "a108e3de87c2ed30b71c3c4595b79ab7a2f9e348";
-    sha256 = "15kjs9i9vvmn1cdzccd5cljf3m45r4ssm65klkj2fdkf3kljj38k";
-  };
-
-  hardeningDisable = [ "pic" "format" ];
-
-  nativeBuildInputs = kernel.moduleBuildDependencies;
-
-  makeFlags = [ "KSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ];
-
-  enableParallelBuilding = true;
-
-  installPhase = ''
-    mkdir -p ${modDestDir}
-    find . -name '*.ko' -exec cp --parents {} ${modDestDir} \;
-    find ${modDestDir} -name '*.ko' -exec xz -f {} \;
-  '';
-
-  meta = {
-    description = "The newest Realtek rtlwifi codes";
-    inherit (src.meta) homepage;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = with platforms; linux;
-    maintainers = with maintainers; [ tvorog ];
-    priority = -1;
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c29a75868ed..3ce17db523d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -16693,8 +16693,6 @@ in
 
     rtl8821ce = callPackage ../os-specific/linux/rtl8821ce { };
 
-    rtlwifi_new = callPackage ../os-specific/linux/rtlwifi_new { };
-
     openafs = callPackage ../servers/openafs/1.6/module.nix { };
     openafs_1_8 = callPackage ../servers/openafs/1.8/module.nix { };
 
@@ -17196,8 +17194,6 @@ in
 
   rtl8723bs-firmware = callPackage ../os-specific/linux/firmware/rtl8723bs-firmware { };
 
-  rtlwifi_new-firmware = callPackage ../os-specific/linux/firmware/rtlwifi_new-firmware { };
-
   s3ql = callPackage ../tools/backup/s3ql { };
 
   sass = callPackage ../development/tools/sass { };

@vcunat vcunat self-assigned this Aug 13, 2020
@vcunat vcunat closed this as completed in 4451f9b Aug 13, 2020
vcunat added a commit that referenced this issue Aug 13, 2020
@vcunat
Copy link
Member

vcunat commented Aug 13, 2020

BTW, I was getting the source from our binary cache, so most people should be unaffected AFAIK. (Notable exception: moving /nix/store elsewhere.)

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

No branches or pull requests

2 participants