Merge branch 'main' into ags-config

This commit is contained in:
Zhongheng Liu 2024-09-19 10:25:58 +03:00
commit 1f80786864
No known key found for this signature in database
16 changed files with 324 additions and 138 deletions

View file

@ -15,6 +15,7 @@
displayScale = mkOption {type = int;}; displayScale = mkOption {type = int;};
myAutostartCommands = mkOption {type = listOf str;}; myAutostartCommands = mkOption {type = listOf str;};
myConfigLocation = mkOption {type = str;}; myConfigLocation = mkOption {type = str;};
desktopFontFullName = mkOption {type = str;};
}; };
# Default values for this configuration # Default values for this configuration
@ -30,6 +31,12 @@
"${pkgs.udiskie}/bin/udiskie" "${pkgs.udiskie}/bin/udiskie"
"${pkgs.pa-notify}/bin/pa-notify" "${pkgs.pa-notify}/bin/pa-notify"
]; ];
specialisation."powersave".configuration = {
myAutostartCommands = [
"${pkgs.brightnessctl}/bin/brightnessctl s 64"
];
};
myConfigLocation = "/home/${myUserName}/nix-conf"; myConfigLocation = "/home/${myUserName}/nix-conf";
desktopFontFullName = "BlexMono Nerd Font";
}; };
} }

168
flake.lock generated
View file

