Refactor flake, update inputs
This commit is contained in:
parent
51480849e2
commit
2e58706000
20
flake.lock
20
flake.lock
|
@ -17,18 +17,16 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1679048363,
|
||||
"narHash": "sha256-afY4G9yA0MD/wxfAd7kks2yaCUOMuDtiwecDYIVxYfY=",
|
||||
"owner": "nixos",
|
||||
"lastModified": 1647199004,
|
||||
"narHash": "sha256-37aHbLhcX6zqeru24AoPPfem6fUQ6are5E38NdbIgJg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "2766f77c32e171a04d59b636a91083bae862274e",
|
||||
"rev": "328bd3c30e4fc4c3d69bc08516f27e8d85f839b6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "release-21.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
"id": "nixpkgs",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
|
@ -58,11 +56,11 @@
|
|||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1630548746,
|
||||
"narHash": "sha256-SLzeWhEN0kRDTzL+AHfDxwbYEZm09UEcdIcPDdOIZew=",
|
||||
"lastModified": 1647224709,
|
||||
"narHash": "sha256-Lt8Vo2eRahkww3Ia7AyxAiKCf59TW0OWZ9vKd5WvAJ4=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "00f6332f8c690480c7b7137fb8b1f069e7b2e18a",
|
||||
"rev": "fea74aea1b2b99e13338a345034089a344399359",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
71
flake.nix
71
flake.nix
|
@ -3,39 +3,48 @@
|
|||
|
||||
inputs.rust.url = "github:oxalica/rust-overlay";
|
||||
|
||||
inputs.nixpkgs.url = "github:nixos/nixpkgs/release-21.11";
|
||||
outputs = { self, nixpkgs, rust }: {
|
||||
lib = nixpkgs.lib.extend (import ./lib.nix);
|
||||
|
||||
outputs = { self, nixpkgs, rust }:
|
||||
let
|
||||
forEachSystem = nixpkgs.lib.genAttrs [ "aarch64-linux" "x86_64-linux" ];
|
||||
libOverlay = import ./lib.nix;
|
||||
in {
|
||||
lib = nixpkgs.lib.extend libOverlay;
|
||||
overlays.default = final: prev:
|
||||
let rust' = (prev.extend rust.overlay).rust-bin.nightly.latest.default;
|
||||
in {
|
||||
inherit (self) lib;
|
||||
|
||||
overlay = final: prev:
|
||||
let rust' = (prev.extend rust.overlay).rust-bin.nightly.latest.default;
|
||||
in {
|
||||
lib = prev.lib.extend libOverlay;
|
||||
preserves-nim = final.callPackage ./preserves-nim { };
|
||||
preserves-tools =
|
||||
final.callPackage ./preserves-tools { rust = rust'; };
|
||||
syndicate-server =
|
||||
final.callPackage ./syndicate-server { rust = rust'; };
|
||||
};
|
||||
|
||||
packages = forEachSystem (system:
|
||||
let pkgs = nixpkgs.legacyPackages.${system}.extend self.overlay;
|
||||
in with pkgs; {
|
||||
inherit preserves-nim preserves-tools syndicate-server;
|
||||
nimPackages = prev.nimPackages.overrideScope' (final': prev': {
|
||||
preserves = final'.callPackage ./preserves-nim { };
|
||||
});
|
||||
|
||||
nixosModules.syndicate-server =
|
||||
# A little hack to apply our overlay to this module only.
|
||||
let f = import ./nixos/syndicate-server.nix;
|
||||
in { config, lib, pkgs, ... }:
|
||||
f {
|
||||
inherit config lib;
|
||||
pkgs = pkgs.extend self.overlay;
|
||||
};
|
||||
};
|
||||
preserves-tools = final.callPackage ./preserves-tools { rust = rust'; };
|
||||
syndicate-server =
|
||||
final.callPackage ./syndicate-server { rust = rust'; };
|
||||
};
|
||||
|
||||
legacyPackages =
|
||||
self.lib.mapAttrs (system: pkgs: pkgs.extend self.overlays.default) {
|
||||
inherit (nixpkgs.legacyPackages) aarch64-linux x86_64-linux;
|
||||
};
|
||||
|
||||
packages = self.lib.mapAttrs (system: pkgs:
|
||||
with pkgs; {
|
||||
inherit preserves-tools syndicate-server;
|
||||
preserves-nim = nimPackages.preserves;
|
||||
}) self.legacyPackages;
|
||||
|
||||
nixosModules.syndicate-server =
|
||||
# A little hack to apply our overlay to this module only.
|
||||
let f = import ./nixos/syndicate-server.nix;
|
||||
in { config, lib, pkgs, ... }:
|
||||
f {
|
||||
inherit config lib;
|
||||
pkgs = pkgs.extend self.overlays.default;
|
||||
};
|
||||
|
||||
devShells = self.lib.mapAttrs (system: pkgs:
|
||||
with pkgs; {
|
||||
default =
|
||||
mkShell { packages = builtins.attrValues self.packages.${system}; };
|
||||
}) self.legacyPackages;
|
||||
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue