Merge pull request #18 from nrdxp/multiArch

initial multiArch support
This commit is contained in:
Timothy DeHerrera 2020-12-27 21:20:36 -07:00 committed by GitHub
commit 766b54b1c9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 80 additions and 32 deletions

View file

@ -1,5 +1,20 @@
{ {
"nodes": { "nodes": {
"flake-utils": {
"locked": {
"lastModified": 1605370193,
"narHash": "sha256-YyMTf3URDL/otKdKgtoMChu4vfVL3vCMkRqpGifhUn0=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5021eac20303a61fafe17224c087f5519baed54d",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home": { "home": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
@ -78,6 +93,7 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"flake-utils": "flake-utils",
"home": "home", "home": "home",
"master": "master", "master": "master",
"nixos": "nixos", "nixos": "nixos",

View file

@ -6,15 +6,17 @@
master.url = "nixpkgs/master"; master.url = "nixpkgs/master";
nixos.url = "nixpkgs/release-20.09"; nixos.url = "nixpkgs/release-20.09";
home.url = "github:nix-community/home-manager/release-20.09"; home.url = "github:nix-community/home-manager/release-20.09";
flake-utils.url = "github:numtide/flake-utils";
}; };
outputs = inputs@{ self, home, nixos, master, nur }: outputs = inputs@{ self, home, nixos, master, flake-utils, nur }:
let let
inherit (builtins) attrNames attrValues readDir; inherit (builtins) attrNames attrValues readDir elem;
inherit (flake-utils.lib) eachDefaultSystem;
inherit (nixos) lib; inherit (nixos) lib;
inherit (lib) removeSuffix recursiveUpdate genAttrs filterAttrs; inherit (lib) all removeSuffix recursiveUpdate genAttrs filterAttrs;
inherit (utils) pathsToImportedAttrs genPkgset overlayPaths modules inherit (utils) pathsToImportedAttrs genPkgset overlayPaths modules
genPackages; genPackages pkgImport;
utils = import ./lib/utils.nix { inherit lib; }; utils = import ./lib/utils.nix { inherit lib; };
@ -27,33 +29,57 @@
genPkgset { genPkgset {
inherit master nixos overlays system; inherit master nixos overlays system;
}; };
in
with pkgset; outputs = {
{
nixosConfigurations = nixosConfigurations =
import ./hosts (recursiveUpdate inputs { import ./hosts (recursiveUpdate inputs {
inherit lib pkgset system utils; inherit lib pkgset system utils;
}); });
devShell."${system}" = import ./shell.nix {
pkgs = osPkgs;
};
overlay = import ./pkgs; overlay = import ./pkgs;
overlays = pathsToImportedAttrs overlayPaths; overlays = pathsToImportedAttrs overlayPaths;
packages."${system}" = genPackages {
overlay = self.overlay;
overlays = self.overlays;
pkgs = osPkgs;
};
nixosModules = modules; nixosModules = modules;
templates.flk.path = ./.; templates.flk.path = ./.;
templates.flk.description = "flk template"; templates.flk.description = "flk template";
defaultTemplate = self.templates.flk; defaultTemplate = self.templates.flk;
}; };
in
(eachDefaultSystem (system':
let
pkgs' = pkgImport {
pkgs = nixos;
system = system';
overlays = [ ];
};
in
{
devShell = import ./shell.nix {
pkgs = pkgs';
};
packages =
let
packages' = genPackages {
overlay = self.overlay;
overlays = self.overlays;
pkgs = pkgs';
};
filtered = filterAttrs
(_: v:
(v.meta ? platforms)
&& (elem system' v.meta.platforms)
&& (
(all (dev: dev.meta ? platforms) v.buildInputs)
&& (all (dev: elem system' dev.meta.platforms) v.buildInputs)
))
packages';
in
filtered;
})) // outputs;
} }

View file

@ -98,6 +98,6 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/akshaynexus/miningcore"; homepage = "https://github.com/akshaynexus/miningcore";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ nrdxp ]; maintainers = with maintainers; [ nrdxp ];
platforms = [ "x86_64-linux" ]; platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
}; };
} }

View file

@ -19,10 +19,11 @@ stdenv.mkDerivation {
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
inherit version;
description = "The hottest theme around for SDDM"; description = "The hottest theme around for SDDM";
homepage = "https://github.com/MarianArlt/sddm-chili"; homepage = "https://github.com/MarianArlt/sddm-chili";
maintainers = [ maintainers.nrdxp ]; maintainers = [ maintainers.nrdxp ];
license = licenses.gpl3; license = licenses.gpl3;
inherit version; platforms = platforms.linux;
}; };
} }

View file

@ -41,6 +41,7 @@ stdenv.mkDerivation {
homepage = "https://github.com/steamos-compositor-plus"; homepage = "https://github.com/steamos-compositor-plus";
maintainers = [ maintainers.nrdxp ]; maintainers = [ maintainers.nrdxp ];
license = licenses.bsd2; license = licenses.bsd2;
platforms = platforms.linux;
inherit version; inherit version;
}; };
} }

View file

@ -21,6 +21,7 @@ stdenv.mkDerivation {
homepage = "https://github.com/ryanoasis/nerd-fonts"; homepage = "https://github.com/ryanoasis/nerd-fonts";
license = licenses.mit; license = licenses.mit;
maintainers = [ maintainers.nrdxp ]; maintainers = [ maintainers.nrdxp ];
platforms = platforms.unix;
inherit version; inherit version;
}; };
} }

View file

@ -25,6 +25,7 @@ stdenv.mkDerivation {
homepage = "https://github.com/ToadKing/wii-u-gc-adapter"; homepage = "https://github.com/ToadKing/wii-u-gc-adapter";
maintainers = [ maintainers.nrdxp ]; maintainers = [ maintainers.nrdxp ];
license = licenses.mit; license = licenses.mit;
platforms = platforms.linux;
inherit version; inherit version;
}; };
} }

View file

@ -23,6 +23,7 @@ stdenv.mkDerivation {
description = "Pretty, minimal and fast ZSH prompt"; description = "Pretty, minimal and fast ZSH prompt";
homepage = "https://github.com/sindresorhus/pure"; homepage = "https://github.com/sindresorhus/pure";
maintainers = [ maintainers.nrdxp ]; maintainers = [ maintainers.nrdxp ];
platforms = platforms.unix;
license = licenses.mit; license = licenses.mit;
inherit version; inherit version;
}; };

View file

@ -33,6 +33,7 @@ buildRustPackage {
homepage = "https://github.com/xcambar/purs"; homepage = "https://github.com/xcambar/purs";
maintainers = [ maintainers.nrdxp ]; maintainers = [ maintainers.nrdxp ];
license = licenses.mit; license = licenses.mit;
platforms = platforms.unix;
inherit version; inherit version;
}; };
} }