diff --git a/kernel/default.nix b/kernel/default.nix deleted file mode 100644 index d989507..0000000 --- a/kernel/default.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ stdenv -, buildPackages -, fetchFromGitLab -, perl -, buildLinux -, modDirVersionArg ? null -, ... } @ args: - -let - inherit (stdenv.lib) - concatStrings - intersperse - take - splitString - optionalString - ; -in -( - buildLinux (args // rec { - version = "5.6"; - - # modDirVersion needs to be x.y.z, will automatically add .0 if needed - modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg; - - # branchVersion needs to be x.y - extraMeta.branch = concatStrings (intersperse "." (take 2 (splitString "." version))); - - src = fetchFromGitLab { - domain = "gitlab.manjaro.org"; - owner = "tsys"; - repo = "linux-pinebook-pro"; - rev = "93293259039d6fc3a725961d42b4f11bfc3f5127"; - sha256 = "0yrn22j10f3f6hxmbd23ccis35f9s8cbjvzxiyxnsch2zab9349s"; - }; - - postInstall = (optionalString (args ? postInstall) args.postInstall) + '' - mkdir -p "$out/nix-support" - cp -v "$buildRoot/.config" "$out/nix-support/build.config" - ''; - } // (args.argsOverride or {})) -) -#).overrideAttrs(args: { -# postInstall = (optionalString (args ? postInstall) args.postInstall) + '' -# mkdir -p "$out/nix-support" -# cp -v "$buildRoot/.config" "$out/nix-support/build.config" -# ''; -#}) diff --git a/kernel/latest/default.nix b/kernel/latest/default.nix new file mode 100644 index 0000000..8ea533b --- /dev/null +++ b/kernel/latest/default.nix @@ -0,0 +1,67 @@ +{ stdenv +, lib +, kernelPatches +, buildPackages +, fetchFromGitLab +, perl +, buildLinux +, modDirVersionArg ? null +, ... } @ args: + +let + inherit (stdenv.lib) + concatStrings + intersperse + take + splitString + optionalString + ; + version = "5.6"; + additionalConfig = { + name = "pinebookpro-config-fixes"; + patch = null; + extraConfig = '' + PCIE_ROCKCHIP y + PCIE_ROCKCHIP_HOST y + PCIE_DW_PLAT y + PCIE_DW_PLAT_HOST y + PHY_ROCKCHIP_PCIE y + PHY_ROCKCHIP_INNO_HDMI y + PHY_ROCKCHIP_DP y + ROCKCHIP_MBOX y + STAGING_MEDIA y + VIDEO_HANTRO y + VIDEO_HANTRO_ROCKCHIP y + USB_DWC2_PCI y + ROCKCHIP_LVDS y + ROCKCHIP_RGB y + ''; + }; +in + +buildLinux (args // { + inherit version; + + kernelPatches = kernelPatches ++ [ + additionalConfig + ]; + + # modDirVersion needs to be x.y.z, will automatically add .0 if needed + modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg; + + # branchVersion needs to be x.y + extraMeta.branch = concatStrings (intersperse "." (take 2 (splitString "." version))); + + src = fetchFromGitLab { + domain = "gitlab.manjaro.org"; + owner = "tsys"; + repo = "linux-pinebook-pro"; + rev = "93293259039d6fc3a725961d42b4f11bfc3f5127"; + sha256 = "0yrn22j10f3f6hxmbd23ccis35f9s8cbjvzxiyxnsch2zab9349s"; + }; + + postInstall = (optionalString (args ? postInstall) args.postInstall) + '' + mkdir -p "$out/nix-support" + cp -v "$buildRoot/.config" "$out/nix-support/build.config" + ''; +} // (args.argsOverride or {})) diff --git a/overlay.nix b/overlay.nix index c63a6ea..e0c2b86 100644 --- a/overlay.nix +++ b/overlay.nix @@ -10,33 +10,19 @@ in uBootPinebookProExternalFirst = callPackage ./u-boot { externalFirst = true; }; - linux_pinebookpro = callPackage ./kernel { + + # The unqualified kernel attr is deprecated. + linux_pinebookpro = throw "The linux_pinebookpro attribute has been replaced by linux_pinebookpro_latest."; + linuxPackages_pinebookpro = throw "The linuxPackages_pinebookpro attribute has been replaced by linuxPackages_pinebookpro_latest."; + + linux_pinebookpro_latest = callPackage ./kernel/latest { kernelPatches = [ kernelPatches.bridge_stp_helper - #kernelPatches.export_kernel_fpu_functions - { - name = "pinebookpro-config-fixes"; - patch = null; - extraConfig = '' - PCIE_ROCKCHIP y - PCIE_ROCKCHIP_HOST y - PCIE_DW_PLAT y - PCIE_DW_PLAT_HOST y - PHY_ROCKCHIP_PCIE y - PHY_ROCKCHIP_INNO_HDMI y - PHY_ROCKCHIP_DP y - ROCKCHIP_MBOX y - STAGING_MEDIA y - VIDEO_HANTRO y - VIDEO_HANTRO_ROCKCHIP y - USB_DWC2_PCI y - ROCKCHIP_LVDS y - ROCKCHIP_RGB y - ''; - } + kernelPatches.export_kernel_fpu_functions."5.3" ]; }; - linuxPackages_pinebookpro = linuxPackagesFor final.linux_pinebookpro; + linuxPackages_pinebookpro_latest = linuxPackagesFor final.linux_pinebookpro_latest; + pinebookpro-firmware = callPackage ./firmware {}; pinebookpro-keyboard-updater = callPackage ./keyboard-updater {}; }