pkgs/overlays: create, move unstable there
also in unstable: use nixpkgs option to define if unstable nixpkgs expressions should be from nixos or nixpkgs channel (default true, use nixos channel)
This commit is contained in:
parent
3b7c1594ac
commit
88f348a2c9
2 changed files with 46 additions and 27 deletions
36
pkgs/overlays/unstable.nix
Normal file
36
pkgs/overlays/unstable.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
self: super:
|
||||
|
||||
let
|
||||
nixos = self.config.nixos or true;
|
||||
useUnstable = self.config.useUnstable or true;
|
||||
|
||||
unstablePkgsExprs = if nixos
|
||||
then builtins.fetchTarball "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
|
||||
else builtins.fetchTarball "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz";
|
||||
|
||||
# Compiled nixpkgs expression eg expressions from a nix channel
|
||||
nixpkgsVersion = builtins.concatStringsSep "." [
|
||||
(builtins.readFile "${unstablePkgsExprs}/.version")
|
||||
(builtins.readFile "${unstablePkgsExprs}/.version-suffix")
|
||||
];
|
||||
|
||||
nixpkgsRevision = (builtins.readFile "${unstablePkgsExprs}/.git-revision");
|
||||
unstablePkgsForNixpkgs = nixpkgs: import unstablePkgsExprs {
|
||||
# localSystem -> pkgs.stdenv.hostPlatform or pkgs.stdenv.hostPlatform ???
|
||||
localSystem = nixpkgs.stdenv.hostPlatform;
|
||||
# crossSystem -> nixpkgs.stdenv.targetPlatform
|
||||
crossSystem = nixpkgs.stdenv.targetPlatform;
|
||||
# config -> pkgs.config
|
||||
config = nixpkgs.config;
|
||||
# overlays -> partial of pkgs.overlays
|
||||
overlays = nixpkgs.overlays;
|
||||
# crossOverlays -> partial of pkgs.overlays
|
||||
# crossOverlays are merged to overlays, not sure what issues that might raise.
|
||||
# ignoring.
|
||||
};
|
||||
in
|
||||
{
|
||||
unstable = if useUnstable then unstablePkgsForNixpkgs self else self;
|
||||
unstableVersion = self.lib.optionalString useUnstable nixpkgsVersion;
|
||||
unstableRevision = self.lib.optionalString useUnstable nixpkgsRevision;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue