This commit is contained in:
twoneis 2025-02-28 19:32:44 +01:00
parent 42d04f49fe
commit 606e382083
53 changed files with 1319 additions and 967 deletions

View file

@ -1,5 +1,4 @@
{ pkgs, ... }: {pkgs, ...}: {
{
imports = [ imports = [
./options.nix ./options.nix
./disko.nix ./disko.nix
@ -24,5 +23,4 @@
}; };
}; };
}; };
} }

View file

@ -1,4 +1,8 @@
{ lib, pkgs, ... }: let {
lib,
pkgs,
...
}: let
inherit (lib) mkDefault; inherit (lib) mkDefault;
in { in {
imports = [ imports = [

View file

@ -55,4 +55,3 @@
}; };
}; };
} }

79
flake.lock generated
View file

@ -1,5 +1,28 @@
{ {
"nodes": { "nodes": {
"alejandra": {
"inputs": {
"fenix": "fenix",
"flakeCompat": "flakeCompat",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1730688725,
"narHash": "sha256-g0SSfTWZ5mtMOpQic+eqq9sXMy1E/7yKxxfupZd9V4A=",
"owner": "kamadorueda",
"repo": "alejandra",
"rev": "2bb91e309ca99656addff5c74545acbf5813636d",
"type": "github"
},
"original": {
"owner": "kamadorueda",
"ref": "3.1.0",
"repo": "alejandra",
"type": "github"
}
},
"crane": { "crane": {
"locked": { "locked": {
"lastModified": 1731098351, "lastModified": 1731098351,
@ -36,6 +59,28 @@
"type": "github" "type": "github"
} }
}, },
"fenix": {
"inputs": {
"nixpkgs": [
"alejandra",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1730615655,
"narHash": "sha256-2HBR3zLn57LXKNRtxBb+O+uDqHM4n0pz51rPayMl4cg=",
"owner": "nix-community",
"repo": "fenix",
"rev": "efeb50e2535b17ffd4a135e6e3e5fd60a525180c",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -109,6 +154,22 @@
"type": "github" "type": "github"
} }
}, },
"flakeCompat": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"gitignore": { "gitignore": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -420,6 +481,7 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"alejandra": "alejandra",
"disko": "disko", "disko": "disko",
"home-manager": "home-manager", "home-manager": "home-manager",
"lanzaboote": "lanzaboote", "lanzaboote": "lanzaboote",
@ -430,6 +492,23 @@
"nur": "nur" "nur": "nur"
} }
}, },
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1730555913,
"narHash": "sha256-KNHZUlqsEibg3YtfUyOFQSofP8hp1HKoY+laoesBxRM=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "f17a5bbfd0969ba2e63a74505a80e55ecb174ed9",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"rust-overlay": { "rust-overlay": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [

View file

@ -9,6 +9,11 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
alejandra = {
url = "github:kamadorueda/alejandra/3.1.0";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-hardware = { nixos-hardware = {
url = "github:nixos/nixos-hardware"; url = "github:nixos/nixos-hardware";
}; };

View file

@ -1,7 +1,12 @@
{ config, lib, ... }: let {
config,
lib,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.apps.enable { in
mkIf conf.apps.enable {
programs.adb.enable = true; programs.adb.enable = true;
users.users.${conf.username}.extraGroups = ["adbusers"]; users.users.${conf.username}.extraGroups = ["adbusers"];
} }

View file

@ -1,4 +1,9 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf mkForce; inherit (lib) mkIf mkForce;
inherit (config) conf; inherit (config) conf;
in { in {

View file

@ -1,7 +1,13 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.apps.enable { in
mkIf conf.apps.enable {
home-manager.users.${conf.username} = { home-manager.users.${conf.username} = {
programs.firefox = { programs.firefox = {
enable = true; enable = true;
@ -19,81 +25,139 @@ in mkIf conf.apps.enable {
"Bing".metaData.hidden = true; "Bing".metaData.hidden = true;
"Wikipedia (en)".metaData.hidden = true; "Wikipedia (en)".metaData.hidden = true;
"DuckDuckGoo" = { "DuckDuckGoo" = {
urls = [{ urls = [
{
template = "https://duckduckgo.com/"; template = "https://duckduckgo.com/";
params = [ params = [
{ name = "q"; value = "{searchTerms}"; } {
name = "q";
value = "{searchTerms}";
}
];
}
]; ];
}];
definedAliases = ["@ddg"]; definedAliases = ["@ddg"];
}; };
"Googlee" = { "Googlee" = {
urls = [{ urls = [
{
template = "https://google.com/search"; template = "https://google.com/search";
params = [ params = [
{ name = "q"; value = "{searchTerms}"; } {
name = "q";
value = "{searchTerms}";
}
];
}
]; ];
}];
definedAliases = ["@g"]; definedAliases = ["@g"];
}; };
"Wikipedia" = { "Wikipedia" = {
urls = [{ urls = [
{
template = "https://en.wikipedia.org/wiki/Special:Search"; template = "https://en.wikipedia.org/wiki/Special:Search";
params = [ params = [
{ name = "search"; value = "{searchTerms}"; } {
name = "search";
value = "{searchTerms}";
}
];
}
]; ];
}];
definedAliases = ["@wiki"]; definedAliases = ["@wiki"];
}; };
"YouTube" = { "YouTube" = {
urls = [{ urls = [
{
template = "https://youtube.com/results"; template = "https://youtube.com/results";
params = [ params = [
{ name = "search_query"; value = "{searchTerms}"; } {
name = "search_query";
value = "{searchTerms}";
}
];
}
]; ];
}];
definedAliases = ["@yt"]; definedAliases = ["@yt"];
}; };
"Nix Packages" = { "Nix Packages" = {
urls = [{ urls = [
{
template = "https://search.nixos.org/packages"; template = "https://search.nixos.org/packages";
params = [ params = [
{ name = "channel"; value = "unstable"; } {
{ name = "type"; value = "packages"; } name = "channel";
{ name = "query"; value = "{searchTerms}"; } value = "unstable";
}
{
name = "type";
value = "packages";
}
{
name = "query";
value = "{searchTerms}";
}
];
}
]; ];
}];
definedAliases = ["@np"]; definedAliases = ["@np"];
}; };
"Nix Options" = { "Nix Options" = {
urls = [{ urls = [
{
template = "https://search.nixos.org/options"; template = "https://search.nixos.org/options";
params = [ params = [
{ name = "channel"; value = "unstable"; } {
{ name = "type"; value = "packages"; } name = "channel";
{ name = "query"; value = "{searchTerms}"; } value = "unstable";
}
{
name = "type";
value = "packages";
}
{
name = "query";
value = "{searchTerms}";
}
];
}
]; ];
}];
definedAliases = ["@no"]; definedAliases = ["@no"];
}; };
"Arch Wiki" = { "Arch Wiki" = {
urls = [{ urls = [
{
template = "https://wiki.archlinux.org/index.php"; template = "https://wiki.archlinux.org/index.php";
params = [ params = [
{ name = "search"; value = "{searchTerms}"; } {
{ name = "fulltext"; value = "1"; } name = "search";
value = "{searchTerms}";
}
{
name = "fulltext";
value = "1";
}
];
}
]; ];
}];
definedAliases = ["@aw"]; definedAliases = ["@aw"];
}; };
"Github" = { "Github" = {
urls = [{ urls = [
{
template = "https://github.com/search"; template = "https://github.com/search";
params = [ params = [
{ name = "q"; value = "{searchTerms}"; } {
{ name = "type"; value = "repositories"; } name = "q";
value = "{searchTerms}";
}
{
name = "type";
value = "repositories";
}
];
}
]; ];
}];
definedAliases = ["@gh"]; definedAliases = ["@gh"];
}; };
}; };

View file

@ -1,8 +1,13 @@
{ config, lib, pkgs, ... }: let {
config,
lib,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.apps.enable { in
mkIf conf.apps.enable {
home-manager.users.${conf.username} = { home-manager.users.${conf.username} = {
home.packages = with pkgs; [ home.packages = with pkgs; [
loupe loupe

View file

@ -1,8 +1,14 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
inherit (config.conf) keys; inherit (config.conf) keys;
in mkIf conf.apps.enable { in
mkIf conf.apps.enable {
home-manager.users.${conf.username} = { home-manager.users.${conf.username} = {
home.packages = with pkgs; [ home.packages = with pkgs; [
rnote rnote

View file

@ -1,4 +1,9 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
mkXwlWrapper = import ../niri/xwl-wrapper.nix; mkXwlWrapper = import ../niri/xwl-wrapper.nix;
@ -7,14 +12,16 @@
desktopName = "Time"; desktopName = "Time";
exec = "alacritty -e ${pkgs.peaclock}/bin/peaclock"; exec = "alacritty -e ${pkgs.peaclock}/bin/peaclock";
}; };
in mkIf conf.apps.enable { in
mkIf conf.apps.enable {
services = { services = {
# Needed for some features in nautilus such as auto-mounting and trash # Needed for some features in nautilus such as auto-mounting and trash
gvfs.enable = true; gvfs.enable = true;
}; };
home-manager.users.${conf.username} = { home-manager.users.${conf.username} = {
home.packages = with pkgs; [ home.packages = with pkgs;
[
signal-desktop signal-desktop
vesktop vesktop
snapshot snapshot
@ -31,10 +38,19 @@ in mkIf conf.apps.enable {
peaclock peaclock
fractal fractal
element-desktop element-desktop
] ++ [ ]
++ [
time time
(mkXwlWrapper { pkgs = pkgs; name = "Prusa"; pkg = "prusa-slicer"; }) (mkXwlWrapper {
(mkXwlWrapper { pkgs = pkgs; name = "Vial"; pkg = "vial"; }) pkgs = pkgs;
name = "Prusa";
pkg = "prusa-slicer";
})
(mkXwlWrapper {
pkgs = pkgs;
name = "Vial";
pkg = "vial";
})
]; ];
home.file = { home.file = {

View file

@ -1,7 +1,13 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.apps.enable { in
mkIf conf.apps.enable {
home-manager.users.${conf.username} = { home-manager.users.${conf.username} = {
home.packages = with pkgs; [ home.packages = with pkgs; [
adwaita-icon-theme adwaita-icon-theme
@ -36,7 +42,8 @@ in mkIf conf.apps.enable {
}; };
}; };
home.pointerCursor = let getFrom = url: hash: name: { home.pointerCursor = let
getFrom = url: hash: name: {
gtk.enable = true; gtk.enable = true;
x11.enable = true; x11.enable = true;
name = name; name = name;
@ -48,6 +55,8 @@ in mkIf conf.apps.enable {
hash = hash; hash = hash;
}} $out/share/icons/${name} }} $out/share/icons/${name}
''; '';
}; in getFrom "https://github.com/rose-pine/cursor/releases/download/v1.1.0/BreezeX-RosePine-Linux.tar.xz" "sha256-t5xwAPGhuQUfGThedLsmtZEEp1Ljjo3Udhd5Ql3O67c=" "BreezX-RosePine-Linux"; };
in
getFrom "https://github.com/rose-pine/cursor/releases/download/v1.1.0/BreezeX-RosePine-Linux.tar.xz" "sha256-t5xwAPGhuQUfGThedLsmtZEEp1Ljjo3Udhd5Ql3O67c=" "BreezX-RosePine-Linux";
}; };
} }

View file

@ -1,7 +1,13 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.containers.enable { in
mkIf conf.containers.enable {
virtualisation.podman = { virtualisation.podman = {
enable = true; enable = true;
dockerCompat = true; dockerCompat = true;

View file

@ -1,6 +1,4 @@
{ {stdenvNoCC}:
stdenvNoCC,
}:
stdenvNoCC.mkDerivation { stdenvNoCC.mkDerivation {
pname = "blobhaj"; pname = "blobhaj";
version = "13.12.2022"; version = "13.12.2022";

View file

@ -1,6 +1,4 @@
{ {stdenvNoCC}:
stdenvNoCC,
}:
stdenvNoCC.mkDerivation { stdenvNoCC.mkDerivation {
pname = "blobhajFlags"; pname = "blobhajFlags";
version = "1.0"; version = "1.0";

View file

@ -1,13 +1,19 @@
{ lib, pkgs, config, ... }: let {
lib,
pkgs,
config,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
inherit ((pkgs.formats.elixirConf {}).lib) mkMap; inherit ((pkgs.formats.elixirConf {}).lib) mkMap;
neocat = (pkgs.callPackage ./neocat.nix { }); neocat = pkgs.callPackage ./neocat.nix {};
neofox = (pkgs.callPackage ./neofox.nix { }); neofox = pkgs.callPackage ./neofox.nix {};
blobfox = (pkgs.callPackage ./blobfox.nix { }); blobfox = pkgs.callPackage ./blobfox.nix {};
blobhaj = (pkgs.callPackage ./blobhaj.nix { }); blobhaj = pkgs.callPackage ./blobhaj.nix {};
blobhajFlags = (pkgs.callPackage ./blobhajFlags.nix { }); blobhajFlags = pkgs.callPackage ./blobhajFlags.nix {};
in mkIf conf.fedi.enable { in
mkIf conf.fedi.enable {
services.akkoma = { services.akkoma = {
enable = true; enable = true;
config = { config = {

View file

@ -1,7 +1,13 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.fonts.enable { in
mkIf conf.fonts.enable {
fonts = { fonts = {
packages = with pkgs; [ packages = with pkgs; [
alegreya alegreya

View file

@ -1,4 +1,9 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
mkXwlWrapper = import ../niri/xwl-wrapper.nix; mkXwlWrapper = import ../niri/xwl-wrapper.nix;
@ -19,7 +24,8 @@
name = "Steam Wrapped"; name = "Steam Wrapped";
pkg = "steam"; pkg = "steam";
}; };
in mkIf conf.games.enable { in
mkIf conf.games.enable {
programs.steam.enable = true; programs.steam.enable = true;
programs.gamescope.enable = true; programs.gamescope.enable = true;
programs.gamemode.enable = true; programs.gamemode.enable = true;

View file

@ -1,8 +1,13 @@
{ lib, config, ... }: let {
lib,
config,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
cfg = config.services.forgejo.settings.server; cfg = config.services.forgejo.settings.server;
in mkIf conf.git.enable { in
mkIf conf.git.enable {
services = { services = {
nginx = { nginx = {
virtualHosts.${cfg.DOMAIN} = { virtualHosts.${cfg.DOMAIN} = {

View file

@ -1,7 +1,12 @@
{ lib, config, ... }: let {
lib,
config,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config.conf) extraLayout; inherit (config.conf) extraLayout;
in mkIf extraLayout.enable { in
mkIf extraLayout.enable {
services.xserver.xkb = { services.xserver.xkb = {
layout = "custom,us"; layout = "custom,us";
options = "compose:ralt"; options = "compose:ralt";

View file

@ -1,7 +1,12 @@
{ config, lib, ... }: let {
config,
lib,
...
}: let
inherit (config) conf; inherit (config) conf;
inherit (lib) mkIf; inherit (lib) mkIf;
in mkIf conf.mail.enable { in
mkIf conf.mail.enable {
services.nginx = { services.nginx = {
virtualHosts."chpu.eu" = { virtualHosts."chpu.eu" = {
serverName = "chpu.eu"; serverName = "chpu.eu";

View file

@ -1,7 +1,12 @@
{ config, lib, ... }: let {
config,
lib,
...
}: let
inherit (config) conf; inherit (config) conf;
inherit (lib) mkIf; inherit (lib) mkIf;
in mkIf conf.matrix.enable { in
mkIf conf.matrix.enable {
services.nginx.virtualHosts = { services.nginx.virtualHosts = {
"twoneis.site" = { "twoneis.site" = {
serverName = "twoneis.site"; serverName = "twoneis.site";

View file

@ -1,15 +1,20 @@
{ config, lib, pkgs, ... }: let {
config,
lib,
pkgs,
...
}: let
inherit (config) conf; inherit (config) conf;
inherit (lib) mkIf; inherit (lib) mkIf;
in mkIf conf.networkmanager.enable { in
mkIf conf.networkmanager.enable {
home-manager.users.${conf.username}.home.packages = [pkgs.networkmanagerapplet]; home-manager.users.${conf.username}.home.packages = [pkgs.networkmanagerapplet];
networking = { networking = {
networkmanager = { networkmanager = {
enable = true; enable = true;
wifi.backend = "iwd"; wifi.backend = "iwd";
}; };
extraHosts = extraHosts = ''
''
10.10.11.245 surveillance.htb 10.10.11.245 surveillance.htb
''; '';
}; };

View file

@ -1,7 +1,12 @@
{ config, lib, ... }: let {
config,
lib,
...
}: let
inherit (config) conf; inherit (config) conf;
inherit (lib) mkIf; inherit (lib) mkIf;
in mkIf conf.nginx.enable { in
mkIf conf.nginx.enable {
security.acme = { security.acme = {
acceptTerms = true; acceptTerms = true;
defaults.email = "mira.cp.0909@gmail.com"; defaults.email = "mira.cp.0909@gmail.com";

View file

@ -1,7 +1,13 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
swayosd-style = pkgs.writeText "swayosd.css" swayosd-style =
pkgs.writeText "swayosd.css"
(import ./swayosd.css.nix {config = config;}).style; (import ./swayosd.css.nix {config = config;}).style;
in { in {
config = mkIf conf.niri.enable { config = mkIf conf.niri.enable {
@ -10,12 +16,12 @@ in {
}; };
environment.systemPackages = [ environment.systemPackages = [
(pkgs.catppuccin-sddm.override ({ (pkgs.catppuccin-sddm.override {
flavor = "mocha"; flavor = "mocha";
font = "Fira Code Nerd Font"; font = "Fira Code Nerd Font";
background = "${./sddm.wallpaper.png}"; background = "${./sddm.wallpaper.png}";
loginBackground = true; loginBackground = true;
})) })
]; ];
services.displayManager.sddm = { services.displayManager.sddm = {
@ -55,12 +61,18 @@ in {
}; };
programs.niri = { programs.niri = {
settings = import ./niri.conf.nix { lib = lib; config = config; }; settings = import ./niri.conf.nix {
lib = lib;
config = config;
};
}; };
programs.fuzzel = { programs.fuzzel = {
enable = true; enable = true;
settings = import ./fuzzel.conf.nix { lib = lib; config = config; }; settings = import ./fuzzel.conf.nix {
lib = lib;
config = config;
};
}; };
programs.waybar = { programs.waybar = {
@ -71,10 +83,13 @@ in {
programs.swaylock = { programs.swaylock = {
enable = true; enable = true;
package = (pkgs.swaylock-effects.overrideAttrs (final: prev: { package = pkgs.swaylock-effects.overrideAttrs (final: prev: {
buildInputs = prev.buildInputs ++ [pkgs.wayland-scanner]; buildInputs = prev.buildInputs ++ [pkgs.wayland-scanner];
})); });
settings = import ./swaylock.conf.nix { lib = lib; config = config; }; settings = import ./swaylock.conf.nix {
lib = lib;
config = config;
};
}; };
services.mako = { services.mako = {

View file

@ -1,4 +1,8 @@
{ lib, config, ... }: let {
lib,
config,
...
}: let
inherit (lib.strings) concatStrings; inherit (lib.strings) concatStrings;
inherit (config) theme; inherit (config) theme;
in { in {

View file

@ -1,4 +1,8 @@
{ lib, config, ... }: let {
lib,
config,
...
}: let
inherit (config.conf) keys extraLayout; inherit (config.conf) keys extraLayout;
inherit (lib.attrsets) genAttrs; inherit (lib.attrsets) genAttrs;
inherit (lib) mkMerge; inherit (lib) mkMerge;
@ -6,7 +10,10 @@ in {
input = { input = {
keyboard = { keyboard = {
xkb = { xkb = {
layout = if extraLayout.enable then "custom,us" else "us"; layout =
if extraLayout.enable
then "custom,us"
else "us";
options = "compose:ralt"; options = "compose:ralt";
}; };
}; };
@ -131,30 +138,46 @@ in {
"Mod+Space".action.spawn = "fuzzel"; "Mod+Space".action.spawn = "fuzzel";
"XF86AudioRaiseVolume".action.spawn = [ "XF86AudioRaiseVolume".action.spawn = [
"swayosd-client" "--output-volume" "raise" "swayosd-client"
"--output-volume"
"raise"
]; ];
"XF86AudioLowerVolume".action.spawn = [ "XF86AudioLowerVolume".action.spawn = [
"swayosd-client" "--output-volume" "lower" "swayosd-client"
"--output-volume"
"lower"
]; ];
"XF86AudioMute".action.spawn = [ "XF86AudioMute".action.spawn = [
"swayosd-client" "--output-volume" "mute-toggle" "swayosd-client"
"--output-volume"
"mute-toggle"
]; ];
"Mod+XF86AudioRaiseVolume".action.spawn = [ "Mod+XF86AudioRaiseVolume".action.spawn = [
"swayosd-client" "--input-volume" "raise" "swayosd-client"
"--input-volume"
"raise"
]; ];
"Mod+XF86AudioLowerVolume".action.spawn = [ "Mod+XF86AudioLowerVolume".action.spawn = [
"swayosd-client" "--input-volume" "lower" "swayosd-client"
"--input-volume"
"lower"
]; ];
"Mod+XF86AudioMute".action.spawn = [ "Mod+XF86AudioMute".action.spawn = [
"swayosd-client" "--output-volume" "mute-toggle" "swayosd-client"
"--output-volume"
"mute-toggle"
]; ];
"XF86MonBrightnessDown".action.spawn = [ "XF86MonBrightnessDown".action.spawn = [
"swayosd-client" "--brightness" "lower" "swayosd-client"
"--brightness"
"lower"
]; ];
"XF86MonBrightnessUp".action.spawn = [ "XF86MonBrightnessUp".action.spawn = [
"swayosd-client" "--brightness" "raise" "swayosd-client"
"--brightness"
"raise"
]; ];
"Mod+Backspace".action.close-window = []; "Mod+Backspace".action.close-window = [];

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Before After
Before After

View file

@ -1,4 +1,8 @@
{ lib, config, ... }: let {
lib,
config,
...
}: let
inherit (lib.strings) concatStrings; inherit (lib.strings) concatStrings;
inherit (config) theme; inherit (config) theme;
in { in {

View file

@ -1,4 +1,10 @@
{ pkgs, name, pkg ? name, exe ? pkg, ... }: let {
pkgs,
name,
pkg ? name,
exe ? pkg,
...
}: let
inherit (pkgs.lib) concatStrings; inherit (pkgs.lib) concatStrings;
config = pkgs.writeTextFile { config = pkgs.writeTextFile {
name = concatStrings ["i3-config" name]; name = concatStrings ["i3-config" name];
@ -6,7 +12,8 @@
exec ${pkgs.${pkg}}/bin/${exe} exec ${pkgs.${pkg}}/bin/${exe}
''; '';
}; };
in pkgs.makeDesktopItem { in
pkgs.makeDesktopItem {
name = name; name = name;
desktopName = name; desktopName = name;
exec = "${pkgs.xwayland-run}/bin/xwayland-run -- ${pkgs.i3}/bin/i3 -c ${config}"; exec = "${pkgs.xwayland-run}/bin/xwayland-run -- ${pkgs.i3}/bin/i3 -c ${config}";

View file

@ -1,4 +1,8 @@
{ inputs, ... }: { {
pkgs,
inputs,
...
}: {
nix = { nix = {
nixPath = ["nixpkgs=${inputs.nixpkgs}"]; nixPath = ["nixpkgs=${inputs.nixpkgs}"];
gc = { gc = {
@ -22,4 +26,5 @@
allowUnfree = true; allowUnfree = true;
}; };
}; };
environment.systemPackages = [inputs.alejandra.defaultPackage.${pkgs.system}];
} }

View file

@ -1,7 +1,13 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf mkForce; inherit (lib) mkIf mkForce;
inherit (config) conf; inherit (config) conf;
in mkIf conf.secureboot.enable { in
mkIf conf.secureboot.enable {
environment.systemPackages = [pkgs.sbctl]; environment.systemPackages = [pkgs.sbctl];
boot.loader.systemd-boot.enable = mkForce false; boot.loader.systemd-boot.enable = mkForce false;

View file

@ -1,7 +1,12 @@
{ lib, config, ... }: let {
lib,
config,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.ssh.enable { in
mkIf conf.ssh.enable {
services.openssh = { services.openssh = {
enable = true; enable = true;
settings = { settings = {

View file

@ -1,4 +1,9 @@
{ config, lib, pkgs, ... }: let {
config,
lib,
pkgs,
...
}: let
inherit (config) conf; inherit (config) conf;
inherit (config.conf) keys; inherit (config.conf) keys;
inherit (lib.strings) concatMapStrings; inherit (lib.strings) concatMapStrings;
@ -77,8 +82,14 @@ in {
programs.fish = { programs.fish = {
enable = true; enable = true;
plugins = with pkgs.fishPlugins; [ plugins = with pkgs.fishPlugins; [
{ name = "pure"; src = pure.src; } {
{ name = "bass"; src = bass.src; } name = "pure";
src = pure.src;
}
{
name = "bass";
src = bass.src;
}
]; ];
interactiveShellInit = concatMapStrings (x: "set --universal " + x + "\n") [ interactiveShellInit = concatMapStrings (x: "set --universal " + x + "\n") [
"pure_enable_nixdevshell true" "pure_enable_nixdevshell true"

View file

@ -6,6 +6,10 @@
}; };
language = [{ language = [{
name = "nix";
auto-format = true;
formatter.command = "alejandra";
} {
name = "gas"; name = "gas";
scope = "source.gas"; scope = "source.gas";
auto-format = false; auto-format = false;

View file

@ -1,7 +1,13 @@
{ lib, config, pkgs, ... }: let {
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.vm.enable { in
mkIf conf.vm.enable {
virtualisation.libvirtd = { virtualisation.libvirtd = {
enable = true; enable = true;
qemu.vhostUserPackages = [pkgs.virtiofsd]; qemu.vhostUserPackages = [pkgs.virtiofsd];

View file

@ -1,7 +1,12 @@
{ lib, config, ... }: let {
lib,
config,
...
}: let
inherit (lib) mkIf; inherit (lib) mkIf;
inherit (config) conf; inherit (config) conf;
in mkIf conf.website.enable { in
mkIf conf.website.enable {
services.nginx.virtualHosts = { services.nginx.virtualHosts = {
"twoneis.site" = { "twoneis.site" = {
default = true; default = true;

View file

@ -1,4 +1,12 @@
{ nixpkgs, home-manager, nixos-hardware, disko, niri, lanzaboote, ... }@inputs: let {
nixpkgs,
home-manager,
nixos-hardware,
disko,
niri,
lanzaboote,
...
} @ inputs: let
modules = [ modules = [
./options.nix ./options.nix
./modules ./modules
@ -18,10 +26,12 @@ in {
specialArgs = { specialArgs = {
inherit inputs; inherit inputs;
}; };
modules = [ modules =
[
./devices/inkvine ./devices/inkvine
nixos-hardware.nixosModules.framework-13-7040-amd nixos-hardware.nixosModules.framework-13-7040-amd
] ++ modules; ]
++ modules;
}; };
ellaca = nixpkgs.lib.nixosSystem { ellaca = nixpkgs.lib.nixosSystem {
@ -29,9 +39,11 @@ in {
specialArgs = { specialArgs = {
inherit inputs; inherit inputs;
}; };
modules = [ modules =
[
./devices/ellaca ./devices/ellaca
] ++ modules; ]
++ modules;
}; };
}; };
} }