Compare commits

..

No commits in common. "bbff96f60583dbb75911404d67dbf6e0ff34e788" and "21f3af9aad90fa5a657ded189daed43ae7d6bea9" have entirely different histories.

42 changed files with 221 additions and 408 deletions

View file

@ -25,11 +25,11 @@
}, },
"bleedingpkgs": { "bleedingpkgs": {
"locked": { "locked": {
"lastModified": 1725326305, "lastModified": 1725294213,
"narHash": "sha256-trzG3WG13pOfHywgdvMBZYR16TOGfBbznPb3isymDfM=", "narHash": "sha256-mtEDY1u6xlw3xRBELGL/X0Su56x6TKxho9k5rDC20SA=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "3926acdb812e54a8ebbc302096bfff57702d5ae4", "rev": "6df34e21fb2730c45f820dc2d733076ae6976dad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -222,11 +222,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1725234343, "lastModified": 1722555600,
"narHash": "sha256-+ebgonl3NbiKD2UD0x4BszCZQ6sTfL4xioaM49o5B3Y=", "narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "567b938d64d4b4112ee253b9274472dc3a346eb6", "rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -400,11 +400,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724857454, "lastModified": 1724440431,
"narHash": "sha256-Qyl9Q4QMTLZnnBb/8OuQ9LSkzWjBU1T5l5zIzTxkkhk=", "narHash": "sha256-9etXEOUtzeMgqg1u0wp+EdwG7RpmrAZ2yX516bMj2aE=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "4509ca64f1084e73bc7a721b20c669a8d4c5ebe6", "rev": "c8a54057aae480c56e28ef3e14e4960628ac495b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -503,11 +503,11 @@
"homebrew-cask": { "homebrew-cask": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1725325813, "lastModified": 1725292825,
"narHash": "sha256-lQkDBXLX/db6HY+udVhT7x4tZFvXKdsTrOT/Aj0WeMI=", "narHash": "sha256-c/2wWSOspuoNHpSXdLM7spU6OVfvDjFB5eKVXF4UlEw=",
"owner": "homebrew", "owner": "homebrew",
"repo": "homebrew-cask", "repo": "homebrew-cask",
"rev": "6b2f8cfb4d42254bb5140469b2ccd1dafda6fc4e", "rev": "84fdcb84d65770fa48e2efc19e9fc2d7c36068fc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -519,11 +519,11 @@
"homebrew-core": { "homebrew-core": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1725326300, "lastModified": 1725293683,
"narHash": "sha256-kQusLJaCJhEBGLCRg2DRCz+dU1HqKekW9xpGF9hMOh8=", "narHash": "sha256-diX5+ev9ajHXTZ7qs1muO6lOaxwHaX9gVjCtabFdxgc=",
"owner": "homebrew", "owner": "homebrew",
"repo": "homebrew-core", "repo": "homebrew-core",
"rev": "e25f8891d66c87360a5e3fc7350715f1b092b4cf", "rev": "b4131224480d891a427cb5a500af510d4ddc0377",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -602,11 +602,11 @@
"rust-overlay": "rust-overlay_3" "rust-overlay": "rust-overlay_3"
}, },
"locked": { "locked": {
"lastModified": 1725296113, "lastModified": 1725205946,
"narHash": "sha256-efc0PIjDxo/RkrvfPBYfrcvGpqVhcaSnJ1HNFCLxIiM=", "narHash": "sha256-86q7PBqvlB6Sr7CzgfM/RgrvlqFTLb7xFgVI1cPNtZE=",
"owner": "josueBarretogit", "owner": "josueBarretogit",
"repo": "manga-tui", "repo": "manga-tui",
"rev": "5c9129a3406a62378685a57de40ee5ba2ced3cc5", "rev": "3ce3366bf3a0e66a025b3dd7e754f9f346331d82",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -662,11 +662,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724561770, "lastModified": 1724469941,
"narHash": "sha256-zv8C9RNa86CIpyHwPIVO/k+5TfM8ZbjGwOOpTe1grls=", "narHash": "sha256-+U5152FwmDD9EUOiFi5CFxCK6/yFESyDei9jEIlmUtI=",
"owner": "lnl7", "owner": "lnl7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "ac5694a0b855a981e81b4d9f14052e3ff46ca39e", "rev": "ea319a737939094b48fda9063fa3201ef2479aac",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -714,14 +714,14 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1725233747, "lastModified": 1722555339,
"narHash": "sha256-Ss8QWLXdr2JCBPcYChJhz4xJm+h/xjl4G0c0XlP6a74=", "narHash": "sha256-uFf2QeW7eAHlYXuDktm9c25OxOyCoUOQmh5SZ9amE5Q=",
"type": "tarball", "type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
} }
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
@ -803,11 +803,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1725103162, "lastModified": 1724224976,
"narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=", "narHash": "sha256-Z/ELQhrSd7bMzTO8r7NZgi9g5emh+aRKoCdaAv5fiO0=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "12228ff1752d7b7624a54e9c1af4b222b3c1073b", "rev": "c374d94f1536013ca8e92341b540eba4c22f9c62",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -865,11 +865,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1725269752, "lastModified": 1724528976,
"narHash": "sha256-AtZ9fSo2q6UeMoDy6kw6solM1B+BCABbKgCyUclsctg=", "narHash": "sha256-5W13nD/5ySIsxSvDqXHlj4bg2F3tNcYGKCGudWzpNzw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixvim", "repo": "nixvim",
"rev": "18b7597e6ca4b98a6c3f20ddc9783165d5998018", "rev": "8234ee85eaa2c8b7f2c74f5b4cdf02c4965b07fc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -888,11 +888,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724584782, "lastModified": 1723969429,
"narHash": "sha256-7FfHv7b1jwMPSu9SPY9hdxStk8E6EeSwzqdvV69U4BM=", "narHash": "sha256-BuewfNEXEf11MIkJY+uvWsdLu1dIvgJqntWChvNdALg=",
"owner": "NuschtOS", "owner": "NuschtOS",
"repo": "search", "repo": "search",
"rev": "5a08d691de30b6fc28d58ce71a5e420f2694e087", "rev": "a05d1805f2a2bc47d230e5e92aecbf69f784f3d0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -908,11 +908,11 @@
"nixvim": "nixvim" "nixvim": "nixvim"
}, },
"locked": { "locked": {
"lastModified": 1725326933, "lastModified": 1724834346,
"narHash": "sha256-Nb4p08qt7bgga8eI4aucNSsUz9VlftjpzK+I3GsWoeU=", "narHash": "sha256-IzX0QV6telnbiaj9Z1yckAGnAu6Ny1Fq1lGFUceuLGg=",
"owner": "youwen5", "owner": "youwen5",
"repo": "neovim-flake", "repo": "neovim-flake",
"rev": "59189d88dbebc19cde3d1472f4e83b572107a1ed", "rev": "11b7a7943f94daf8a35820bb8b2fa174bd0df011",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1169,11 +1169,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724833132, "lastModified": 1724338379,
"narHash": "sha256-F4djBvyNRAXGusJiNYInqR6zIMI3rvlp6WiKwsRISos=", "narHash": "sha256-kKJtaiU5Ou+e/0Qs7SICXF22DLx4V/WhG1P6+k4yeOE=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "3ffd842a5f50f435d3e603312eefa4790db46af5", "rev": "070f834771efa715f3e74cd8ab93ecc96fabc951",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -72,52 +72,41 @@
manga-tui.url = "github:josueBarretogit/manga-tui"; manga-tui.url = "github:josueBarretogit/manga-tui";
}; };
outputs = outputs = {
{
nixpkgs, nixpkgs,
nix-darwin, nix-darwin,
... ...
}@inputs: } @ inputs: let
let in {
in
{
formatter = with nixpkgs.legacyPackages; { formatter = with nixpkgs.legacyPackages; {
x86_64-linux = x86_64-linux.nixfmt-rfc-style; x86_64-linux = x86_64-linux.alejandra;
aarch64-linux = aarch64-linux.nixfmt-rfc-style; aarch64-linux = aarch64-linux.alejandra;
aarch64-darwin = aarch64-darwin.nixfmt-rfc-style; aarch64-darwin = aarch64-darwin.alejandra;
}; };
nixosConfigurations = { nixosConfigurations = {
demeter = nixpkgs.lib.nixosSystem { demeter = nixpkgs.lib.nixosSystem {
specialArgs = { specialArgs = {inherit inputs;};
inherit inputs;
};
modules = [ modules = [
./hosts/demeter ./hosts/demeter
]; ];
}; };
callisto = nixpkgs.lib.nixosSystem { callisto = nixpkgs.lib.nixosSystem {
specialArgs = { specialArgs = {inherit inputs;};
inherit inputs;
};
modules = [ modules = [
./hosts/callisto ./hosts/callisto
]; ];
}; };
adrastea = nixpkgs.lib.nixosSystem { adrastea = nixpkgs.lib.nixosSystem {
specialArgs = { specialArgs = {inherit inputs;};
inherit inputs;
};
modules = [ modules = [
./hosts/adrastea ./hosts/adrastea
]; ];
}; };
}; };
darwinConfigurations.phobos = nix-darwin.lib.darwinSystem { darwinConfigurations.phobos = nix-darwin.lib.darwinSystem {
specialArgs = { specialArgs = {inherit inputs;};
inherit inputs;
};
modules = [ modules = [
./hosts/phobos ./hosts/phobos
]; ];

View file

@ -7,8 +7,7 @@
pkgs, pkgs,
lib, lib,
... ...
}: }: {
{
imports = [ imports = [
# Include the results of the hardware scan. # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
@ -37,7 +36,7 @@
enable = true; enable = true;
keyboards = { keyboards = {
default = { default = {
ids = [ "*" ]; ids = ["*"];
settings = { settings = {
main = { main = {
capslock = "esc"; capslock = "esc";
@ -84,9 +83,7 @@
LC_TIME = "en_US.UTF-8"; LC_TIME = "en_US.UTF-8";
}; };
systemd.services = { systemd.services = {NetworkManager-wait-online.enable = false;};
NetworkManager-wait-online.enable = false;
};
# Enable the X11 windowing system. # Enable the X11 windowing system.
# You can disable this if you're only using the Wayland session. # You can disable this if you're only using the Wayland session.
@ -94,11 +91,7 @@
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
libraries = with pkgs; [ libraries = with pkgs; [icu xorg.libXtst xorg.libXi];
icu
xorg.libXtst
xorg.libXi
];
}; };
hardware.nvidia = { hardware.nvidia = {
@ -121,7 +114,7 @@
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable; hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable;
services.xserver.videoDrivers = [ "nvidia" ]; services.xserver.videoDrivers = ["nvidia"];
# services.desktopManager.plasma6.enable = true; # services.desktopManager.plasma6.enable = true;
@ -141,18 +134,12 @@
users.users.youwen = { users.users.youwen = {
isNormalUser = true; isNormalUser = true;
description = "Youwen Wu"; description = "Youwen Wu";
extraGroups = [ "networkmanager" ]; extraGroups = ["networkmanager"];
}; };
nix.settings = { nix.settings = {
trusted-users = [ trusted-users = ["root" "youwen"];
"root" experimental-features = ["nix-command" "flakes"];
"youwen"
];
experimental-features = [
"nix-command"
"flakes"
];
}; };
services.udev.extraRules = '' services.udev.extraRules = ''

View file

@ -2,8 +2,7 @@
inputs, inputs,
system, system,
... ...
}: }: {
{
imports = with inputs; [ imports = with inputs; [
./configuration.nix ./configuration.nix
../../modules/linux/gaming ../../modules/linux/gaming
@ -22,9 +21,7 @@
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup"; home-manager.backupFileExtension = "backup";
home-manager.extraSpecialArgs = { home-manager.extraSpecialArgs = {inherit inputs;};
inherit inputs;
};
home-manager.users.youwen = { home-manager.users.youwen = {
imports = [ imports = [
./home-manager-extras ./home-manager-extras

View file

@ -7,20 +7,13 @@
pkgs, pkgs,
modulesPath, modulesPath,
... ...
}: }: {
{ imports = [(modulesPath + "/installer/scan/not-detected.nix")];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "usbhid" "usb_storage" "sd_mod"];
"nvme" boot.initrd.kernelModules = [];
"xhci_pci" boot.kernelModules = ["kvm-amd"];
"usbhid" boot.extraModulePackages = [];
"usb_storage"
"sd_mod"
];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/01983a52-5693-4cda-ad2e-5a406776bfb9"; device = "/dev/disk/by-uuid/01983a52-5693-4cda-ad2e-5a406776bfb9";
@ -32,13 +25,10 @@
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/3FCB-9D60"; device = "/dev/disk/by-uuid/3FCB-9D60";
fsType = "vfat"; fsType = "vfat";
options = [ options = ["fmask=0022" "dmask=0022"];
"fmask=0022"
"dmask=0022"
];
}; };
swapDevices = [ { device = "/dev/disk/by-uuid/f28d0752-feab-4591-899e-e5deac3712d0"; } ]; swapDevices = [{device = "/dev/disk/by-uuid/f28d0752-feab-4591-899e-e5deac3712d0";}];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's
@ -49,5 +39,6 @@
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.amd.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
} }

View file

@ -1,6 +1,3 @@
{ pkgs, ... }: {pkgs, ...}: {
{ wayland.windowManager.hyprland.settings.monitor = pkgs.lib.mkForce ["eDP-1,2560x1440@165,0x0,1.6"];
wayland.windowManager.hyprland.settings.monitor = pkgs.lib.mkForce [
"eDP-1,2560x1440@165,0x0,1.6"
];
} }

View file

@ -6,8 +6,7 @@
inputs, inputs,
pkgs, pkgs,
... ...
}: }: {
{
imports = [ imports = [
# Include the results of the hardware scan. # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
@ -27,7 +26,7 @@
options hid_apple iso_layout=0 options hid_apple iso_layout=0
''; '';
boot.kernelParams = [ "apple_dcp.show_notch=1" ]; boot.kernelParams = ["apple_dcp.show_notch=1"];
networking.hostName = "callisto"; # Define your hostname. networking.hostName = "callisto"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
@ -37,11 +36,9 @@
settings.General.EnableNetworkConfiguration = true; settings.General.EnableNetworkConfiguration = true;
}; };
nixpkgs.overlays = nixpkgs.overlays = let
let
stablepkgs = inputs.stablepkgs.legacyPackages.${pkgs.system}; stablepkgs = inputs.stablepkgs.legacyPackages.${pkgs.system};
in in [
[
inputs.apple-silicon.overlays.apple-silicon-overlay inputs.apple-silicon.overlays.apple-silicon-overlay
inputs.vesktop-bin.overlays.default inputs.vesktop-bin.overlays.default
]; ];
@ -79,11 +76,7 @@
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
libraries = with pkgs; [ libraries = with pkgs; [icu xorg.libXtst xorg.libXi];
icu
xorg.libXtst
xorg.libXi
];
}; };
# Configure keymap in X11 # Configure keymap in X11
@ -103,18 +96,12 @@
isNormalUser = true; isNormalUser = true;
description = "Youwen Wu"; description = "Youwen Wu";
# Wheel is required for iwctl as non-root # Wheel is required for iwctl as non-root
extraGroups = [ "wheel" ]; extraGroups = ["wheel"];
}; };
nix.settings = { nix.settings = {
trusted-users = [ trusted-users = ["root" "youwen"];
"root" experimental-features = ["nix-command" "flakes"];
"youwen"
];
experimental-features = [
"nix-command"
"flakes"
];
}; };
services.udev.extraRules = '' services.udev.extraRules = ''
@ -141,7 +128,7 @@
enable = true; enable = true;
keyboards = { keyboards = {
default = { default = {
ids = [ "*" ]; ids = ["*"];
settings = { settings = {
main = { main = {
capslock = "esc"; capslock = "esc";

View file

@ -2,8 +2,7 @@
inputs, inputs,
system, system,
... ...
}: }: {
{
imports = with inputs; [ imports = with inputs; [
./configuration.nix ./configuration.nix
../../modules/linux/audio ../../modules/linux/audio

View file

@ -7,19 +7,15 @@
pkgs, pkgs,
modulesPath, modulesPath,
... ...
}: }: {
{
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ boot.initrd.availableKernelModules = ["usb_storage" "sdhci_pci"];
"usb_storage" boot.initrd.kernelModules = [];
"sdhci_pci" boot.kernelModules = [];
]; boot.extraModulePackages = [];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ ];
boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/mapper/crypted"; device = "/dev/mapper/crypted";
@ -31,13 +27,10 @@
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/852F-07F1"; device = "/dev/disk/by-uuid/852F-07F1";
fsType = "vfat"; fsType = "vfat";
options = [ options = ["fmask=0022" "dmask=0022"];
"fmask=0022"
"dmask=0022"
];
}; };
swapDevices = [ ]; swapDevices = [];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -1,4 +1,3 @@
{ pkgs, ... }: {pkgs, ...}: {
{
home.file.".config/neofetch/config.conf".source = ./neofetch-asahi.conf; home.file.".config/neofetch/config.conf".source = ./neofetch-asahi.conf;
} }

View file

@ -7,8 +7,7 @@
pkgs, pkgs,
lib, lib,
... ...
}: }: {
{
imports = [ imports = [
# Include the results of the hardware scan. # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
@ -66,9 +65,7 @@
LC_TIME = "en_US.UTF-8"; LC_TIME = "en_US.UTF-8";
}; };
systemd.services = { systemd.services = {NetworkManager-wait-online.enable = false;};
NetworkManager-wait-online.enable = false;
};
# Enable the X11 windowing system. # Enable the X11 windowing system.
# You can disable this if you're only using the Wayland session. # You can disable this if you're only using the Wayland session.
@ -76,11 +73,7 @@
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
libraries = with pkgs; [ libraries = with pkgs; [icu xorg.libXtst xorg.libXi];
icu
xorg.libXtst
xorg.libXi
];
}; };
hardware.nvidia = { hardware.nvidia = {
@ -102,7 +95,7 @@
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable; hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable;
services.xserver.videoDrivers = [ "nvidia" ]; services.xserver.videoDrivers = ["nvidia"];
services.flatpak.enable = true; services.flatpak.enable = true;
@ -124,18 +117,12 @@
users.users.youwen = { users.users.youwen = {
isNormalUser = true; isNormalUser = true;
description = "Youwen Wu"; description = "Youwen Wu";
extraGroups = [ "networkmanager" ]; extraGroups = ["networkmanager"];
}; };
nix.settings = { nix.settings = {
trusted-users = [ trusted-users = ["root" "youwen"];
"root" experimental-features = ["nix-command" "flakes"];
"youwen"
];
experimental-features = [
"nix-command"
"flakes"
];
}; };
services.udev.extraRules = '' services.udev.extraRules = ''

View file

@ -2,8 +2,7 @@
inputs, inputs,
system, system,
... ...
}: }: {
{
imports = with inputs; [ imports = with inputs; [
./configuration.nix ./configuration.nix
../../modules/linux/gaming ../../modules/linux/gaming
@ -24,9 +23,7 @@
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup"; home-manager.backupFileExtension = "backup";
home-manager.extraSpecialArgs = { home-manager.extraSpecialArgs = {inherit inputs;};
inherit inputs;
};
home-manager.users.youwen = { home-manager.users.youwen = {
imports = [ imports = [
../../users/youwen/linux/desktop ../../users/youwen/linux/desktop

View file

@ -7,23 +7,15 @@
pkgs, pkgs,
modulesPath, modulesPath,
... ...
}: }: {
{
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod"];
"xhci_pci" boot.initrd.kernelModules = [];
"ahci" boot.kernelModules = ["kvm-intel"];
"nvme" boot.extraModulePackages = [];
"usbhid"
"usb_storage"
"sd_mod"
];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/5a339a7f-8668-42d7-9ecc-d7a8f1d3f7b2"; device = "/dev/disk/by-uuid/5a339a7f-8668-42d7-9ecc-d7a8f1d3f7b2";
@ -35,14 +27,11 @@
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/27EE-D950"; device = "/dev/disk/by-uuid/27EE-D950";
fsType = "vfat"; fsType = "vfat";
options = [ options = ["fmask=0022" "dmask=0022"];
"fmask=0022"
"dmask=0022"
];
}; };
swapDevices = [ swapDevices = [
{ device = "/dev/disk/by-uuid/670fc084-d593-44b3-aed9-78d95fec71de"; } {device = "/dev/disk/by-uuid/670fc084-d593-44b3-aed9-78d95fec71de";}
]; ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking

View file

@ -2,12 +2,8 @@
inputs, inputs,
pkgs, pkgs,
... ...
}: }: {
{ wayland.windowManager.hyprland.settings.monitor = ["DP-1,2560x1440@165,1920x0,auto" "HDMI-A-1,1920x1080@60,0x0,1"];
wayland.windowManager.hyprland.settings.monitor = [
"DP-1,2560x1440@165,1920x0,auto"
"HDMI-A-1,1920x1080@60,0x0,1"
];
# wayland.windowManager.hyprland.package = inputs.stablepkgs.legacyPackages.${pkgs.system}.hyprland; # wayland.windowManager.hyprland.package = inputs.stablepkgs.legacyPackages.${pkgs.system}.hyprland;
wayland.windowManager.hyprland.settings.render.explicit_sync = 0; wayland.windowManager.hyprland.settings.render.explicit_sync = 0;
} }

View file

@ -3,14 +3,13 @@
config, config,
pkgs, pkgs,
... ...
}: }: {
{
# Expose the package set, including overlays, for convenience. # Expose the package set, including overlays, for convenience.
# darwinPackages = inputs.self.darwinConfigurations."Youwens-MacBook-Pro".pkgs; # darwinPackages = inputs.self.darwinConfigurations."Youwens-MacBook-Pro".pkgs;
# List packages installed in system profile. To search by name, run: # List packages installed in system profile. To search by name, run:
# $ nix-env -qaP | grep wget # $ nix-env -qaP | grep wget
environment.systemPackages = with pkgs; [ ]; environment.systemPackages = with pkgs; [];
# Use a custom configuration.nix location. # Use a custom configuration.nix location.
# $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix # $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix
@ -29,7 +28,8 @@
programs.fish.enable = true; programs.fish.enable = true;
programs.bash.enable = true; programs.bash.enable = true;
system.configurationRevision = config.self.rev or config.self.dirtyRev or null; system.configurationRevision =
config.self.rev or config.self.dirtyRev or null;
nixpkgs.hostPlatform = "aarch64-darwin"; nixpkgs.hostPlatform = "aarch64-darwin";
@ -50,8 +50,8 @@
noto-fonts noto-fonts
noto-fonts-cjk noto-fonts-cjk
noto-fonts-emoji noto-fonts-emoji
(nerdfonts.override { fonts = [ "CascadiaCode" ]; }) (nerdfonts.override {fonts = ["CascadiaCode"];})
(google-fonts.override { fonts = [ "Lora" ]; }) (google-fonts.override {fonts = ["Lora"];})
]; ];
}; };
} }

View file

@ -1,12 +1,9 @@
{ inputs, ... }: {inputs, ...}: {
{
imports = with inputs; [ imports = with inputs; [
./configuration.nix ./configuration.nix
home-manager.darwinModules.home-manager home-manager.darwinModules.home-manager
{ {
extraSpecialArgs = { extraSpecialArgs = {inherit inputs;};
inherit inputs;
};
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.youwen.imports = [ home-manager.users.youwen.imports = [

View file

@ -1,5 +1,4 @@
{ inputs, ... }: {inputs, ...}: {
{
nix-homebrew = { nix-homebrew = {
enable = true; enable = true;
enableRosetta = true; enableRosetta = true;

View file

@ -2,8 +2,7 @@
config, config,
pkgs, pkgs,
... ...
}: }: {
{
services.yabai = { services.yabai = {
enable = true; enable = true;
enableScriptingAddition = true; enableScriptingAddition = true;

View file

@ -2,8 +2,7 @@
inputs, inputs,
pkgs, pkgs,
... ...
}: }: {
{
environment.systemPackages = [ environment.systemPackages = [
inputs.personal-neovim.packages.${pkgs.system}.default inputs.personal-neovim.packages.${pkgs.system}.default
]; ];
@ -14,7 +13,7 @@
enable = true; enable = true;
extraRules = [ extraRules = [
{ {
users = [ "youwen" ]; users = ["youwen"];
keepEnv = true; keepEnv = true;
persist = true; persist = true;
} }

View file

@ -1,7 +1,6 @@
{ pkgs, ... }: {pkgs, ...}: {
{
xdg.portal = { xdg.portal = {
enable = true; enable = true;
extraPortals = with pkgs; [ xdg-desktop-portal-gtk ]; extraPortals = with pkgs; [xdg-desktop-portal-gtk];
}; };
} }

View file

@ -1,19 +1,18 @@
{ pkgs, ... }: {pkgs, ...}: {
{
fonts = { fonts = {
enableDefaultPackages = true; enableDefaultPackages = true;
fontconfig = { fontconfig = {
defaultFonts = { defaultFonts = {
serif = [ "Noto Serif" ]; serif = ["Noto Serif"];
sansSerif = [ "Noto Sans" ]; sansSerif = ["Noto Sans"];
}; };
}; };
packages = with pkgs; [ packages = with pkgs; [
noto-fonts noto-fonts
noto-fonts-cjk noto-fonts-cjk
noto-fonts-emoji noto-fonts-emoji
(nerdfonts.override { fonts = [ "CascadiaCode" ]; }) (nerdfonts.override {fonts = ["CascadiaCode"];})
(google-fonts.override { fonts = [ "Lora" ]; }) (google-fonts.override {fonts = ["Lora"];})
]; ];
}; };
} }

View file

@ -1,5 +1,4 @@
{ pkgs, ... }: {pkgs, ...}: {
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
ryujinx ryujinx
]; ];
@ -15,8 +14,8 @@
nixpkgs.config.packageOverrides = pkgs: { nixpkgs.config.packageOverrides = pkgs: {
steam = pkgs.steam.override { steam = pkgs.steam.override {
extraPkgs = extraPkgs = pkgs:
pkgs: with pkgs; [ with pkgs; [
xorg.libXcursor xorg.libXcursor
xorg.libXi xorg.libXi
xorg.libXinerama xorg.libXinerama

View file

@ -1,5 +1,4 @@
{ pkgs, ... }: {pkgs, ...}: {
{
services.greetd = { services.greetd = {
enable = true; enable = true;
settings = { settings = {

View file

@ -11,8 +11,7 @@ let
to = 42872; to = 42872;
} }
]; ];
in in {
{
services.openssh.enable = true; services.openssh.enable = true;
networking.firewall = { networking.firewall = {
allowedTCPPorts = universalAllowedPorts; allowedTCPPorts = universalAllowedPorts;
@ -21,8 +20,5 @@ in
allowedTCPPortRanges = universalAllowedRanges; allowedTCPPortRanges = universalAllowedRanges;
}; };
networking.firewall.enable = true; networking.firewall.enable = true;
networking.nameservers = [ networking.nameservers = ["1.1.1.1" "1.0.0.1"];
"1.1.1.1"
"1.0.0.1"
];
} }

View file

@ -1,5 +1,4 @@
{ pkgs, ... }: {pkgs, ...}: {
{
services.spotifyd = { services.spotifyd = {
enable = true; enable = true;
# settings = {global = 320;}; # settings = {global = 320;};

View file

@ -2,13 +2,11 @@
inputs, inputs,
pkgs, pkgs,
... ...
}: }: let
let
stablepkgs = inputs.stablepkgs.legacyPackages.${pkgs.system}; stablepkgs = inputs.stablepkgs.legacyPackages.${pkgs.system};
bleedingpkgs = inputs.bleedingpkgs.legacyPackages.${pkgs.system}; bleedingpkgs = inputs.bleedingpkgs.legacyPackages.${pkgs.system};
nixpkgs-small = inputs.nixpkgs-unstable-small.legacyPackages.${pkgs.system}; nixpkgs-small = inputs.nixpkgs-unstable-small.legacyPackages.${pkgs.system};
in in {
{
nixpkgs.overlays = [ nixpkgs.overlays = [
(self: super: { (self: super: {
xdg-desktop-portal-hyprland = nixpkgs-small.xdg-desktop-portal-hyprland; xdg-desktop-portal-hyprland = nixpkgs-small.xdg-desktop-portal-hyprland;

View file

@ -1,5 +1,4 @@
{ pkgs, ... }: {pkgs, ...}: {
{
home.file.".essentials" = { home.file.".essentials" = {
source = ./essentials; source = ./essentials;
recursive = true; recursive = true;
@ -16,9 +15,7 @@
''; '';
}; };
programs.fzf = { programs.fzf = {enable = true;};
enable = true;
};
programs.git = { programs.git = {
enable = true; enable = true;
@ -61,7 +58,7 @@
programs.gh = { programs.gh = {
enable = true; enable = true;
extensions = [ pkgs.github-copilot-cli ]; extensions = [pkgs.github-copilot-cli];
}; };
programs.oh-my-posh = { programs.oh-my-posh = {

View file

@ -1 +1 @@
{ imports = [ ./core.nix ]; } {imports = [./core.nix];}

View file

@ -3,8 +3,7 @@
config, config,
pkgs, pkgs,
... ...
}: }: {
{
home.username = "youwen"; home.username = "youwen";
home.homeDirectory = "/Users/youwen"; home.homeDirectory = "/Users/youwen";

View file

@ -2,8 +2,7 @@
inputs, inputs,
pkgs, pkgs,
... ...
}: }: {
{
home.username = "youwen"; home.username = "youwen";
home.homeDirectory = "/home/youwen"; home.homeDirectory = "/home/youwen";

View file

@ -3,8 +3,7 @@
inputs, inputs,
system, system,
... ...
}: }: {
{
home.packages = with pkgs; [ home.packages = with pkgs; [
wl-clipboard wl-clipboard
grim grim
@ -26,7 +25,7 @@
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
settings = { settings = {
exec-once = [ "waypaper --restore" ]; exec-once = ["waypaper --restore"];
"$mod" = "SUPER"; "$mod" = "SUPER";
"$Left" = "H"; "$Left" = "H";
"$Right" = "L"; "$Right" = "L";
@ -121,7 +120,9 @@
",XF86AudioRewind, exec, playerctl previous" ",XF86AudioRewind, exec, playerctl previous"
] ]
++ ( ++ (
if pkgs.system != "aarch64-linux" then [ "$mod, F, exec, zen" ] else [ "$mod, F, exec, floorp" ] if pkgs.system != "aarch64-linux"
then ["$mod, F, exec, zen"]
else ["$mod, F, exec, librewolf"]
); );
bindm = [ bindm = [
"$mod, mouse:272, movewindow" "$mod, mouse:272, movewindow"
@ -142,7 +143,6 @@
]; ];
windowrulev2 = [ windowrulev2 = [
"opacity 0.90 0.90,class:^(librewolf)$" "opacity 0.90 0.90,class:^(librewolf)$"
"opacity 0.90 0.90,class:^(floorp)$"
"opacity 0.90 0.90,class:^(zen-alpha)$" "opacity 0.90 0.90,class:^(zen-alpha)$"
"opacity 0.90 0.90,class:^(Brave-browser)$" "opacity 0.90 0.90,class:^(Brave-browser)$"
"opacity 0.80 0.80,class:^(Steam)$" "opacity 0.80 0.80,class:^(Steam)$"
@ -193,7 +193,6 @@
"float,class:^(org.kde.dolphin)$,title:^(Copying Dolphin)$" "float,class:^(org.kde.dolphin)$,title:^(Copying Dolphin)$"
"float,title:^(Picture-in-Picture)$" "float,title:^(Picture-in-Picture)$"
"float,class:^(librewolf)$,title:^(Library)$" "float,class:^(librewolf)$,title:^(Library)$"
"float,class:^(floorp)$,title:^(Library)$"
"float,class:^(zen-alpha)$,title:^(Library)$" "float,class:^(zen-alpha)$,title:^(Library)$"
"float,title:^(Extension: (Bitwarden Password Manager))$" "float,title:^(Extension: (Bitwarden Password Manager))$"
"float,class:^(vlc)$" "float,class:^(vlc)$"

View file

@ -1 +1 @@
{ imports = [ ../common.nix ]; } {imports = [../common.nix];}

View file

@ -1,6 +1,5 @@
{ lib, ... }: {lib, ...}: {
{ imports = [../common.nix];
imports = [ ../common.nix ];
wayland.windowManager.hyprland.settings.input.touchpad = { wayland.windowManager.hyprland.settings.input.touchpad = {
natural_scroll = true; natural_scroll = true;
disable_while_typing = true; disable_while_typing = true;

View file

@ -1,12 +1,5 @@
{ pkgs, ... }: {pkgs, ...}: {
{ imports = [../theming ../home.nix ../programs ../hyprland/laptop ../waybar/laptop];
imports = [
../theming
../home.nix
../programs
../hyprland/laptop
../waybar/laptop
];
# some overrides for laptop specifically # some overrides for laptop specifically
programs.kitty.settings.font_size = pkgs.lib.mkForce 11; programs.kitty.settings.font_size = pkgs.lib.mkForce 11;

View file

@ -1,8 +1,3 @@
{ pkgs, ... }: {pkgs, ...}: let
let
createCommon = import ../common-packages.nix; createCommon = import ../common-packages.nix;
in in {home.packages = (createCommon pkgs) ++ [];}
{
home.packages = (createCommon pkgs) ++ (with pkgs; [ floorp ]);
}

View file

@ -1,4 +1,5 @@
pkgs: with pkgs; [ pkgs:
with pkgs; [
neofetch neofetch
# archives # archives

View file

@ -2,16 +2,13 @@
pkgs, pkgs,
inputs, inputs,
... ...
}: }: let
let
createCommon = import ../common-packages.nix; createCommon = import ../common-packages.nix;
zen-browser = inputs.zen-browser.packages.${pkgs.system}.specific; zen-browser = inputs.zen-browser.packages.${pkgs.system}.specific;
in in {
{
home.packages = home.packages =
(createCommon pkgs) (createCommon pkgs)
++ ( ++ (with pkgs;
with pkgs;
[ [
bitwarden-desktop bitwarden-desktop
modrinth-app modrinth-app
@ -20,17 +17,16 @@ in
sbctl sbctl
r2modman r2modman
] ]
++ [ zen-browser ] ++ [zen-browser]);
);
xdg.mimeApps = { xdg.mimeApps = {
enable = true; enable = true;
defaultApplications = { defaultApplications = {
"text/html" = [ "zen.desktop" ]; "text/html" = ["zen.desktop"];
"x-scheme-handler/http" = [ "zen.desktop" ]; "x-scheme-handler/http" = ["zen.desktop"];
"x-scheme-handler/https" = [ "zen.desktop" ]; "x-scheme-handler/https" = ["zen.desktop"];
"x-scheme-handler/about" = [ "zen.desktop" ]; "x-scheme-handler/about" = ["zen.desktop"];
"x-scheme-handler/unknown" = [ "zen.desktop" ]; "x-scheme-handler/unknown" = ["zen.desktop"];
}; };
}; };

View file

@ -2,8 +2,7 @@
pkgs, pkgs,
inputs, inputs,
... ...
}: }: {
{
programs.kitty = { programs.kitty = {
enable = true; enable = true;
theme = "Tokyo Night"; theme = "Tokyo Night";
@ -27,6 +26,17 @@
}; };
}; };
programs.librewolf = {
enable = true;
settings = {
"webgl.disabled" = false;
"privacy.resistFingerprinting" = false;
"privacy.clearOnShutdown.history" = false;
"privacy.clearOnShutdown.cookies" = false;
"network.cookie.lifetimePolicy" = 0;
};
};
# programs.firefox = { # programs.firefox = {
# enable = true; # enable = true;
# # package = pkgs.librewolf; # # package = pkgs.librewolf;

View file

@ -2,11 +2,9 @@
inputs, inputs,
pkgs, pkgs,
... ...
}: }: let
let
spicepkgs = inputs.spicetify.legacyPackages.${pkgs.system}; spicepkgs = inputs.spicetify.legacyPackages.${pkgs.system};
in in {
{
imports = [ imports = [
inputs.spicetify.homeManagerModules.default inputs.spicetify.homeManagerModules.default
]; ];

View file

@ -1,6 +1,5 @@
{ pkgs, ... }: {pkgs, ...}: {
{ imports = [./catppuccin.nix];
imports = [ ./catppuccin.nix ];
gtk = { gtk = {
enable = true; enable = true;
@ -9,9 +8,7 @@
name = "Bibata-Modern-Ice"; name = "Bibata-Modern-Ice";
size = 26; size = 26;
}; };
iconTheme = { iconTheme = {name = "Papirus-Dark";};
name = "Papirus-Dark";
};
}; };
qt = { qt = {

View file

@ -24,8 +24,8 @@
reload_style_on_change = true; reload_style_on_change = true;
modules-left = [ "hyprland/workspaces" ]; modules-left = ["hyprland/workspaces"];
modules-center = [ "hyprland/window" ]; modules-center = ["hyprland/window"];
modules-right = [ modules-right = [
"tray" "tray"
"idle_inhibitor" "idle_inhibitor"
@ -75,31 +75,13 @@
on-click = "pamixer -t"; on-click = "pamixer -t";
on-scroll-up = "pamixer set 5%+"; on-scroll-up = "pamixer set 5%+";
on-scroll-down = "pamixer set 5%-"; on-scroll-down = "pamixer set 5%-";
format-icons = [ format-icons = ["" "" "" "" ""];
""
""
""
""
""
];
}; };
battery = { battery = {
interval = 10; interval = 10;
format = "{icon}{capacity}%"; format = "{icon}{capacity}%";
format-icons = [ format-icons = ["󰂎" "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹"];
"󰂎"
"󰁺"
"󰁻"
"󰁼"
"󰁽"
"󰁾"
"󰁿"
"󰂀"
"󰂁"
"󰂂"
"󰁹"
];
tooltip = true; tooltip = true;
tooltip-format = "{timeTo}"; tooltip-format = "{timeTo}";
}; };
@ -133,18 +115,7 @@
"hyprland/workspaces" = { "hyprland/workspaces" = {
show-special = true; show-special = true;
persistent-workspaces = { persistent-workspaces = {
"*" = [ "*" = [1 2 3 4 5 6 7 8 9 10];
1
2
3
4
5
6
7
8
9
10
];
}; };
format = "{icon}"; format = "{icon}";
format-icons = { format-icons = {
@ -160,7 +131,7 @@
icon-size = 20; icon-size = 20;
max-length = 50; max-length = 50;
rewrite = { rewrite = {
"(.*) Ablaze Floorp" = "$1"; "(.*) LibreWolf" = "$1";
"(.*) Zen Browser" = "$1"; "(.*) Zen Browser" = "$1";
"^$" = "👾"; "^$" = "👾";
}; };

View file

@ -24,10 +24,7 @@
reload_style_on_change = true; reload_style_on_change = true;
modules-left = [ modules-left = ["hyprland/workspaces" "hyprland/window"];
"hyprland/workspaces"
"hyprland/window"
];
modules-right = [ modules-right = [
"tray" "tray"
"idle_inhibitor" "idle_inhibitor"
@ -77,31 +74,13 @@
on-click = "pamixer -t"; on-click = "pamixer -t";
on-scroll-up = "pamixer set 5%+"; on-scroll-up = "pamixer set 5%+";
on-scroll-down = "pamixer set 5%-"; on-scroll-down = "pamixer set 5%-";
format-icons = [ format-icons = ["" "" "" "" ""];
""
""
""
""
""
];
}; };
battery = { battery = {
interval = 10; interval = 10;
format = "{icon} {capacity}%"; format = "{icon} {capacity}%";
format-icons = [ format-icons = ["󰂎" "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹"];
"󰂎"
"󰁺"
"󰁻"
"󰁼"
"󰁽"
"󰁾"
"󰁿"
"󰂀"
"󰂁"
"󰂂"
"󰁹"
];
tooltip = true; tooltip = true;
tooltip-format = "{timeTo}"; tooltip-format = "{timeTo}";
}; };
@ -135,18 +114,7 @@
"hyprland/workspaces" = { "hyprland/workspaces" = {
show-special = true; show-special = true;
persistent-workspaces = { persistent-workspaces = {
"*" = [ "*" = [1 2 3 4 5 6 7 8 9 10];
1
2
3
4
5
6
7
8
9
10
];
}; };
format = "{icon}"; format = "{icon}";
format-icons = { format-icons = {