Compare commits
9 Commits
70fc8a0c9a
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| ce797e1a65 | |||
| 93bc7644f5 | |||
| c986ac4bf7 | |||
| b25430abc9 | |||
| c6862c78db | |||
| 25ecab4a70 | |||
| 8de85492a6 | |||
| 059b424d87 | |||
| 8dba82f523 |
54
flake.lock
generated
54
flake.lock
generated
@ -247,11 +247,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772633327,
|
"lastModified": 1773286336,
|
||||||
"narHash": "sha256-jl+DJB2DUx7EbWLRng+6HNWW/1/VQOnf0NsQB4PlA7I=",
|
"narHash": "sha256-+yFtmhOHterllxWmV6YbdevTXpJdGS0mS0UmJ0k9fh0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "5a75730e6f21ee624cbf86f4915c6e7489c74acc",
|
"rev": "7d06e0cefe6e4a1e85b2b3274dcb0b3da242a557",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -294,11 +294,11 @@
|
|||||||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772698812,
|
"lastModified": 1773303738,
|
||||||
"narHash": "sha256-7+K/VaZ7TXUeUGSYshg8wC3UsRZHB+M4x6r38Q1B79c=",
|
"narHash": "sha256-qrl74wNFMTUzA8z6nSEWNjQcJI/MQEWdWu2Wn+u4Ctg=",
|
||||||
"owner": "sodiboo",
|
"owner": "sodiboo",
|
||||||
"repo": "niri-flake",
|
"repo": "niri-flake",
|
||||||
"rev": "5641625ef950f024e3e0e3f38bb91f876290c0be",
|
"rev": "329df7671b7859abd1cbca5d5af296ed6dc22b46",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -327,11 +327,11 @@
|
|||||||
"niri-unstable": {
|
"niri-unstable": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772207631,
|
"lastModified": 1773130184,
|
||||||
"narHash": "sha256-Jkkg+KqshFO3CbTszVVpkKN2AOObYz+wMsM3ONo1z5g=",
|
"narHash": "sha256-3bwx4WqCB06yfQIGB+OgIckOkEDyKxiTD5pOo4Xz2rI=",
|
||||||
"owner": "YaLTeR",
|
"owner": "YaLTeR",
|
||||||
"repo": "niri",
|
"repo": "niri",
|
||||||
"rev": "e708f546153f74acf33eb183b3b2992587a701e5",
|
"rev": "b07bde3ee82dd73115e6b949e4f3f63695da35ea",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -357,11 +357,11 @@
|
|||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771969195,
|
"lastModified": 1772972630,
|
||||||
"narHash": "sha256-qwcDBtrRvJbrrnv1lf/pREQi8t2hWZxVAyeMo7/E9sw=",
|
"narHash": "sha256-mUJxsNOrBMNOUJzN0pfdVJ1r2pxeqm9gI/yIKXzVVbk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "41c6b421bdc301b2624486e11905c9af7b8ec68e",
|
"rev": "3966ce987e1a9a164205ac8259a5fe8a64528f72",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -372,11 +372,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772721746,
|
"lastModified": 1773304180,
|
||||||
"narHash": "sha256-GBuNOTwrTEDkkCxZIt31/4vOOrk6EN9WJRX5Iw6rSgo=",
|
"narHash": "sha256-e/ctVWU2EYXBOsJHU76lN6vqugD8u1Xl20MJ+A+bPuE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "954e9a9127b88c528b232c48142345c8d845951a",
|
"rev": "d5eb8dca28f5be580c26f8fcb2ec4ec4215e9102",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -388,11 +388,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772598333,
|
"lastModified": 1773068389,
|
||||||
"narHash": "sha256-YaHht/C35INEX3DeJQNWjNaTcPjYmBwwjFJ2jdtr+5U=",
|
"narHash": "sha256-vMrm7Pk2hjBRPnCSjhq1pH0bg350Z+pXhqZ9ICiqqCs=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "fabb8c9deee281e50b1065002c9828f2cf7b2239",
|
"rev": "44bae273f9f82d480273bab26f5c50de3724f52f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -404,11 +404,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772624091,
|
"lastModified": 1773122722,
|
||||||
"narHash": "sha256-QKyJ0QGWBn6r0invrMAK8dmJoBYWoOWy7lN+UHzW1jc=",
|
"narHash": "sha256-FIqHByVqxCprNjor1NqF80F2QQoiiyqanNNefdlvOg4=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "80bdc1e5ce51f56b19791b52b2901187931f5353",
|
"rev": "62dc67aa6a52b4364dd75994ec00b51fbf474e50",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -495,11 +495,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772695593,
|
"lastModified": 1773291133,
|
||||||
"narHash": "sha256-kS8IgyBauCuOIgUcX4ajko6Szn4FPLCfwcEGfTv7RDc=",
|
"narHash": "sha256-9Odn+7x5l90HnXRY7MwVYcX+8CYAo+ldJ+GOVs7e2T8=",
|
||||||
"owner": "outfoxxed",
|
"owner": "outfoxxed",
|
||||||
"repo": "quickshell",
|
"repo": "quickshell",
|
||||||
"rev": "5721955686a474b814c27bc0ec743f86e473ac4f",
|
"rev": "9a9c60525014bcdf83aace03db4b53c19168edcc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -728,11 +728,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772638901,
|
"lastModified": 1773290887,
|
||||||
"narHash": "sha256-kzAyU054Mzpnzgx475MgmcjYJXxXWQWBG7LLsYtHXKw=",
|
"narHash": "sha256-L1yMYmFffHfZNP+hKJGRBmrFKkn/VDhu7jEbVftBQuM=",
|
||||||
"owner": "0xc000022070",
|
"owner": "0xc000022070",
|
||||||
"repo": "zen-browser-flake",
|
"repo": "zen-browser-flake",
|
||||||
"rev": "75de12ddd50616a3628499ec18b648bceb88eb0d",
|
"rev": "9346698c4562819f61b4e5097151ec0b17729fab",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
29
flake.nix
29
flake.nix
@ -47,8 +47,19 @@
|
|||||||
grub2-themes.url = "github:vinceliuice/grub2-themes";
|
grub2-themes.url = "github:vinceliuice/grub2-themes";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ nixpkgs, alejandra, home-manager, plasma-manager, nixos-hardware, stylix, niri, zen-browser, grub2-themes, nix-flatpak, ... }:
|
outputs = inputs @ {
|
||||||
let
|
nixpkgs,
|
||||||
|
alejandra,
|
||||||
|
home-manager,
|
||||||
|
plasma-manager,
|
||||||
|
nixos-hardware,
|
||||||
|
stylix,
|
||||||
|
niri,
|
||||||
|
zen-browser,
|
||||||
|
grub2-themes,
|
||||||
|
nix-flatpak,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
username = "cookiez";
|
username = "cookiez";
|
||||||
hostname = "nixos";
|
hostname = "nixos";
|
||||||
project = "NixOS";
|
project = "NixOS";
|
||||||
@ -57,8 +68,7 @@
|
|||||||
pkgs = import nixpkgs {inherit system;};
|
pkgs = import nixpkgs {inherit system;};
|
||||||
|
|
||||||
framework13 = true;
|
framework13 = true;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
formatter.${system} = nixpkgs.legacyPackages.${system}.alejandra;
|
formatter.${system} = nixpkgs.legacyPackages.${system}.alejandra;
|
||||||
|
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
@ -73,10 +83,17 @@
|
|||||||
inherit alejandra;
|
inherit alejandra;
|
||||||
host = hostname;
|
host = hostname;
|
||||||
};
|
};
|
||||||
modules = [
|
modules =
|
||||||
|
[
|
||||||
./modules
|
./modules
|
||||||
#Conditional Modules!
|
#Conditional Modules!
|
||||||
] ++ (if framework13 then [ nixos-hardware.nixosModules.framework-13-7040-amd ] else [ ]) ++ [
|
]
|
||||||
|
++ (
|
||||||
|
if framework13
|
||||||
|
then [nixos-hardware.nixosModules.framework-13-7040-amd]
|
||||||
|
else []
|
||||||
|
)
|
||||||
|
++ [
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,5 +1,9 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
boot = {
|
boot = {
|
||||||
# silence first boot output
|
# silence first boot output
|
||||||
consoleLogLevel = 3;
|
consoleLogLevel = 3;
|
||||||
|
|||||||
@ -3,17 +3,25 @@
|
|||||||
#nmcli device wifi connect <ssid> password <password>
|
#nmcli device wifi connect <ssid> password <password>
|
||||||
# or if no password (open wifi)
|
# or if no password (open wifi)
|
||||||
#nmcli device wifi connect <ssid>
|
#nmcli device wifi connect <ssid>
|
||||||
|
|
||||||
{ inputs, config, pkgs, lib, username, project, host, version, system, ... }:
|
|
||||||
{
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
host,
|
||||||
|
version,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
#Assign Swap to the PC
|
#Assign Swap to the PC
|
||||||
#swapDevices = [{
|
#swapDevices = [{
|
||||||
# device = "/swapfile";
|
# device = "/swapfile";
|
||||||
# size = 16 * 1024; # 16GB
|
# size = 16 * 1024; # 16GB
|
||||||
#}];
|
#}];
|
||||||
|
|
||||||
imports =
|
imports = [
|
||||||
[
|
|
||||||
inputs.home-manager.nixosModules.home-manager
|
inputs.home-manager.nixosModules.home-manager
|
||||||
inputs.grub2-themes.nixosModules.default
|
inputs.grub2-themes.nixosModules.default
|
||||||
inputs.nix-flatpak.nixosModules.nix-flatpak
|
inputs.nix-flatpak.nixosModules.nix-flatpak
|
||||||
@ -63,7 +71,6 @@
|
|||||||
#Manage flags -> Add bios_grub
|
#Manage flags -> Add bios_grub
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
|
|
||||||
# Enable networking
|
# Enable networking
|
||||||
networkmanager.enable = true;
|
networkmanager.enable = true;
|
||||||
|
|
||||||
@ -183,6 +190,11 @@
|
|||||||
openssh.enable = true;
|
openssh.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.services.fprintd = {
|
||||||
|
wantedBy = ["multi-user.target"];
|
||||||
|
serviceConfig.Type = "simple";
|
||||||
|
};
|
||||||
|
|
||||||
fonts = {
|
fonts = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
font-awesome
|
font-awesome
|
||||||
@ -301,8 +313,12 @@
|
|||||||
sudo.wheelNeedsPassword = false;
|
sudo.wheelNeedsPassword = false;
|
||||||
|
|
||||||
pam.services = {
|
pam.services = {
|
||||||
login.fprintAuth = true;
|
sddm.fprintAuth = false; #Because of the bug with 30 seconds on sddm login
|
||||||
sudo.fprintAuth = true;
|
sddm-autologin.fprintAuth = false; #Same as above
|
||||||
|
login.fprintAuth = false;
|
||||||
|
sudo.fprintAuth = false; #Disabled because of security risk: https://nvd.nist.gov/vuln/detail/cve-2024-37408
|
||||||
|
kscreenlocker.fprintAuth = true;
|
||||||
|
polkit-1.fprintAuth = false; #Disabled because of security risk: https://nvd.nist.gov/vuln/detail/cve-2024-37408
|
||||||
kde.fprintAuth = false;
|
kde.fprintAuth = false;
|
||||||
hyprlock = {};
|
hyprlock = {};
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
{ config, ... }:
|
{config, ...}: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
|
|
||||||
@ -43,6 +42,5 @@
|
|||||||
environment.etc."nixos-tags".text = "niri";
|
environment.etc."nixos-tags".text = "niri";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,9 @@
|
|||||||
{ pkgs, username, project, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
xdg = {
|
xdg = {
|
||||||
desktopEntries.youtube = {
|
desktopEntries.youtube = {
|
||||||
name = "YouTube";
|
name = "YouTube";
|
||||||
@ -107,6 +111,5 @@
|
|||||||
name = "Discover";
|
name = "Discover";
|
||||||
noDisplay = true;
|
noDisplay = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
{ username, ... }:
|
{username, ...}: {
|
||||||
{
|
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
profiles = {
|
profiles = {
|
||||||
|
|||||||
@ -1,6 +1,8 @@
|
|||||||
{ config, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
let
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
lock-false = {
|
lock-false = {
|
||||||
Value = false;
|
Value = false;
|
||||||
Status = "locked";
|
Status = "locked";
|
||||||
@ -9,9 +11,7 @@
|
|||||||
Value = true;
|
Value = true;
|
||||||
Status = "locked";
|
Status = "locked";
|
||||||
};
|
};
|
||||||
in
|
in {
|
||||||
|
|
||||||
{
|
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
./firefox-home.nix
|
./firefox-home.nix
|
||||||
];
|
];
|
||||||
@ -21,7 +21,9 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
languagePacks = ["de" "en-US"];
|
languagePacks = ["de" "en-US"];
|
||||||
|
|
||||||
/* ---- POLICIES ---- */
|
/*
|
||||||
|
---- POLICIES ----
|
||||||
|
*/
|
||||||
# Check about:policies#documentation for options.
|
# Check about:policies#documentation for options.
|
||||||
policies = {
|
policies = {
|
||||||
PasswordManagerEnabled = false;
|
PasswordManagerEnabled = false;
|
||||||
@ -44,15 +46,15 @@
|
|||||||
DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on"
|
DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on"
|
||||||
SearchBar = "unified"; # alternative: "separate"
|
SearchBar = "unified"; # alternative: "separate"
|
||||||
|
|
||||||
/* ---- EXTENSIONS ---- */
|
/*
|
||||||
|
---- EXTENSIONS ----
|
||||||
|
*/
|
||||||
# Check about:support for extension/add-on ID strings.
|
# Check about:support for extension/add-on ID strings.
|
||||||
# Valid strings for installation_mode are "allowed", "blocked",
|
# Valid strings for installation_mode are "allowed", "blocked",
|
||||||
# "force_installed" and "normal_installed".
|
# "force_installed" and "normal_installed".
|
||||||
|
|
||||||
# How to: https://discourse.nixos.org/t/declare-firefox-extensions-and-settings/36265
|
# How to: https://discourse.nixos.org/t/declare-firefox-extensions-and-settings/36265
|
||||||
ExtensionSettings =
|
ExtensionSettings = with builtins; let
|
||||||
with builtins;
|
|
||||||
let
|
|
||||||
extension = shortId: uuid: {
|
extension = shortId: uuid: {
|
||||||
name = uuid;
|
name = uuid;
|
||||||
value = {
|
value = {
|
||||||
@ -77,10 +79,15 @@
|
|||||||
(extension "darkreader" "addon@darkreader.org")
|
(extension "darkreader" "addon@darkreader.org")
|
||||||
];
|
];
|
||||||
|
|
||||||
/* ---- PREFERENCES ---- */
|
/*
|
||||||
|
---- PREFERENCES ----
|
||||||
|
*/
|
||||||
# Check about:config for options.
|
# Check about:config for options.
|
||||||
Preferences = {
|
Preferences = {
|
||||||
"browser.contentblocking.category" = { Value = "strict"; Status = "locked"; };
|
"browser.contentblocking.category" = {
|
||||||
|
Value = "strict";
|
||||||
|
Status = "locked";
|
||||||
|
};
|
||||||
"extensions.pocket.enabled" = lock-false;
|
"extensions.pocket.enabled" = lock-false;
|
||||||
"extensions.screenshots.disabled" = lock-true;
|
"extensions.screenshots.disabled" = lock-true;
|
||||||
"browser.topsites.contile.enabled" = lock-false;
|
"browser.topsites.contile.enabled" = lock-false;
|
||||||
|
|||||||
@ -1,11 +1,15 @@
|
|||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
# and may be overwritten by future invocations. Please make changes
|
# and may be overwritten by future invocations. Please make changes
|
||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
config,
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "thunderbolt" "uas" "usbhid" "sd_mod"];
|
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "thunderbolt" "uas" "usbhid" "sd_mod"];
|
||||||
@ -13,13 +17,13 @@
|
|||||||
boot.kernelModules = ["kvm-amd"];
|
boot.kernelModules = ["kvm-amd"];
|
||||||
boot.extraModulePackages = [];
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" = {
|
||||||
{ device = "/dev/disk/by-uuid/af8fdb25-74d8-4b33-8413-bdcb66e0d22a";
|
device = "/dev/disk/by-uuid/af8fdb25-74d8-4b33-8413-bdcb66e0d22a";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/58D5-0C06";
|
device = "/dev/disk/by-uuid/58D5-0C06";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
options = ["fmask=0077" "dmask=0077"];
|
options = ["fmask=0077" "dmask=0077"];
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,18 +1,30 @@
|
|||||||
{ lib, inputs, config, pkgs, username, project, host, version, ... }:
|
|
||||||
{
|
{
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
host,
|
||||||
|
version,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
# Home Manager needs a bit of information about you and the
|
# Home Manager needs a bit of information about you and the
|
||||||
# paths it should manage.
|
# paths it should manage.
|
||||||
home.username = username;
|
home.username = username;
|
||||||
home.homeDirectory = "/home/${username}";
|
home.homeDirectory = "/home/${username}";
|
||||||
home.packages = [
|
home.packages = [
|
||||||
(import ./ncli.nix { inherit pkgs host project; backupFiles = [
|
(import ./ncli.nix {
|
||||||
|
inherit pkgs host project;
|
||||||
|
backupFiles = [
|
||||||
".gtkrc-2.0.backup"
|
".gtkrc-2.0.backup"
|
||||||
".config/gtk-3.0/gtk.css.backup"
|
".config/gtk-3.0/gtk.css.backup"
|
||||||
".config/gtk-3.0/settings.ini.backup"
|
".config/gtk-3.0/settings.ini.backup"
|
||||||
".config/gtk-4.0/gtk.css.backup"
|
".config/gtk-4.0/gtk.css.backup"
|
||||||
".config/gtk-4.0/settings.ini.backup"
|
".config/gtk-4.0/settings.ini.backup"
|
||||||
".config/niri/config.kdl"
|
".config/niri/config.kdl"
|
||||||
]; })
|
];
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
@ -37,7 +49,6 @@
|
|||||||
programs = {
|
programs = {
|
||||||
home-manager = {enable = true;};
|
home-manager = {enable = true;};
|
||||||
|
|
||||||
|
|
||||||
zoxide = {
|
zoxide = {
|
||||||
enable = true;
|
enable = true;
|
||||||
#enableZshIntegration = true;
|
#enableZshIntegration = true;
|
||||||
@ -56,7 +67,6 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
git = {
|
git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
@ -80,7 +90,6 @@
|
|||||||
path = "${username}.default";
|
path = "${username}.default";
|
||||||
isDefault = true;
|
isDefault = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -101,9 +110,7 @@
|
|||||||
OfferToSaveLogins = false;
|
OfferToSaveLogins = false;
|
||||||
DisplayBookmarksToolbar = "always"; # alternatives: "always" or "newtab"
|
DisplayBookmarksToolbar = "always"; # alternatives: "always" or "newtab"
|
||||||
|
|
||||||
ExtensionSettings =
|
ExtensionSettings = with builtins; let
|
||||||
with builtins;
|
|
||||||
let
|
|
||||||
extension = shortId: uuid: {
|
extension = shortId: uuid: {
|
||||||
name = uuid;
|
name = uuid;
|
||||||
value = {
|
value = {
|
||||||
|
|||||||
@ -1,5 +1,9 @@
|
|||||||
{ config, inputs, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -7,8 +11,7 @@
|
|||||||
./home.nix
|
./home.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs;
|
environment.systemPackages = with pkgs; [
|
||||||
[
|
|
||||||
hyprlock
|
hyprlock
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,9 @@
|
|||||||
{pkgs, inputs, username, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,9 @@
|
|||||||
{ config, inputs, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -7,8 +11,7 @@
|
|||||||
./home.nix
|
./home.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs;
|
environment.systemPackages = with pkgs; [
|
||||||
[
|
|
||||||
hyprpaper
|
hyprpaper
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,10 @@
|
|||||||
{pkgs, inputs, username, project, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@ -3,11 +3,15 @@
|
|||||||
#nmcli device wifi connect <ssid> password <password>
|
#nmcli device wifi connect <ssid> password <password>
|
||||||
# or if no password (open wifi)
|
# or if no password (open wifi)
|
||||||
#nmcli device wifi connect <ssid>
|
#nmcli device wifi connect <ssid>
|
||||||
|
|
||||||
{ config, pkgs, lib, username, version, ... }:
|
|
||||||
{
|
{
|
||||||
imports =
|
config,
|
||||||
[
|
pkgs,
|
||||||
|
lib,
|
||||||
|
username,
|
||||||
|
version,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./zsh.nix
|
./zsh.nix
|
||||||
#./ncli.nix
|
#./ncli.nix
|
||||||
|
|||||||
@ -161,13 +161,64 @@ in
|
|||||||
echo -e "Updating flake and rebuilding system for current host: $HOST on generation: $YELLOW$geno$NOCOLOR"
|
echo -e "Updating flake and rebuilding system for current host: $HOST on generation: $YELLOW$geno$NOCOLOR"
|
||||||
cd "$HOME/$PROJECT" || { echo "Error: Could not change to $HOME/$PROJECT"; exit 1; }
|
cd "$HOME/$PROJECT" || { echo "Error: Could not change to $HOME/$PROJECT"; exit 1; }
|
||||||
|
|
||||||
echo "Updating flake..."
|
# --- Selective flake update ---
|
||||||
if nix flake update; then
|
read -rp "Update [a]ll inputs or [s]elect manually? (a/s): " choice
|
||||||
|
|
||||||
|
case "$choice" in
|
||||||
|
a|A)
|
||||||
|
echo "Updating all inputs..."
|
||||||
|
if nix flake update --flake .; then
|
||||||
echo "✓ Flake updated successfully"
|
echo "✓ Flake updated successfully"
|
||||||
else
|
else
|
||||||
echo "✗ Flake update failed" >&2
|
echo "✗ Flake update failed" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
;;
|
||||||
|
s|S)
|
||||||
|
echo "Fetching available updates (this may take a moment)..."
|
||||||
|
TEMP_LOCK=$(mktemp)
|
||||||
|
trap 'rm -f "$TEMP_LOCK"' EXIT
|
||||||
|
|
||||||
|
nix flake update --output-lock-file "$TEMP_LOCK" --flake . 2>/dev/null
|
||||||
|
|
||||||
|
outdated=$(jq -r --slurpfile new "$TEMP_LOCK" '
|
||||||
|
.nodes as $old |
|
||||||
|
$new[0].nodes as $newn |
|
||||||
|
($old | keys[]) |
|
||||||
|
select(. != "root") |
|
||||||
|
select(
|
||||||
|
($old[.].locked.lastModified // 0) !=
|
||||||
|
($newn[.].locked.lastModified // 0)
|
||||||
|
)
|
||||||
|
' flake.lock)
|
||||||
|
|
||||||
|
if [[ -z "$outdated" ]]; then
|
||||||
|
echo "✓ All inputs are already up to date, skipping flake update."
|
||||||
|
else
|
||||||
|
echo
|
||||||
|
echo "Updates available for:"
|
||||||
|
printf '%s\n' "$outdated"
|
||||||
|
echo
|
||||||
|
echo "Tab to select, Enter to update, Esc to cancel."
|
||||||
|
selected=$(printf '%s\n' "$outdated" | fzf --multi) || {
|
||||||
|
echo "No inputs selected, skipping flake update."
|
||||||
|
selected=""
|
||||||
|
}
|
||||||
|
if [[ -n "$selected" ]]; then
|
||||||
|
if nix flake update --flake . $selected; then
|
||||||
|
echo "✓ Flake updated successfully"
|
||||||
|
else
|
||||||
|
echo "✗ Flake update failed" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Invalid choice, skipping flake update."
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
# --- End selective flake update ---
|
||||||
|
|
||||||
|
|
||||||
current=""
|
current=""
|
||||||
@ -261,6 +312,9 @@ in
|
|||||||
cd "$HOME/$PROJECT" || { echo "Error: Could not change to $HOME/$PROJECT"; exit 1; }
|
cd "$HOME/$PROJECT" || { echo "Error: Could not change to $HOME/$PROJECT"; exit 1; }
|
||||||
git status
|
git status
|
||||||
;;
|
;;
|
||||||
|
format)
|
||||||
|
nix fmt .
|
||||||
|
;;
|
||||||
trim)
|
trim)
|
||||||
echo "Running 'sudo fstrim -v /' may take a few minutes and impact system performance."
|
echo "Running 'sudo fstrim -v /' may take a few minutes and impact system performance."
|
||||||
read -p "Enter to run now or enter to exit (y/N): " -n 1 -r
|
read -p "Enter to run now or enter to exit (y/N): " -n 1 -r
|
||||||
|
|||||||
@ -1,7 +1,11 @@
|
|||||||
{ inputs, config, lib, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
environment.systemPackages = with pkgs;
|
inputs,
|
||||||
[
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
neovim
|
neovim
|
||||||
vimPlugins.LazyVim
|
vimPlugins.LazyVim
|
||||||
vimPlugins.lazygit-nvim
|
vimPlugins.lazygit-nvim
|
||||||
@ -13,7 +17,6 @@
|
|||||||
./home.nix
|
./home.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
# programs.neovim = {
|
# programs.neovim = {
|
||||||
# enable = true;
|
# enable = true;
|
||||||
#};
|
#};
|
||||||
|
|||||||
@ -1,5 +1,10 @@
|
|||||||
{ inputs, config, lib, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.nixvim.homeModules.nixvim
|
inputs.nixvim.homeModules.nixvim
|
||||||
];
|
];
|
||||||
@ -108,6 +113,22 @@
|
|||||||
check_ts = true; # Use treesitter to avoid pairing inside strings/comments
|
check_ts = true; # Use treesitter to avoid pairing inside strings/comments
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
conform-nvim = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
formatters_by_ft = {
|
||||||
|
nix = ["alejandra"];
|
||||||
|
};
|
||||||
|
format_on_save = {
|
||||||
|
lsp_format = "fallback";
|
||||||
|
timeout_ms = 500;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# Pin the exact binary path so Nix guarantees it's available
|
||||||
|
settings.formatters = {
|
||||||
|
alejandra.command = "${pkgs.alejandra}/bin/alejandra";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
extraPlugins = with pkgs.vimPlugins; [
|
extraPlugins = with pkgs.vimPlugins; [
|
||||||
|
|||||||
@ -1,5 +1,10 @@
|
|||||||
{config, pkgs, libs, inputs, ...}:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
libs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
#CLI tools
|
#CLI tools
|
||||||
pdftk #PDF toolkit
|
pdftk #PDF toolkit
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./desktop.nix
|
./desktop.nix
|
||||||
./cli.nix
|
./cli.nix
|
||||||
|
|||||||
@ -1,7 +1,11 @@
|
|||||||
{config, pkgs, libs, inputs, ...}:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
libs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
|
|
||||||
#Programming
|
#Programming
|
||||||
jetbrains.pycharm #The PyCharm IDE to edit Python code
|
jetbrains.pycharm #The PyCharm IDE to edit Python code
|
||||||
jetbrains.idea #The IntelliJ IDE to edit Java code
|
jetbrains.idea #The IntelliJ IDE to edit Java code
|
||||||
|
|||||||
@ -1,5 +1,12 @@
|
|||||||
{config, pkgs, libs, inputs, system, alejandra, ...}:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
libs,
|
||||||
|
inputs,
|
||||||
|
system,
|
||||||
|
alejandra,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
#Essentials (CLI Only)
|
#Essentials (CLI Only)
|
||||||
wget #A tool for quickly downloading things from the Web
|
wget #A tool for quickly downloading things from the Web
|
||||||
@ -38,6 +45,8 @@
|
|||||||
rocmPackages.rocm-runtime #AMD ROCm runtime
|
rocmPackages.rocm-runtime #AMD ROCm runtime
|
||||||
ripgrep #Alternative to grep search for text in files
|
ripgrep #Alternative to grep search for text in files
|
||||||
pipewire #Multimedia handling
|
pipewire #Multimedia handling
|
||||||
|
fzf #Needed for nix-selective update tool
|
||||||
|
jq #Needed for nix-selective update tool
|
||||||
distrobox
|
distrobox
|
||||||
dbus
|
dbus
|
||||||
cifs-utils
|
cifs-utils
|
||||||
|
|||||||
@ -1,5 +1,11 @@
|
|||||||
{config, pkgs, libs, inputs, nix-flatpak, ...}:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
libs,
|
||||||
|
inputs,
|
||||||
|
nix-flatpak,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
services.flatpak = {
|
services.flatpak = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,10 @@
|
|||||||
{ pkgs, inputs, username, ... }:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
imports =
|
inputs,
|
||||||
[
|
username,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,9 @@
|
|||||||
{pkgs, inputs, username, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
# xdg.configFile."waybar/config.jsonc".source = ./config.jsonc;
|
# xdg.configFile."waybar/config.jsonc".source = ./config.jsonc;
|
||||||
# xdg.configFile."waybar/style.css".source = ./style.css;
|
# xdg.configFile."waybar/style.css".source = ./style.css;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,10 @@
|
|||||||
{ config, pkgs, username, project, ... }: {
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableCompletion = false;
|
enableCompletion = false;
|
||||||
@ -19,7 +25,6 @@
|
|||||||
|
|
||||||
#To reset powerlevel10k, write 'p10k configure' in shell!
|
#To reset powerlevel10k, write 'p10k configure' in shell!
|
||||||
promptInit = ''
|
promptInit = ''
|
||||||
source ${pkgs.zsh-autocomplete}/share/zsh-autocomplete/zsh-autocomplete.plugin.zsh
|
|
||||||
source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme
|
source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme
|
||||||
|
|
||||||
# Make ← and → move the cursor on the command line, even when in the menu
|
# Make ← and → move the cursor on the command line, even when in the menu
|
||||||
@ -35,7 +40,6 @@
|
|||||||
pkgs.zsh-completions
|
pkgs.zsh-completions
|
||||||
pkgs.zsh-powerlevel10k
|
pkgs.zsh-powerlevel10k
|
||||||
pkgs.zsh-syntax-highlighting
|
pkgs.zsh-syntax-highlighting
|
||||||
pkgs.zsh-autocomplete
|
|
||||||
pkgs.zsh-autosuggestions
|
pkgs.zsh-autosuggestions
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,10 @@
|
|||||||
{ config, pkgs, username, project, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
#To show logs of services run:
|
#To show logs of services run:
|
||||||
#journalctl --user-unit={service-name} --user
|
#journalctl --user-unit={service-name} --user
|
||||||
systemd.user.services.niri-waybar = {
|
systemd.user.services.niri-waybar = {
|
||||||
|
|||||||
@ -1,5 +1,9 @@
|
|||||||
{ config, inputs, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./autostart.nix
|
./autostart.nix
|
||||||
../modules/hyprlock
|
../modules/hyprlock
|
||||||
@ -11,8 +15,7 @@
|
|||||||
./home.nix
|
./home.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs;
|
environment.systemPackages = with pkgs; [
|
||||||
[
|
|
||||||
#mako
|
#mako
|
||||||
fuzzel
|
fuzzel
|
||||||
waybar
|
waybar
|
||||||
@ -26,11 +29,11 @@
|
|||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#services.xserver.enable = true;
|
#services.xserver.enable = true;
|
||||||
#services.xserver.displayManager.sddm.enable = true;
|
#services.xserver.displayManager.sddm.enable = true;
|
||||||
|
|
||||||
xdg.portal = { #Needed for waybar
|
xdg.portal = {
|
||||||
|
#Needed for waybar
|
||||||
enable = true;
|
enable = true;
|
||||||
extraPortals = [pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-wlr];
|
extraPortals = [pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-wlr];
|
||||||
config.common.default = "*";
|
config.common.default = "*";
|
||||||
@ -38,5 +41,4 @@
|
|||||||
|
|
||||||
#sound.enable = true;
|
#sound.enable = true;
|
||||||
#security.rtkit.enable = true;
|
#security.rtkit.enable = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,8 @@
|
|||||||
{pkgs, inputs, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.niri.homeModules.niri
|
inputs.niri.homeModules.niri
|
||||||
../modules/waybar/home.nix
|
../modules/waybar/home.nix
|
||||||
|
|||||||
@ -8,6 +8,7 @@
|
|||||||
#-----
|
#-----
|
||||||
alias py="python3"
|
alias py="python3"
|
||||||
alias mcrow="echo 'you better try to use nvim you little shit! :3'"
|
alias mcrow="echo 'you better try to use nvim you little shit! :3'"
|
||||||
|
alias vi="nvim"
|
||||||
alias srcals="source $HOME/NixOS/other/aliases && echo 'Sourced Aliases ... successful!'"
|
alias srcals="source $HOME/NixOS/other/aliases && echo 'Sourced Aliases ... successful!'"
|
||||||
alias please="sudo"
|
alias please="sudo"
|
||||||
alias se="sudoedit"
|
alias se="sudoedit"
|
||||||
|
|||||||
@ -1,6 +1,10 @@
|
|||||||
{ config, pkgs, username, project, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
#To show logs of services run: journalctl --user-unit={service-name} --user
|
#To show logs of services run: journalctl --user-unit={service-name} --user
|
||||||
|
|
||||||
systemd.user.services.autostart-yakuake = {
|
systemd.user.services.autostart-yakuake = {
|
||||||
|
|||||||
@ -1,5 +1,10 @@
|
|||||||
{config, pkgs, username, project, ...}:
|
{
|
||||||
let
|
config,
|
||||||
|
pkgs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
# Define the custom background package with the correct relative path
|
# Define the custom background package with the correct relative path
|
||||||
background-package = pkgs.stdenvNoCC.mkDerivation {
|
background-package = pkgs.stdenvNoCC.mkDerivation {
|
||||||
name = "background-image";
|
name = "background-image";
|
||||||
@ -12,10 +17,8 @@ let
|
|||||||
|
|
||||||
plasmaTheme = "desktop"; #Possible values are "laptop" or "desktop"
|
plasmaTheme = "desktop"; #Possible values are "laptop" or "desktop"
|
||||||
powerProfile = "laptop"; #Possible values are "laptop" or "desktop"
|
powerProfile = "laptop"; #Possible values are "laptop" or "desktop"
|
||||||
in
|
in {
|
||||||
{
|
imports = [
|
||||||
imports =
|
|
||||||
[
|
|
||||||
./autostart.nix
|
./autostart.nix
|
||||||
../modules/stylix
|
../modules/stylix
|
||||||
];
|
];
|
||||||
@ -75,7 +78,6 @@ in
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
|
|
||||||
plasma6.excludePackages = with pkgs; [
|
plasma6.excludePackages = with pkgs; [
|
||||||
kdePackages.elisa
|
kdePackages.elisa
|
||||||
];
|
];
|
||||||
|
|||||||
@ -1,7 +1,14 @@
|
|||||||
{pkgs, lib, inputs, username, project, plasmaTheme, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
imports = [
|
lib,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
plasmaTheme,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports =
|
||||||
|
[
|
||||||
./settings/common.nix
|
./settings/common.nix
|
||||||
./settings/powerProfile.nix
|
./settings/powerProfile.nix
|
||||||
]
|
]
|
||||||
|
|||||||
@ -1,5 +1,11 @@
|
|||||||
{pkgs, inputs, username, project, plasmaTheme, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
plasmaTheme,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
programs = {
|
programs = {
|
||||||
plasma = {
|
plasma = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@ -18,6 +24,24 @@
|
|||||||
accelerationProfile = "none";
|
accelerationProfile = "none";
|
||||||
scrollSpeed = 1.0;
|
scrollSpeed = 1.0;
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
name = "ROCCAT ROCCAT Kone Aimo 16K";
|
||||||
|
vendorId = "1e7d";
|
||||||
|
productId = "2e2c";
|
||||||
|
leftHanded = false;
|
||||||
|
acceleration = -1;
|
||||||
|
accelerationProfile = "none";
|
||||||
|
scrollSpeed = 1.0;
|
||||||
|
}
|
||||||
|
#{
|
||||||
|
# name = "ROCCAT ROCCAT Vulcan AIMO";
|
||||||
|
# vendorId = "1e7d";
|
||||||
|
# productId = "3098";
|
||||||
|
# leftHanded = false;
|
||||||
|
# acceleration = -1;
|
||||||
|
# accelerationProfile = "none";
|
||||||
|
# scrollSpeed = 1.0;
|
||||||
|
#}
|
||||||
];
|
];
|
||||||
|
|
||||||
shortcuts = {
|
shortcuts = {
|
||||||
@ -33,7 +57,6 @@
|
|||||||
"Switch to Next Keyboard Layout" = [];
|
"Switch to Next Keyboard Layout" = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#kaccess."Toggle Screen Reader On and Off" = "Meta+Alt+S";
|
#kaccess."Toggle Screen Reader On and Off" = "Meta+Alt+S";
|
||||||
#kcm_touchpad."Disable Touchpad" = "Touchpad Off";
|
#kcm_touchpad."Disable Touchpad" = "Touchpad Off";
|
||||||
#kcm_touchpad."Enable Touchpad" = "Touchpad On";
|
#kcm_touchpad."Enable Touchpad" = "Touchpad On";
|
||||||
@ -381,6 +404,7 @@
|
|||||||
kwinrc = {
|
kwinrc = {
|
||||||
# "Activities/LastVirtualDesktop"."0f8d8349-5b1b-4b77-bfa5-22829bfaf459" = "4a2f44cc-dfe7-45dc-8439-fe34a6866d37";
|
# "Activities/LastVirtualDesktop"."0f8d8349-5b1b-4b77-bfa5-22829bfaf459" = "4a2f44cc-dfe7-45dc-8439-fe34a6866d37";
|
||||||
# "Activities/LastVirtualDesktop".e85f493f-046d-4dca-9e07-987ecd4ca4bc = "4a2f44cc-dfe7-45dc-8439-fe34a6866d37";
|
# "Activities/LastVirtualDesktop".e85f493f-046d-4dca-9e07-987ecd4ca4bc = "4a2f44cc-dfe7-45dc-8439-fe34a6866d37";
|
||||||
|
"EdgeBarrier"."EdgeBarrier" = 15;
|
||||||
Desktops = {
|
Desktops = {
|
||||||
# Id_1 = "4a2f44cc-dfe7-45dc-8439-fe34a6866d37";
|
# Id_1 = "4a2f44cc-dfe7-45dc-8439-fe34a6866d37";
|
||||||
# Id_2 = "fc5cf4ff-2e08-4059-ac1f-7c5540efa4fc";
|
# Id_2 = "fc5cf4ff-2e08-4059-ac1f-7c5540efa4fc";
|
||||||
|
|||||||
@ -1,5 +1,11 @@
|
|||||||
{pkgs, inputs, username, project, plasmaTheme, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
plasmaTheme,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
programs = {
|
programs = {
|
||||||
plasma = {
|
plasma = {
|
||||||
overrideConfig = true;
|
overrideConfig = true;
|
||||||
@ -21,7 +27,8 @@
|
|||||||
launchers = [
|
launchers = [
|
||||||
# optional pinned apps
|
# optional pinned apps
|
||||||
"applications:org.kde.dolphin.desktop"
|
"applications:org.kde.dolphin.desktop"
|
||||||
"applications:systemsettings.desktop""applications:kitty.desktop"
|
"applications:systemsettings.desktop"
|
||||||
|
"applications:kitty.desktop"
|
||||||
"applications:firefox.desktop"
|
"applications:firefox.desktop"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,6 +1,11 @@
|
|||||||
{pkgs, inputs, username, project, plasmaTheme, ...}:
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
plasmaTheme,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
programs = {
|
programs = {
|
||||||
plasma = {
|
plasma = {
|
||||||
overrideConfig = true;
|
overrideConfig = true;
|
||||||
@ -111,13 +116,13 @@
|
|||||||
launchers = [
|
launchers = [
|
||||||
# optional pinned apps
|
# optional pinned apps
|
||||||
"applications:org.kde.dolphin.desktop"
|
"applications:org.kde.dolphin.desktop"
|
||||||
"applications:systemsettings.desktop""applications:kitty.desktop"
|
"applications:systemsettings.desktop"
|
||||||
|
"applications:kitty.desktop"
|
||||||
"applications:firefox.desktop"
|
"applications:firefox.desktop"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|||||||
@ -1,5 +1,11 @@
|
|||||||
{pkgs, inputs, username, project, powerProfile, ...}:
|
{
|
||||||
let
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
username,
|
||||||
|
project,
|
||||||
|
powerProfile,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
profiles = {
|
profiles = {
|
||||||
laptop = {
|
laptop = {
|
||||||
AC.powerProfile = "powerSaving";
|
AC.powerProfile = "powerSaving";
|
||||||
@ -14,8 +20,7 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
selectedProfile = profiles.${powerProfile};
|
selectedProfile = profiles.${powerProfile};
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
programs = {
|
programs = {
|
||||||
plasma = {
|
plasma = {
|
||||||
overrideConfig = true;
|
overrideConfig = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user