I think my flake needs a complete rewrite
This commit is contained in:
parent
87fbcda3d3
commit
65f90a0bf3
36
flake.lock
36
flake.lock
|
@ -333,22 +333,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1727348695,
|
|
||||||
"narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=",
|
|
||||||
"owner": "nixos",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "1925c603f17fc89f4c8f6bf6f631a802ad85d784",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nixos",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717602782,
|
"lastModified": 1717602782,
|
||||||
|
@ -447,8 +431,8 @@
|
||||||
"mailserver": "mailserver",
|
"mailserver": "mailserver",
|
||||||
"minecraft": "minecraft",
|
"minecraft": "minecraft",
|
||||||
"nixpkgs": "nixpkgs_4",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nur": "nur",
|
||||||
"nur": "nur"
|
"unstable": "unstable"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-overlay": {
|
"rust-overlay": {
|
||||||
|
@ -521,6 +505,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"unstable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1728492678,
|
||||||
|
"narHash": "sha256-9UTxR8eukdg+XZeHgxW5hQA9fIKHsKCdOIUycTryeVw=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "5633bcff0c6162b9e4b5f1264264611e950c8ec7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"utils": {
|
"utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_2"
|
||||||
|
|
105
flake.nix
105
flake.nix
|
@ -1,6 +1,5 @@
|
||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
# Nixpkgs
|
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||||
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
nur.url = "github:nix-community/NUR";
|
nur.url = "github:nix-community/NUR";
|
||||||
|
@ -29,6 +28,7 @@
|
||||||
nur,
|
nur,
|
||||||
mailserver,
|
mailserver,
|
||||||
blender-bin,
|
blender-bin,
|
||||||
|
minecraft,
|
||||||
hardware,
|
hardware,
|
||||||
lanzaboote,
|
lanzaboote,
|
||||||
home-manager,
|
home-manager,
|
||||||
|
@ -36,7 +36,7 @@
|
||||||
} @inputs:
|
} @inputs:
|
||||||
let
|
let
|
||||||
channels = {
|
channels = {
|
||||||
master = import nixpkgs {
|
stable = import nixpkgs {
|
||||||
inherit (flake) system overlays;
|
inherit (flake) system overlays;
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
};
|
};
|
||||||
|
@ -51,93 +51,82 @@
|
||||||
(import ./overlays/mpv { inherit (self) inputs channels; })
|
(import ./overlays/mpv { inherit (self) inputs channels; })
|
||||||
];
|
];
|
||||||
packages = import ./packages/default.nix { inherit (nix) pkgs; };
|
packages = import ./packages/default.nix { inherit (nix) pkgs; };
|
||||||
|
};
|
||||||
|
|
||||||
|
nix = rec {
|
||||||
|
pkgs = channels.stable // flake.packages;
|
||||||
|
inherit (pkgs) lib;
|
||||||
|
inherit (flake) channels-config;
|
||||||
|
};
|
||||||
|
|
||||||
|
mkNixos = modules: nixpkgs.lib.nixosSystem {
|
||||||
|
inherit (nix) pkgs;
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = {
|
||||||
|
inherit
|
||||||
|
inputs
|
||||||
|
;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
mkHome = modules: pkgs: home-manager.lib.homeManagerConfiguration {
|
||||||
|
inherit (nix) pkgs;
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
# Variables defined globally
|
||||||
secrets = import ./extras/secrets.nix;
|
secrets = import ./extras/secrets.nix;
|
||||||
cmd = import ./extras/cmd.nix;
|
cmd = import ./extras/cmd.nix;
|
||||||
displays = import ./extras/displays.nix;
|
displays = import ./extras/displays.nix;
|
||||||
ips = import ./extras/ips.nix;
|
ips = import ./extras/ips.nix;
|
||||||
look = import ./extras/look.nix;
|
look = import ./extras/look.nix;
|
||||||
ws = import ./extras/workspaces.nix;
|
ws = import ./extras/workspaces.nix;
|
||||||
};
|
|
||||||
|
|
||||||
nix = rec {
|
|
||||||
pkgs = channels.master // flake.packages;
|
|
||||||
inherit (pkgs) lib;
|
|
||||||
inherit (flake) channels-config;
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
# NixOS config entrypoint, use 'nixos-rebuild --flake .#your-hostname'
|
# NixOS config entrypoint, use 'nixos-rebuild --flake .#your-hostname'
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
JimDesktop = nixpkgs.lib.nixosSystem {
|
firefly = mkNixos [
|
||||||
inherit (nix) pkgs;
|
./modules/system/hardware/firefly
|
||||||
specialArgs = { inherit inputs outputs; };
|
./modules/system
|
||||||
modules = [
|
./modules/system/desktop
|
||||||
./system/hosts/JimDesktop/configuration.nix
|
./modules/system/devices
|
||||||
|
./modules/system/programs
|
||||||
|
./modules/system/services/ssh
|
||||||
|
./modules/system/services/sunshine
|
||||||
|
./modules/system/services/networkfs
|
||||||
|
./modules/system/services/virtualization
|
||||||
lanzaboote.nixosModules.lanzaboote
|
lanzaboote.nixosModules.lanzaboote
|
||||||
];
|
];
|
||||||
};
|
JimServer = mkNixos [
|
||||||
JimServer = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = { inherit inputs outputs; };
|
|
||||||
modules = [
|
|
||||||
./system/hosts/JimServer/configuration.nix
|
./system/hosts/JimServer/configuration.nix
|
||||||
mailserver.nixosModule
|
mailserver.nixosModule
|
||||||
];
|
];
|
||||||
};
|
JimPine = mkNixos [
|
||||||
JimPine = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = { inherit inputs outputs; };
|
|
||||||
modules = [
|
|
||||||
./system/hosts/JimPine/configuration.nix
|
./system/hosts/JimPine/configuration.nix
|
||||||
hardware.nixosModules.pine64-pinebook-pro
|
hardware.nixosModules.pine64-pinebook-pro
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
JimLenovo = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = { inherit inputs outputs; };
|
|
||||||
modules = [
|
|
||||||
./system/hosts/JimLenovo/configuration.nix
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Home-manager configuration, use 'home-manager --flake .#your-username@your-hostname'
|
# Home-manager configuration, use 'home-manager --flake .#your-username@your-hostname'
|
||||||
homeConfigurations = {
|
homeConfigurations = {
|
||||||
"jimbo@JimDesktop" = home-manager.lib.homeManagerConfiguration {
|
"jimbo@JimDesktop" = mkHome [
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
./modules/home
|
||||||
extraSpecialArgs = { inherit inputs outputs; };
|
./modules/home/files
|
||||||
modules = [
|
./modules/home/programs
|
||||||
./home/hosts/JimDesktop/home.nix
|
./modules/home/settings
|
||||||
|
./modules/home/sway
|
||||||
|
./modules/home/utils
|
||||||
nur.nixosModules.nur
|
nur.nixosModules.nur
|
||||||
];
|
];
|
||||||
};
|
"jimbo@JimServer" = mkHome [
|
||||||
"jimbo@JimServer" = home-manager.lib.homeManagerConfiguration {
|
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
||||||
extraSpecialArgs = { inherit inputs outputs; };
|
|
||||||
modules = [
|
|
||||||
./home/hosts/JimServer/home.nix
|
./home/hosts/JimServer/home.nix
|
||||||
];
|
];
|
||||||
};
|
"jimbo@JimPine" = mkHome [
|
||||||
"jimbo@JimPine" = home-manager.lib.homeManagerConfiguration {
|
|
||||||
pkgs = nixpkgs.legacyPackages.aarch64-linux;
|
|
||||||
extraSpecialArgs = { inherit inputs outputs; };
|
|
||||||
modules = [
|
|
||||||
./home/hosts/JimPine/home.nix
|
./home/hosts/JimPine/home.nix
|
||||||
nur.nixosModules.nur
|
nur.nixosModules.nur
|
||||||
];
|
];
|
||||||
};
|
|
||||||
"jimbo@JimLenovo" = home-manager.lib.homeManagerConfiguration {
|
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
||||||
extraSpecialArgs = { inherit inputs outputs; };
|
|
||||||
modules = [
|
|
||||||
./home/hosts/JimLenovo/home.nix
|
|
||||||
nur.nixosModules.nur
|
|
||||||
];
|
|
||||||
};
|
|
||||||
# Derivation for ssh envrionments on other people's servers
|
# Derivation for ssh envrionments on other people's servers
|
||||||
"jimbo@JimTerminal" = home-manager.lib.homeManagerConfiguration {
|
"jimbo@JimTerminal" = mkHome [
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
||||||
extraSpecialArgs = { inherit inputs outputs; };
|
|
||||||
modules = [
|
|
||||||
./home/hosts/JimTerminal/home.nix
|
./home/hosts/JimTerminal/home.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./dconf
|
./dconf
|
||||||
|
./fonts
|
||||||
./gtk
|
./gtk
|
||||||
./xdg
|
./xdg
|
||||||
];
|
];
|
||||||
|
|
19
modules/home/settings/fonts/default.nix
Normal file
19
modules/home/settings/fonts/default.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{ pkgs, ... }: {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
liberation_ttf
|
||||||
|
twitter-color-emoji
|
||||||
|
noto-fonts
|
||||||
|
sarasa-gothic
|
||||||
|
ubuntu_font_family
|
||||||
|
(nerdfonts.override { fonts = [ "UbuntuMono" ]; })
|
||||||
|
];
|
||||||
|
|
||||||
|
fonts.fontconfig = {
|
||||||
|
enable = true;
|
||||||
|
defaultFonts = {
|
||||||
|
sansSerif = [ "Ubuntu" ];
|
||||||
|
monospace = [ "UbuntuMono Nerd Font Mono" ];
|
||||||
|
emoji = [ "Twitter Color Emoji" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -31,5 +31,10 @@
|
||||||
info.enable = false;
|
info.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
console = {
|
||||||
|
font = "${pkgs.terminus_font}/share/consolefonts/ter-u22n.psf.gz";
|
||||||
|
packages = with pkgs; [ terminus_font ];
|
||||||
|
};
|
||||||
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,5 +4,6 @@
|
||||||
./qt
|
./qt
|
||||||
./wayland
|
./wayland
|
||||||
./sway
|
./sway
|
||||||
|
./fonts
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
{ pkgs, ... }: {
|
|
||||||
fonts = {
|
|
||||||
packages = with pkgs; [
|
|
||||||
liberation_ttf
|
|
||||||
twitter-color-emoji
|
|
||||||
noto-fonts
|
|
||||||
sarasa-gothic
|
|
||||||
ubuntu_font_family
|
|
||||||
(nerdfonts.override {
|
|
||||||
fonts = [
|
|
||||||
"UbuntuMono"
|
|
||||||
];
|
|
||||||
})
|
|
||||||
];
|
|
||||||
fontconfig.defaultFonts.emoji = [
|
|
||||||
"Twitter Color Emoji"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
console = {
|
|
||||||
font = "${pkgs.terminus_font}/share/consolefonts/ter-u22n.psf.gz";
|
|
||||||
packages = with pkgs; [ terminus_font ];
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,6 +0,0 @@
|
||||||
{ ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./qemu
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
self: super: {
|
(self: super: {
|
||||||
mpv = super.mpv.override {
|
mpv = super.mpv.override {
|
||||||
scripts = with self.mpvScripts; [
|
scripts = with self.mpvScripts; [
|
||||||
mpris
|
mpris
|
||||||
|
@ -7,4 +7,4 @@ self: super: {
|
||||||
thumbnail
|
thumbnail
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
Loading…
Reference in a new issue