feat: add unstable nixpkgs overlay

This commit is contained in:
Julien Hémono 2024-08-07 19:01:00 +02:00
parent fcf66bf672
commit c4be4abdeb
4 changed files with 39 additions and 3 deletions

17
flake.lock generated
View file

@ -90,11 +90,28 @@
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1722813957,
"narHash": "sha256-IAoYyYnED7P8zrBFMnmp7ydaJfwTnwcnqxUElC1I26Y=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "cb9a96f23c491c081b38eab96d22fa958043c9fa",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"mysecrets": "mysecrets",
"nix-vscode-extensions": "nix-vscode-extensions",
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
"sops-nix": "sops-nix"
}
},

View file

@ -3,6 +3,7 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
# Secrets management
sops-nix = {
@ -27,7 +28,13 @@
};
};
outputs = { self, nixpkgs, ... }@inputs: {
outputs = { self, nixpkgs, ... }@inputs: let
inherit (self) outputs;
in {
# Custom packages and modifications, exported as overlays
overlays = import ./overlays {inherit inputs;};
nixosConfigurations = {
sesame = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
@ -37,7 +44,7 @@
];
};
gwiad = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
specialArgs = {inherit inputs outputs;};
modules = [
./hosts/gwiad/configuration.nix
# inputs.home-manager.nixosModules.default

View file

@ -2,7 +2,7 @@
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ config, lib, pkgs, inputs, ... }:
{ config, lib, pkgs, inputs, outputs, ... }:
{
imports =
@ -43,6 +43,7 @@
config.allowUnfree = true;
overlays = [
inputs.nix-vscode-extensions.overlays.default
outputs.overlays.unstable-packages
];
};

11
overlays/default.nix Normal file
View file

@ -0,0 +1,11 @@
# This file defines overlays
{inputs, ...}: {
# When applied, the unstable nixpkgs set (declared in the flake inputs) will
# be accessible through 'pkgs.unstable'
unstable-packages = final: _prev: {
unstable = import inputs.nixpkgs-unstable {
system = final.system;
config.allowUnfree = true;
};
};
}