@ -189,11 +189,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722555600, "lastModified": 1726153070,
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=", "narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d", "rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -221,6 +221,24 @@
} }
}, },
"flake-utils_2": { "flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": { "inputs": {
"systems": [ "systems": [
"stylix", "stylix",
@ -241,6 +259,21 @@
"type": "github" "type": "github"
} }
}, },
"flakey-profile": {
"locked": {
"lastModified": 1712898590,
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
"owner": "lf-",
"repo": "flakey-profile",
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
"type": "github"
},
"original": {
"owner": "lf-",
"repo": "flakey-profile",
"type": "github"
}
},
"fromYaml": { "fromYaml": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -274,11 +307,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724440431, "lastModified": 1725513492,
"narHash": "sha256-9etXEOUtzeMgqg1u0wp+EdwG7RpmrAZ2yX516bMj2aE=", "narHash": "sha256-tyMUA6NgJSvvQuzB7A1Sf8+0XCHyfSPRx/b00o6K0uo=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "c8a54057aae480c56e28ef3e14e4960628ac495b", "rev": "7570de7b9b504cfe92025dd1be797bf546f66528",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -333,11 +366,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724435763, "lastModified": 1726440980,
"narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=", "narHash": "sha256-ChhIrjtdu5d83W+YDRH+Ec5g1MmM0xk6hJnkz15Ot7M=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be", "rev": "a9c9cc6e50f7cbd2d58ccb1cd46a1e06e9e445ff",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -354,11 +387,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724435763, "lastModified": 1726357542,
"narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=", "narHash": "sha256-p4OrJL2weh0TRtaeu1fmNYP6+TOp/W2qdaIJxxQay4c=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be", "rev": "e524c57b1fa55d6ca9d8354c6ce1e538d2a1f47f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -375,11 +408,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1715930644, "lastModified": 1724435763,
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=", "narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d", "rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -388,6 +421,41 @@
"type": "github" "type": "github"
} }
}, },
"lix": {
"flake": false,
"locked": {
"lastModified": 1723503926,
"narHash": "sha256-Rosl9iA9MybF5Bud4BTAQ9adbY81aGmPfV8dDBGl34s=",
"rev": "bcaeb6388b8916ac6d1736e3aa2b13313e6a6bd2",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/bcaeb6388b8916ac6d1736e3aa2b13313e6a6bd2.tar.gz?rev=bcaeb6388b8916ac6d1736e3aa2b13313e6a6bd2"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/lix/archive/2.91.0.tar.gz"
}
},
"lix-module": {
"inputs": {
"flake-utils": "flake-utils",
"flakey-profile": "flakey-profile",
"lix": "lix",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1723510904,
"narHash": "sha256-zNW/rqNJwhq2lYmQf19wJerRuNimjhxHKmzrWWFJYts=",
"rev": "622a2253a071a1fb97a4d3c8103a91114acc1140",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/622a2253a071a1fb97a4d3c8103a91114acc1140.tar.gz?rev=622a2253a071a1fb97a4d3c8103a91114acc1140"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.91.0.tar.gz"
}
},
"nix-darwin": { "nix-darwin": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -396,11 +464,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724469941, "lastModified": 1726188813,
"narHash": "sha256-+U5152FwmDD9EUOiFi5CFxCK6/yFESyDei9jEIlmUtI=", "narHash": "sha256-Vop/VRi6uCiScg/Ic+YlwsdIrLabWUJc57dNczp0eBc=",
"owner": "lnl7", "owner": "lnl7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "ea319a737939094b48fda9063fa3201ef2479aac", "rev": "21fe31f26473c180390cfa81e3ea81aca0204c80",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -411,11 +479,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1724224976, "lastModified": 1726243404,
"narHash": "sha256-Z/ELQhrSd7bMzTO8r7NZgi9g5emh+aRKoCdaAv5fiO0=", "narHash": "sha256-sjiGsMh+1cWXb53Tecsm4skyFNag33GPbVgCdfj3n9I=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c374d94f1536013ca8e92341b540eba4c22f9c62", "rev": "345c263f2f53a3710abe117f28a5cb86d0ba4059",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -427,11 +495,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1714912032, "lastModified": 1725194671,
"narHash": "sha256-clkcOIkg8G4xuJh+1onLG4HPMpbtzdLv4rHxFzgsH9c=", "narHash": "sha256-tLGCFEFTB5TaOKkpfw3iYT9dnk4awTP/q4w+ROpMfuw=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "ee4a6e0f566fe5ec79968c57a9c2c3c25f2cf41d", "rev": "b833ff01a0d694b910daca6e2ff4a3f26dee478c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -456,11 +524,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1724528976, "lastModified": 1726502324,
"narHash": "sha256-5W13nD/5ySIsxSvDqXHlj4bg2F3tNcYGKCGudWzpNzw=", "narHash": "sha256-I/WFSIBeIjlY3CgSJ6IRYxP2aEJ6b42Y1HAeATlBh48=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixvim", "repo": "nixvim",
"rev": "8234ee85eaa2c8b7f2c74f5b4cdf02c4965b07fc", "rev": "2e3083e42509c399b224239f6d7fa17976b18536",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -471,18 +539,18 @@
}, },
"nuschtosSearch": { "nuschtosSearch": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils_2",
"nixpkgs": [ "nixpkgs": [
"nixvim", "nixvim",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1723969429, "lastModified": 1726392886,
"narHash": "sha256-BuewfNEXEf11MIkJY+uvWsdLu1dIvgJqntWChvNdALg=", "narHash": "sha256-9RtOuG7V8KG8IU8nZje5EQ1WSM/inr7+zb3tAgTiHDM=",
"owner": "NuschtOS", "owner": "NuschtOS",
"repo": "search", "repo": "search",
"rev": "a05d1805f2a2bc47d230e5e92aecbf69f784f3d0", "rev": "97d34b70deed4878fcb2449ac89dab717d72efa1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -494,6 +562,7 @@
"root": { "root": {
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"lix-module": "lix-module",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixvim": "nixvim", "nixvim": "nixvim",
"spicetify-nix": "spicetify-nix", "spicetify-nix": "spicetify-nix",
@ -508,11 +577,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724472954, "lastModified": 1726460241,
"narHash": "sha256-65NfzEvwdJGHsOZA+w4AUFUG10RyfuQltct3h++gsw0=", "narHash": "sha256-wslbKgh6ZEqHzZJj1eHGRENZQ4r1C4LmAvaBKvbiGzg=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "spicetify-nix", "repo": "spicetify-nix",
"rev": "3caf2a241f7af52419ce97c6682b0467219ab914", "rev": "fe1722602352cba0448f3961df90b5d1f55d5675",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -531,18 +600,18 @@
"base16-tmux": "base16-tmux", "base16-tmux": "base16-tmux",
"base16-vim": "base16-vim", "base16-vim": "base16-vim",
"flake-compat": "flake-compat_3", "flake-compat": "flake-compat_3",
"flake-utils": "flake-utils_2", "flake-utils": "flake-utils_3",
"gnome-shell": "gnome-shell", "gnome-shell": "gnome-shell",
"home-manager": "home-manager_3", "home-manager": "home-manager_3",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"systems": "systems_2" "systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1724444244, "lastModified": 1726497442,
"narHash": "sha256-fH1lyJvJjUhZ8xMlmiI18EZNzodDSe74rFuwlZDL0aQ=", "narHash": "sha256-fieyqmLEJQqqnuJcg2CAnQ8kHapXHhg9rL48NNWjnPw=",
"owner": "danth", "owner": "danth",
"repo": "stylix", "repo": "stylix",
"rev": "d042af478ce87e188139480922a3085218194106", "rev": "149b313ddf91c3cc94309170498b162cec666675",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -581,6 +650,21 @@
"type": "github" "type": "github"
} }
}, },
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"treefmt-nix": { "treefmt-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -589,11 +673,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724338379, "lastModified": 1725271838,
"narHash": "sha256-kKJtaiU5Ou+e/0Qs7SICXF22DLx4V/WhG1P6+k4yeOE=", "narHash": "sha256-VcqxWT0O/gMaeWTTjf1r4MOyG49NaNxW4GHTO3xuThE=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "070f834771efa715f3e74cd8ab93ecc96fabc951", "rev": "9fb342d14b69aefdf46187f6bb80a4a0d97007cd",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -11,7 +11,10 @@
# Home manager # Home manager
home-manager.url = "github:nix-community/home-manager"; home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.inputs.nixpkgs.follows = "nixpkgs";
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.0.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
};
stylix.url = "github:danth/stylix"; stylix.url = "github:danth/stylix";
spicetify-nix = { spicetify-nix = {
url = "github:Gerg-L/spicetify-nix"; url = "github:Gerg-L/spicetify-nix";
@ -25,6 +28,7 @@
home-manager, home-manager,
stylix, stylix,
spicetify-nix, spicetify-nix,
lix-module,
... ...
} @ inputs: let } @ inputs: let
inherit (self) outputs; inherit (self) outputs;
@ -36,9 +40,7 @@
nixosConfigurations = { nixosConfigurations = {
"${myHostName}" = nixpkgs.lib.nixosSystem { "${myHostName}" = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [./nixos/configuration.nix lix-module.nixosModules.default];
./nixos/configuration.nix
];
}; };
}; };
@ -46,7 +48,8 @@
# Available through 'home-manager --flake .#your-username@your-hostname' # Available through 'home-manager --flake .#your-username@your-hostname'
homeConfigurations = { homeConfigurations = {
"${stevenUserName}@${myHostName}" = home-manager.lib.homeManagerConfiguration { "${stevenUserName}@${myHostName}" = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance pkgs =
nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
extraSpecialArgs = {inherit inputs outputs;}; extraSpecialArgs = {inherit inputs outputs;};
modules = [ modules = [
./home-manager/${stevenUserName}/home.nix ./home-manager/${stevenUserName}/home.nix

View file

@ -0,0 +1,23 @@
const hyprland = await Service.import("hyprland")
const dispatch = ws => hyprland.messageAsync(`dispatch workspace ${ws}`);
const Workspaces = () => Widget.EventBox({
onScrollUp: () => dispatch('+1'),
onScrollDown: () => dispatch('-1'),
child: Widget.Box({
children: Array.from({ length: 10 }, (_, i) => i + 1).map(i => Widget.Button({
attribute: i,
label: `${i}`,
onClicked: () => dispatch(i),
class_name: i === hyprland.active.workspace.id ? "focused" : ""
})),
// remove this setup hook if you want fixed number of buttons
setup: self => self.hook(hyprland, () => self.children.forEach(btn => {
btn.visible = hyprland.workspaces.some(ws => ws.id === btn.attribute);
})),
}),
})
export { Workspaces };

View file

@ -0,0 +1,25 @@
const network = await Service.import("network")
const WifiIndicator = () => Widget.Box({
children: [
Widget.Icon({
icon: network.wifi.bind('icon_name'),
}),
Widget.Label({
label: network.wifi.bind('ssid')
.as(ssid => ssid || 'Unknown'),
}),
],
})
const WiredIndicator = () => Widget.Icon({
icon: network.wired.bind('icon_name'),
})
const NetworkIndicator = () => Widget.Stack({
children: {
wifi: WifiIndicator(),
wired: WiredIndicator(),
},
shown: network.bind('primary').as(p => p || 'wifi'),
})
export { NetworkIndicator };

View file

@ -9,7 +9,10 @@
source = ./config; source = ./config;
}; };
}; };
home.packages = with pkgs; [ags]; home.packages = with pkgs; [
ags
brightnessctl
];
myAutostartCommands = [ myAutostartCommands = [
#"${pkgs.ags}/bin/ags --init" #"${pkgs.ags}/bin/ags --init"
"${pkgs.ags}/bin/ags" "${pkgs.ags}/bin/ags"

View file

@ -62,6 +62,8 @@
file = {"wallpaper.jpg".source = ./assets/nixos-wallpaper.jpg;}; file = {"wallpaper.jpg".source = ./assets/nixos-wallpaper.jpg;};
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
bottom
libnotify
prismlauncher prismlauncher
protonvpn-gui protonvpn-gui
devenv devenv
@ -70,6 +72,7 @@
zed-editor zed-editor
rhythmbox rhythmbox
#clash-verge-rev #clash-verge-rev
vesktop
qq qq
libreoffice libreoffice
discord discord

View file

@ -19,23 +19,34 @@
xwayland = {force_zero_scaling = true;}; xwayland = {force_zero_scaling = true;};
monitor = [ monitor = [
#"eDP-1, 1920x1080@165,0x0,1" #"eDP-1, 1920x1080@165,0x0,1"
",preferred, auto, ${builtins.toString config.displayScale}" "HDMI-A-1, 1920x1080@75, 2560x0, 1"
"eDP-1,preferred, auto, ${builtins.toString config.displayScale}"
]; ];
general = {
border_size = 1;
gaps_in = 2.5;
gaps_out = 5;
};
decoration = {
rounding = 5;
};
input = { input = {
# xset rate 250 50 replacement on wayland... # xset rate 250 50 replacement on wayland...
# FAST MODE LET'S GOOO # FAST MODE LET'S GOOO
repeat_rate = 50; repeat_rate = 50;
repeat_delay = 250; repeat_delay = 250;
accel_profile = "flat";
}; };
exec-once = exec-once =
config.myAutostartCommands config.myAutostartCommands
++ [ ++ [
"[workspace special silent] ${pkgs.foot}/bin/foot -f 'BlexMono Nerd Font:size=12' -o colors.alpha=0.85 ${config.myShells.defaultShell}" "[workspace special silent] ${pkgs.foot}/bin/foot -f 'BlexMono Nerd Font:size=16' -o colors.alpha=0.85 ${config.myShells.defaultShell}"
]; ];
misc = { misc = {
disable_hyprland_logo = true; disable_hyprland_logo = true;
disable_splash_rendering = true; disable_splash_rendering = true;
font_family = "monospace"; font_family = "monospace";
focus_on_activate = true; # see if fixes mako daemon not focusing
}; };
"$mod" = "SUPER"; "$mod" = "SUPER";
binde = [ binde = [
@ -45,15 +56,15 @@
", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-" ", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
]; ];
bind = let bind = let
terminalCmd = "${pkgs.foot}/bin/foot -f 'BlexMono Nerd Font:size=12' -o colors.alpha=0.85"; terminalCmd = "${pkgs.foot}/bin/foot -f 'BlexMono Nerd Font:size=16' -o colors.alpha=0.85 ${config.myShells.defaultShell}";
screenshotLocation = "/home/${config.myUserName}/Screenshots/$(date '+%Y-%m-%d-%H-%M-%S').png"; screenshotLocation = "/home/${config.myUserName}/Screenshots/$(date '+%Y-%m-%d-%H-%M-%S').png";
in in
[ [
"$mod SHIFT, L, exec, ${pkgs.hyprlock}/bin/hyprlock --immediate" "$mod SHIFT, L, exec, ${pkgs.wlogout}/bin/wlogout"
"$mod SHIFT, Print, exec, ${pkgs.grimblast}/bin/grimblast copysave output ${screenshotLocation}" "$mod SHIFT, Print, exec, ${pkgs.grimblast}/bin/grimblast copysave output ${screenshotLocation}"
"$mod, Print, exec, ${pkgs.grimblast}/bin/grimblast copysave area ${screenshotLocation}" ", Print, exec, ${pkgs.grimblast}/bin/grimblast copysave area ${screenshotLocation}"
", Print, exec, ${pkgs.grimblast}/bin/grimblast copy area" "$mod, Print, exec, ${pkgs.grimblast}/bin/grimblast copy area"
# special workspace keybinds # special workspace keybinds
"$mod, S, togglespecialworkspace" "$mod, S, togglespecialworkspace"
@ -64,7 +75,7 @@
"$mod, Q, killactive" "$mod, Q, killactive"
"$mod, D, exec, ${pkgs.fuzzel}/bin/fuzzel" "$mod, D, exec, ${pkgs.fuzzel}/bin/fuzzel"
# firefox quickstart # firefox quickstart
"$mod, F, exec, ${pkgs.firefox}/bin/firefox" "$mod, F, fullscreen"
"$mod, E, exec, ${pkgs.pcmanfm}/bin/pcmanfm" "$mod, E, exec, ${pkgs.pcmanfm}/bin/pcmanfm"
# foot terminal # foot terminal
"$mod, Return, exec, ${terminalCmd} ${config.myShells.defaultShell}" "$mod, Return, exec, ${terminalCmd} ${config.myShells.defaultShell}"

View file

@ -33,13 +33,8 @@
outputs = [ outputs = [
{ {
criteria = "HDMI-A-1"; criteria = "HDMI-A-1";
position = "0,0"; position = "2560,0";
mode = "1920x1080@60.00Hz"; mode = "1920x1080@75.00Hz";
}
{
criteria = "eDP-1";
position = "0,0";
status = "disable";
} }
]; ];
}; };

View file

@ -1,9 +1,10 @@
{pkgs}: { {pkgs}: {
cd = "z"; cd = "z";
cdi = "zi"; cdi = "zi";
ls = "${pkgs.eza}/bin/exa"; ls = "${pkgs.lsd}/bin/lsd";
cat = "${pkgs.bat}/bin/bat"; cat = "${pkgs.bat}/bin/bat";
ll = "ls -l"; ll = "ls -l";
rm = "${pkgs.trash-cli}/bin/trash";
osupdate = "${pkgs.nh}/bin/nh os switch"; osupdate = "${pkgs.nh}/bin/nh os switch";
homeupdate = "${pkgs.nh}/bin/nh home switch"; homeupdate = "${pkgs.nh}/bin/nh home switch";
batmon = "watch -n0 upower -i /org/freedesktop/UPower/devices/battery_BAT1"; batmon = "watch -n0 upower -i /org/freedesktop/UPower/devices/battery_BAT1";

View file

@ -1,13 +1,14 @@
{ {
pkgs, pkgs,
lib, lib,
config,
... ...
}: { }: {
wayland.windowManager.sway = { wayland.windowManager.sway = {
enable = true; enable = true;
config = rec { config = rec {
modifier = "Mod4"; modifier = "Mod4";
terminal = "${pkgs.foot}/bin/foot -f 'BlexMono Nerd Font:size=24' zsh"; terminal = "${pkgs.foot}/bin/foot -f '${config.desktopFontFullName}:size=24' zsh";
}; };
}; };
} }

90
nixos/bootloader.nix Normal file
View file

@ -0,0 +1,90 @@
{
config,
pkgs,
...
}: let
distro-grub-themes = pkgs.stdenv.mkDerivation {
pname = "distro-grub-themes";
version = "3.1";
src = pkgs.fetchFromGitHub {
owner = "AdisonCavani";
repo = "distro-grub-themes";
rev = "v3.1";
hash = "sha256-ZcoGbbOMDDwjLhsvs77C7G7vINQnprdfI37a9ccrmPs=";
};
installPhase = "cp -r customize/nixos $out";
};
xenlism-grub-themes = pkgs.stdenv.mkDerivation {
pname = "xenlism-grub-themes";
version = "1.0";
src = pkgs.fetchFromGitHub {
owner = "xenlism";
repo = "Grub-themes";
rev = "40ac048df9aacfc053c515b97fcd24af1a06762f";
hash = "sha256-ProTKsFocIxWAFbYgQ46A+GVZ7mUHXxZrvdiPJqZJ6I=";
};
installPhase = "cp -r xenlism-grub-1080p-nixos/Xenlism-Nixos $out";
};
in {
environment.systemPackages = with pkgs; [hack-font];
#fileSystems."/mnt/winsys" = {
# device = "/dev/nvme0n1p5";
# fsType = "ntfs-3g";
# options = [ "rw" "uid=1000" ];
#};
#fileSystems."/mnt/windata" = {
# device = "/dev/nvme0n1p3";
# fsType = "ntfs-3g";
# options = [ "rw" "uid=1000" ];
#};
boot = {
plymouth = {
enable = true;
theme = "rings";
themePackages = with pkgs; [
# By default we would install all themes
(adi1090x-plymouth-themes.override {selected_themes = ["rings"];})
];
};
# Enable "Silent Boot"
consoleLogLevel = 0;
initrd.verbose = false;
kernelParams = [
"quiet"
"splash"
"boot.shell_on_fail"
"loglevel=3"
"rd.systemd.show_status=false"
"rd.udev.log_level=3"
"udev.log_priority=3"
];
# Hide the OS choice for bootloaders.
# It's still possible to open the bootloader list by pressing any key
# It will just not appear on screen unless a key is pressed
supportedFilesystems = ["ntfs"];
loader = {
#timeout = 0;
efi = {canTouchEfiVariables = true;};
grub = {
enable = true;
efiSupport = true;
device = "nodev";
fsIdentifier = "label";
devices = ["nodev"];
extraEntries = ''
menuentry "Reboot" {
reboot
}
menuentry "Poweroff" {
halt
}
'';
useOSProber = true;
configurationLimit = 10;
fontSize = 32;
theme = xenlism-grub-themes;
};
};
};
}

View file

@ -10,7 +10,7 @@
imports = [ imports = [
../common/variables.nix ../common/variables.nix
./greetd.nix ./greetd.nix
./grub.nix ./bootloader.nix
./nvidia.nix ./nvidia.nix
./fonts.nix ./fonts.nix
./services/laptop.preset.nix ./services/laptop.preset.nix
@ -48,12 +48,8 @@
}; };
xdg.portal = { xdg.portal = {
enable = true; enable = true;
extraPortals = with pkgs; [ extraPortals = with pkgs; [xdg-desktop-portal-gtk];
xdg-desktop-portal-gtk config = {common.default = ["gtk"];};
];
config = {
common.default = ["gtk"];
};
}; };
systemd.user.services.mpris-proxy = { systemd.user.services.mpris-proxy = {
description = "Mpris proxy"; description = "Mpris proxy";
@ -69,8 +65,11 @@
true; # Open ports in the firewall for Source Dedicated Server true; # Open ports in the firewall for Source Dedicated Server
localNetworkGameTransfers.openFirewall = localNetworkGameTransfers.openFirewall =
true; # Open ports in the firewall for Steam Local Network Game Transfers true; # Open ports in the firewall for Steam Local Network Game Transfers
gamescopeSession = {
enable = true;
};
}; };
programs.gamemode.enable = true;
boot = { boot = {
kernelPackages = pkgs.linuxPackages_zen; kernelPackages = pkgs.linuxPackages_zen;
supportedFilesystems = ["ntfs"]; supportedFilesystems = ["ntfs"];
@ -131,7 +130,10 @@
initialPassword = "stevenpassword"; initialPassword = "stevenpassword";
isNormalUser = true; isNormalUser = true;
openssh.authorizedKeys.keys = []; openssh.authorizedKeys.keys = [];
packages = with pkgs; [nh gparted]; packages = with pkgs; [
nh
gparted
];
extraGroups = ["wheel" "input" "networkmanager"]; extraGroups = ["wheel" "input" "networkmanager"];
}; };
}; };

View file

@ -11,6 +11,7 @@
liberation_ttf liberation_ttf
mplus-outline-fonts.githubRelease mplus-outline-fonts.githubRelease
dina-font dina-font
#proggyfonts #proggyfonts
#glasstty-ttf #glasstty-ttf
( (
@ -22,6 +23,7 @@
"CascadiaMono" "CascadiaMono"
"CommitMono" "CommitMono"
"JetBrainsMono" "JetBrainsMono"
"ProggyClean"
]; ];
} }
) )

