Compare commits
4 Commits
a13cd3a690
...
8a1ec3911e
Author | SHA1 | Date | |
---|---|---|---|
8a1ec3911e | |||
daf5f1be08 | |||
8bfb043fed | |||
4ce363374e |
@ -2,6 +2,7 @@ nixfiles: final: prev:
|
||||
let
|
||||
inherit (prev) callPackage fetchFromGitHub;
|
||||
inherit (prev.lib) recurseIntoAttrs optionalAttrs;
|
||||
isNewer = ref: ver: (builtins.compareVersions ver ref) == 1;
|
||||
|
||||
# if you can't do version based just make it time based and deal with it in a
|
||||
# month if it's not fixed
|
||||
@ -15,4 +16,10 @@ let
|
||||
hash="sha256-oat4TwOorFevUMZdBFgaQHx/UKqGW7CGMoOHVgQxVdM=";
|
||||
};
|
||||
in recurseIntoAttrs (callPackage "${src}/pkgs/applications/graphics/gimp/plugins" {});
|
||||
in (optionalAttrs gap-hold { gimpPlugins = gimpPlugins-gap; })
|
||||
in (optionalAttrs gap-hold { gimpPlugins = gimpPlugins-gap; }) //
|
||||
# can't optionalAttrs for version checks because it breaks lazy eval and causes infinite recursion
|
||||
{
|
||||
obsidian = let
|
||||
pkg = final.callPackage "${nixfiles.inputs.nixpkgs-unstable}/pkgs/applications/misc/obsidian" { electron = final.electron_28; };
|
||||
in if isNewer "1.4.16" prev.obsidian.version then prev.obsidian else pkg;
|
||||
}
|
||||
|
17
flake.lock
generated
17
flake.lock
generated
@ -417,6 +417,22 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-staging-next": {
|
||||
"locked": {
|
||||
"lastModified": 1711735267,
|
||||
"narHash": "sha256-Zj44dQ38cqN3NddIE/eA8t36eAKv0SVoMZPK8FF1pQ0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "1149e1edb772e5f8e87d1a9be91bc34795fdafe8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "staging-next",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1711593151,
|
||||
@ -477,6 +493,7 @@
|
||||
"nix-wsl": "nix-wsl",
|
||||
"nixfiles-assets": "nixfiles-assets",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-staging-next": "nixpkgs-staging-next",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"pkg-android-tools": "pkg-android-tools",
|
||||
"rust-overlay": "rust-overlay",
|
||||
|
14
flake.nix
14
flake.nix
@ -6,6 +6,8 @@
|
||||
# ^^^^^^^^^^^^^ this part is optional
|
||||
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
|
||||
nixpkgs-staging-next.url = "github:NixOS/nixpkgs/staging-next";
|
||||
|
||||
# this seems to be a popular way to declare systems
|
||||
systems.url = "github:nix-systems/default";
|
||||
|
||||
@ -286,24 +288,18 @@
|
||||
|
||||
nixosConfigurations = {
|
||||
slab = mkSystem {
|
||||
nixpkgs = inputs.nixpkgs-unstable;
|
||||
home-manager = inputs.home-manager-unstable;
|
||||
system = "x86_64-linux";
|
||||
hostname = "slab";
|
||||
stateVersion = "23.11";
|
||||
};
|
||||
|
||||
nullbox = mkSystem {
|
||||
nixpkgs = inputs.nixpkgs-unstable;
|
||||
home-manager = inputs.home-manager-unstable;
|
||||
system = "x86_64-linux";
|
||||
hostname = "nullbox";
|
||||
stateVersion = "23.11";
|
||||
};
|
||||
|
||||
nixos-wsl = mkWSLSystem {
|
||||
nixpkgs = inputs.nixpkgs-unstable;
|
||||
home-manager = inputs.home-manager-unstable;
|
||||
system = "x86_64-linux";
|
||||
stateVersion = "23.11";
|
||||
hostname = "nixos-wsl";
|
||||
@ -314,16 +310,12 @@
|
||||
"nullbite@rpi4" = mkHome {
|
||||
system = "aarch64-linux";
|
||||
stateVersion = "23.11";
|
||||
nixpkgs = inputs.nixpkgs-unstable;
|
||||
home-manager = inputs.home-manager-unstable;
|
||||
};
|
||||
"testuser" = mkHome {
|
||||
username = "testuser";
|
||||
system = "x86_64-linux";
|
||||
modules = [ ./users/testuser/home.nix ];
|
||||
stateVersion = "23.11";
|
||||
nixpkgs = inputs.nixpkgs-unstable;
|
||||
home-manager = inputs.home-manager-unstable;
|
||||
};
|
||||
"nix-on-droid" = mkHome {
|
||||
username = "nix-on-droid";
|
||||
@ -331,8 +323,6 @@
|
||||
modules = [ ./users/nix-on-droid/home.nix ];
|
||||
system = "aarch64-linux";
|
||||
stateVersion = "23.11";
|
||||
nixpkgs = inputs.nixpkgs-unstable;
|
||||
home-manager = inputs.home-manager-unstable;
|
||||
};
|
||||
};
|
||||
}; # end outputs
|
||||
|
@ -12,7 +12,7 @@
|
||||
networking.networkmanager.enable = false;
|
||||
programs.gnupg.agent = {
|
||||
enable = true;
|
||||
pinentryPackage = pkgs.pinentry-qt;
|
||||
pinentryFlavor = "qt";
|
||||
};
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
|
@ -59,7 +59,6 @@
|
||||
common.remoteAccess.enable = true;
|
||||
sessions.plasma.enable = lib.mkDefault false;
|
||||
sessions.hyprland.enable = lib.mkDefault true;
|
||||
sessions.hyprland.useFlake = true;
|
||||
hardware.nvidia.modesetting.enable = true;
|
||||
packageSets.gaming.enable = true;
|
||||
};
|
||||
|
@ -54,7 +54,6 @@
|
||||
fun.enable = true;
|
||||
};
|
||||
sessions.hyprland.enable = lib.mkDefault true;
|
||||
sessions.hyprland.useFlake = true;
|
||||
sessions.plasma.enable = lib.mkDefault false;
|
||||
programs = {
|
||||
adb.enable = true;
|
||||
|
@ -2,8 +2,22 @@
|
||||
let
|
||||
p5 = config.services.xserver.desktopManager.plasma5.enable;
|
||||
p6 = config.services.desktopManager.plasma6.enable;
|
||||
|
||||
isNewer = ref: ver: ((builtins.compareVersions ver ref) == 1);
|
||||
|
||||
# kernel update
|
||||
newKernelPackages = let
|
||||
pkgs-new = import inputs.nixpkgs-staging-next { inherit (pkgs) system; config.allowUnfree = true; };
|
||||
in pkgs-new.linuxPackages_latest;
|
||||
in
|
||||
{
|
||||
config = lib.mkMerge [
|
||||
{
|
||||
boot.kernelPackages = newKernelPackages;
|
||||
assertions = [
|
||||
{ assertion = (!(isNewer "6.8" nixpkgs.legacyPackages.${pkgs.system}.linuxPackages.kernel.version));
|
||||
message = "Kernel is no longer outdated. Please remove this."; }
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ in
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
networking.networkmanager.dns = "none";
|
||||
networking.networkmanager.dns = lib.mkDefault "none";
|
||||
services.unbound = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
@ -12,7 +12,14 @@ in
|
||||
|
||||
options.nixfiles.sessions.hyprland = {
|
||||
enable = lib.mkEnableOption "hyprland configuration";
|
||||
useFlake = lib.mkEnableOption "hyprland flake package";
|
||||
useFlake = lib.mkOption {
|
||||
description = "Whether to use the Hyprland flake package";
|
||||
type = lib.types.bool;
|
||||
# enable if not on nixpkgs stable
|
||||
defaultText = "config.nixfiles.nixpkgs != inputs.nixpkgs";
|
||||
default = config.nixfiles.nixpkgs != inputs.nixpkgs;
|
||||
example = true;
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
Loading…
x
Reference in New Issue
Block a user