View file

@ -1,64 +0,0 @@
{
config,
pkgs,
...
}: let
distro-grub-themes = pkgs.stdenv.mkDerivation {
pname = "distro-grub-themes";
version = "3.1";
src = pkgs.fetchFromGitHub {
owner = "AdisonCavani";
repo = "distro-grub-themes";
rev = "v3.1";
hash = "sha256-ZcoGbbOMDDwjLhsvs77C7G7vINQnprdfI37a9ccrmPs=";
};
installPhase = "cp -r customize/nixos $out";
};
xenlism-grub-themes = pkgs.stdenv.mkDerivation {
pname = "xenlism-grub-themes";
version = "1.0";
src = pkgs.fetchFromGitHub {
owner = "xenlism";
repo = "Grub-themes";
rev = "40ac048df9aacfc053c515b97fcd24af1a06762f";
hash = "sha256-ProTKsFocIxWAFbYgQ46A+GVZ7mUHXxZrvdiPJqZJ6I=";
};
installPhase = "cp -r xenlism-grub-1080p-nixos/Xenlism-Nixos $out";
};
in {
environment.systemPackages = with pkgs; [hack-font];
boot.supportedFilesystems = ["ntfs"];
#fileSystems."/mnt/winsys" = {
# device = "/dev/nvme0n1p5";
# fsType = "ntfs-3g";
# options = [ "rw" "uid=1000" ];
#};
#fileSystems."/mnt/windata" = {
# device = "/dev/nvme0n1p3";
# fsType = "ntfs-3g";
# options = [ "rw" "uid=1000" ];
#};
boot.loader = {
efi = {
canTouchEfiVariables = true;
};
grub = {
enable = true;
efiSupport = true;
device = "nodev";
fsIdentifier = "label";
devices = ["nodev"];
extraEntries = ''
menuentry "Reboot" {
reboot
}
menuentry "Poweroff" {
halt
}
'';
useOSProber = true;
configurationLimit = 10;
theme = xenlism-grub-themes;
};
};
}

View file

@ -34,7 +34,7 @@
}; };
forceFullCompositionPipeline = true; forceFullCompositionPipeline = true;
modesetting.enable = true; modesetting.enable = true;
# open = true; open = true;
nvidiaSettings = true; nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.beta; package = config.boot.kernelPackages.nvidiaPackages.beta;
}; };