chore: switch to alejandra and format

This commit is contained in:
Youwen Wu 2024-08-16 06:42:35 -07:00
parent 9062a9d3ed
commit 26439134dd
Signed by: youwen5
GPG key ID: 865658ED1FE61EC3
29 changed files with 342 additions and 315 deletions

280
flake.nix
View file

@ -28,8 +28,7 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
lix-module = { lix-module = {
url = url = "https://git.lix.systems/lix-project/nixos-module/archive/2.90.0.tar.gz";
"https://git.lix.systems/lix-project/nixos-module/archive/2.90.0.tar.gz";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
apple-silicon = { apple-silicon = {
@ -38,146 +37,157 @@
}; };
}; };
outputs = { self, nixpkgs, home-manager, catppuccin, lanzaboote, stablepkgs outputs = {
, bleedingpkgs, lix-module, nix-darwin, nix-homebrew, apple-silicon, ... self,
}@inputs: rec { nixpkgs,
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt; home-manager,
nixosConfigurations = { catppuccin,
demeter = nixpkgs.lib.nixosSystem { lanzaboote,
specialArgs = { inherit inputs; }; stablepkgs,
system = "x86_64-linux"; bleedingpkgs,
modules = [ lix-module,
./hosts/demeter nix-darwin,
./modules/nixos/gaming nix-homebrew,
./modules/nixos/audio apple-silicon,
./modules/nixos/networking ...
./modules/nixos/fonts } @ inputs: rec {
./modules/nixos/greeter formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.alejandra;
./modules/nixos/core nixosConfigurations = {
demeter = nixpkgs.lib.nixosSystem {
catppuccin.nixosModules.catppuccin specialArgs = {inherit inputs;};
lix-module.nixosModules.default system = "x86_64-linux";
lanzaboote.nixosModules.lanzaboote
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
home-manager.users.youwen = {
imports = [
./users/youwen/linux/desktop
./users/youwen/linux/packages/x86_64
./users/youwen/linux/programs
./users/youwen/common/neofetch
./users/youwen/common
inputs.catppuccin.homeManagerModules.catppuccin
];
};
}
];
};
callisto = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
system = "aarch64-linux";
modules = [
./hosts/callisto
./modules/nixos/audio
./modules/nixos/networking
./modules/nixos/fonts
./modules/nixos/greeter
./modules/nixos/core
apple-silicon.nixosModules.apple-silicon-support
catppuccin.nixosModules.catppuccin
lix-module.nixosModules.default
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
home-manager.users.youwen = {
imports = [
./users/youwen/common
./users/youwen/common/neofetch/asahi-only.nix
./users/youwen/linux/laptop
./users/youwen/linux/packages/aarch-64
inputs.catppuccin.homeManagerModules.catppuccin
];
};
}
{
nixpkgs.overlays = [
(self: super: {
signal-desktop =
bleedingpkgs.legacyPackages.${self.system}.signal-desktop;
})
];
}
];
};
adrastea = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
system = "x86_64-linux";
modules = [
./hosts/adrastea
./modules/nixos/gaming
./modules/nixos/audio
./modules/nixos/networking
./modules/nixos/fonts
./modules/nixos/greeter
./modules/nixos/core
catppuccin.nixosModules.catppuccin
lix-module.nixosModules.default
# lanzaboote.nixosModules.lanzaboote
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
home-manager.users.youwen = {
imports = [
./users/youwen/linux/laptop
./users/youwen/linux/packages/x86_64
./users/youwen/linux/programs
./users/youwen/common
./users/youwen/common/neofetch
./hosts/adrastea/home-manager-overrides.nix
inputs.catppuccin.homeManagerModules.catppuccin
];
};
}
];
};
};
formatter.aarch64-darwin = nixpkgs.legacyPackages.aarch64-darwin.nixfmt;
formatter.aarch64-linux = nixpkgs.legacyPackages.aarch64-linux.nixfmt;
# Build darwin flake using:
# $ darwin-rebuild build --flake .#Youwens-MacBook-Pro
darwinConfigurations.phobos = nix-darwin.lib.darwinSystem {
specialArgs = { inherit inputs; };
modules = [ modules = [
./hosts/phobos ./hosts/demeter
home-manager.darwinModules.home-manager ./modules/nixos/gaming
./modules/nixos/audio
./modules/nixos/networking
./modules/nixos/fonts
./modules/nixos/greeter
./modules/nixos/core
catppuccin.nixosModules.catppuccin
lix-module.nixosModules.default
lanzaboote.nixosModules.lanzaboote
home-manager.nixosModules.home-manager
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.youwen.imports = [
./users/youwen/darwin/darwin-home.nix
./users/youwen/common/core.nix
./users/youwen/common/neofetch
];
home-manager.backupFileExtension = "backup"; home-manager.backupFileExtension = "backup";
home-manager.users.youwen = {
# Optionally, use home-manager.extraSpecialArgs to pass imports = [
# arguments to home.nix ./users/youwen/linux/desktop
./users/youwen/linux/packages/x86_64
./users/youwen/linux/programs
./users/youwen/common/neofetch
./users/youwen/common
inputs.catppuccin.homeManagerModules.catppuccin
];
};
}
];
};
callisto = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
system = "aarch64-linux";
modules = [
./hosts/callisto
./modules/nixos/audio
./modules/nixos/networking
./modules/nixos/fonts
./modules/nixos/greeter
./modules/nixos/core
apple-silicon.nixosModules.apple-silicon-support
catppuccin.nixosModules.catppuccin
lix-module.nixosModules.default
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
home-manager.users.youwen = {
imports = [
./users/youwen/common
./users/youwen/common/neofetch/asahi-only.nix
./users/youwen/linux/laptop
./users/youwen/linux/packages/aarch-64
inputs.catppuccin.homeManagerModules.catppuccin
];
};
}
{
nixpkgs.overlays = [
(self: super: {
signal-desktop =
bleedingpkgs.legacyPackages.${self.system}.signal-desktop;
})
];
}
];
};
adrastea = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
system = "x86_64-linux";
modules = [
./hosts/adrastea
./modules/nixos/gaming
./modules/nixos/audio
./modules/nixos/networking
./modules/nixos/fonts
./modules/nixos/greeter
./modules/nixos/core
catppuccin.nixosModules.catppuccin
lix-module.nixosModules.default
# lanzaboote.nixosModules.lanzaboote
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
home-manager.users.youwen = {
imports = [
./users/youwen/linux/laptop
./users/youwen/linux/packages/x86_64
./users/youwen/linux/programs
./users/youwen/common
./users/youwen/common/neofetch
./hosts/adrastea/home-manager-overrides.nix
inputs.catppuccin.homeManagerModules.catppuccin
];
};
} }
nix-homebrew.darwinModules.nix-homebrew
./modules/darwin/homebrew.nix
./modules/darwin/yabai.nix
./modules/darwin/skhd.nix
]; ];
}; };
}; };
formatter.aarch64-darwin = nixpkgs.legacyPackages.aarch64-darwin.alejandra;
formatter.aarch64-linux = nixpkgs.legacyPackages.aarch64-linux.alejandra;
# Build darwin flake using:
# $ darwin-rebuild build --flake .#Youwens-MacBook-Pro
darwinConfigurations.phobos = nix-darwin.lib.darwinSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/phobos
home-manager.darwinModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.youwen.imports = [
./users/youwen/darwin/darwin-home.nix
./users/youwen/common/core.nix
./users/youwen/common/neofetch
];
home-manager.backupFileExtension = "backup";
# Optionally, use home-manager.extraSpecialArgs to pass
# arguments to home.nix
}
nix-homebrew.darwinModules.nix-homebrew
./modules/darwin/homebrew.nix
./modules/darwin/yabai.nix
./modules/darwin/skhd.nix
];
};
};
} }

View file

@ -1,11 +1,15 @@
# Edit this configuration file to define what should be installed on # Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ config, inputs, pkgs, lib, ... }:
{ {
imports = [ # Include the results of the hardware scan. config,
inputs,
pkgs,
lib,
...
}: {
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
@ -32,7 +36,7 @@
enable = true; enable = true;
keyboards = { keyboards = {
default = { default = {
ids = [ "*" ]; ids = ["*"];
settings = { settings = {
main = { main = {
capslock = "esc"; capslock = "esc";
@ -44,8 +48,7 @@
}; };
}; };
boot.initrd.luks.devices."luks-52d1be6d-b32f-41e0-a6d7-2ff52599fe7c".device = boot.initrd.luks.devices."luks-52d1be6d-b32f-41e0-a6d7-2ff52599fe7c".device = "/dev/disk/by-uuid/52d1be6d-b32f-41e0-a6d7-2ff52599fe7c";
"/dev/disk/by-uuid/52d1be6d-b32f-41e0-a6d7-2ff52599fe7c";
services.tlp.enable = true; services.tlp.enable = true;
@ -80,7 +83,7 @@
LC_TIME = "en_US.UTF-8"; LC_TIME = "en_US.UTF-8";
}; };
systemd.services = { NetworkManager-wait-online.enable = false; }; systemd.services = {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.
@ -88,7 +91,7 @@
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
libraries = with pkgs; [ icu xorg.libXtst xorg.libXi ]; libraries = with pkgs; [icu xorg.libXtst xorg.libXi];
}; };
hardware.nvidia = { hardware.nvidia = {
@ -111,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;
@ -131,14 +134,14 @@
users.users.youwen = { users.users.youwen = {
isNormalUser = true; isNormalUser = true;
description = "Youwen Wu"; description = "Youwen Wu";
extraGroups = [ "networkmanager" "wheel" "nixos" "realtime" ]; extraGroups = ["networkmanager" "wheel" "nixos" "realtime"];
}; };
users.groups.realtime = { }; users.groups.realtime = {};
nix.settings = { nix.settings = {
trusted-users = [ "root" "youwen" ]; trusted-users = ["root" "youwen"];
experimental-features = [ "nix-command" "flakes" ]; experimental-features = ["nix-command" "flakes"];
}; };
services.udev.extraRules = '' services.udev.extraRules = ''

View file

@ -1,33 +1,34 @@
# 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 = [ (modulesPath + "/installer/scan/not-detected.nix") ]; config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
boot.initrd.availableKernelModules = boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "usbhid" "usb_storage" "sd_mod"];
[ "nvme" "xhci_pci" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.kernelModules = [];
boot.initrd.kernelModules = [ ]; boot.kernelModules = ["kvm-amd"];
boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [];
boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/01983a52-5693-4cda-ad2e-5a406776bfb9"; device = "/dev/disk/by-uuid/01983a52-5693-4cda-ad2e-5a406776bfb9";
fsType = "ext4"; fsType = "ext4";
}; };
boot.initrd.luks.devices."luks-f169a679-d70b-4dff-a344-7131f3303813".device = boot.initrd.luks.devices."luks-f169a679-d70b-4dff-a344-7131f3303813".device = "/dev/disk/by-uuid/f169a679-d70b-4dff-a344-7131f3303813";
"/dev/disk/by-uuid/f169a679-d70b-4dff-a344-7131f3303813";
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/3FCB-9D60"; device = "/dev/disk/by-uuid/3FCB-9D60";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ]; options = ["fmask=0022" "dmask=0022"];
}; };
swapDevices = swapDevices = [{device = "/dev/disk/by-uuid/f28d0752-feab-4591-899e-e5deac3712d0";}];
[{ 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

View file

@ -1,4 +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

@ -1,11 +1,14 @@
# Edit this configuration file to define what should be installed on # Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ config, inputs, pkgs, ... }:
{ {
imports = [ # Include the results of the hardware scan. config,
inputs,
pkgs,
...
}: {
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
# ./apple-silicon-support # ./apple-silicon-support
]; ];
@ -23,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.
@ -33,7 +36,7 @@
settings.General.EnableNetworkConfiguration = true; settings.General.EnableNetworkConfiguration = true;
}; };
nixpkgs.overlays = [ inputs.apple-silicon.overlays.apple-silicon-overlay ]; nixpkgs.overlays = [inputs.apple-silicon.overlays.apple-silicon-overlay];
programs.light.enable = true; programs.light.enable = true;
@ -68,7 +71,7 @@
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
libraries = with pkgs; [ icu xorg.libXtst xorg.libXi ]; libraries = with pkgs; [icu xorg.libXtst xorg.libXi];
}; };
# Configure keymap in X11 # Configure keymap in X11
@ -87,14 +90,14 @@
users.users.youwen = { users.users.youwen = {
isNormalUser = true; isNormalUser = true;
description = "Youwen Wu"; description = "Youwen Wu";
extraGroups = [ "networkmanager" "wheel" "nixos" "realtime" ]; extraGroups = ["networkmanager" "wheel" "nixos" "realtime"];
}; };
users.groups.realtime = { }; users.groups.realtime = {};
nix.settings = { nix.settings = {
trusted-users = [ "root" "youwen" ]; trusted-users = ["root" "youwen"];
experimental-features = [ "nix-command" "flakes" ]; experimental-features = ["nix-command" "flakes"];
}; };
services.udev.extraRules = '' services.udev.extraRules = ''
@ -155,13 +158,12 @@
environment.variables = { environment.variables = {
EDITOR = "nvim"; EDITOR = "nvim";
NIX_AUTO_RUN = 1; NIX_AUTO_RUN = 1;
}; };
services.keyd = { services.keyd = {
enable = true; enable = true;
keyboards = { keyboards = {
default = { default = {
ids = [ "*" ]; ids = ["*"];
settings = { settings = {
main = { main = {
capslock = "esc"; capslock = "esc";

View file

@ -1,15 +1,19 @@
# 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 = [ (modulesPath + "/installer/scan/not-detected.nix") ]; config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
boot.initrd.availableKernelModules = [ "usb_storage" "sdhci_pci" ]; boot.initrd.availableKernelModules = ["usb_storage" "sdhci_pci"];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [];
boot.kernelModules = [ ]; boot.kernelModules = [];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/bc88058e-6e3a-4987-b78e-e19cb5611608"; device = "/dev/disk/by-uuid/bc88058e-6e3a-4987-b78e-e19cb5611608";
@ -19,10 +23,10 @@
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/852F-07F1"; device = "/dev/disk/by-uuid/852F-07F1";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ]; options = ["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,11 +1,15 @@
# Edit this configuration file to define what should be installed on # Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ config, inputs, pkgs, lib, ... }:
{ {
imports = [ # Include the results of the hardware scan. config,
inputs,
pkgs,
lib,
...
}: {
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
@ -61,7 +65,7 @@
LC_TIME = "en_US.UTF-8"; LC_TIME = "en_US.UTF-8";
}; };
systemd.services = { NetworkManager-wait-online.enable = false; }; systemd.services = {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.
@ -69,7 +73,7 @@
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
libraries = with pkgs; [ icu xorg.libXtst xorg.libXi ]; libraries = with pkgs; [icu xorg.libXtst xorg.libXi];
}; };
hardware.nvidia = { hardware.nvidia = {
@ -91,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;
@ -113,14 +117,14 @@
users.users.youwen = { users.users.youwen = {
isNormalUser = true; isNormalUser = true;
description = "Youwen Wu"; description = "Youwen Wu";
extraGroups = [ "networkmanager" "wheel" "nixos" "realtime" ]; extraGroups = ["networkmanager" "wheel" "nixos" "realtime"];
}; };
users.groups.realtime = { }; users.groups.realtime = {};
nix.settings = { nix.settings = {
trusted-users = [ "root" "youwen" ]; trusted-users = ["root" "youwen"];
experimental-features = [ "nix-command" "flakes" ]; experimental-features = ["nix-command" "flakes"];
}; };
services.udev.extraRules = '' services.udev.extraRules = ''

View file

@ -1,34 +1,38 @@
# 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 = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod"];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/5a339a7f-8668-42d7-9ecc-d7a8f1d3f7b2"; device = "/dev/disk/by-uuid/5a339a7f-8668-42d7-9ecc-d7a8f1d3f7b2";
fsType = "ext4"; fsType = "ext4";
}; };
boot.initrd.luks.devices."luks-362ec972-7c5e-4c9f-ba5d-b8f2ed083509".device = "/dev/disk/by-uuid/362ec972-7c5e-4c9f-ba5d-b8f2ed083509"; boot.initrd.luks.devices."luks-362ec972-7c5e-4c9f-ba5d-b8f2ed083509".device = "/dev/disk/by-uuid/362ec972-7c5e-4c9f-ba5d-b8f2ed083509";
fileSystems."/boot" = fileSystems."/boot" = {
{ device = "/dev/disk/by-uuid/27EE-D950"; device = "/dev/disk/by-uuid/27EE-D950";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ]; options = ["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
# (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,10 +1,15 @@
{ inputs, config, pkgs, ... }: { {
inputs,
config,
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
@ -45,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,4 +1,4 @@
{ inputs, ... }: { {inputs, ...}: {
nix-homebrew = { nix-homebrew = {
enable = true; enable = true;
enableRosetta = true; enableRosetta = true;

View file

@ -1,4 +1,8 @@
{ config, pkgs, ... }: { {
config,
pkgs,
...
}: {
services.yabai = { services.yabai = {
enable = true; enable = true;
enableScriptingAddition = true; enableScriptingAddition = true;
@ -28,4 +32,3 @@
blur_radius = 5.0; blur_radius = 5.0;
}; };
} }

View file

@ -1,18 +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, ...}: {
{
services.greetd = { services.greetd = {
enable = true; enable = true;
settings = { settings = {

View file

@ -2,5 +2,5 @@
services.openssh.enable = true; services.openssh.enable = true;
# networking.firewall.allowedTCPPorts = [ ... ]; # networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ]; # networking.firewall.allowedUDPPorts = [ ... ];
networking.nameservers = [ "1.1.1.1" "1.0.0.1" ]; networking.nameservers = ["1.1.1.1" "1.0.0.1"];
} }

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: { {pkgs, ...}: {
home.file.".essentials" = { home.file.".essentials" = {
source = ./essentials; source = ./essentials;
recursive = true; recursive = true;
@ -15,7 +15,7 @@
''; '';
}; };
programs.fzf = { enable = true; }; programs.fzf = {enable = true;};
programs.git = { programs.git = {
enable = true; enable = true;
@ -57,7 +57,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 = {
@ -68,7 +68,6 @@
useTheme = "gruvbox"; useTheme = "gruvbox";
}; };
programs.direnv.enable = true; programs.direnv.enable = true;
programs.fish = { programs.fish = {
@ -79,8 +78,7 @@
}; };
functions = { functions = {
update-nixos = { update-nixos = {
description = description = "Update the system flake and attempt to build and switch to the new configuration.";
"Update the system flake and attempt to build and switch to the new configuration.";
body = '' body = ''
cd /etc/nixos cd /etc/nixos
nix flake update nix flake update

View file

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

View file

@ -1,6 +1,9 @@
{ inputs, config, pkgs, ... }:
{ {
inputs,
config,
pkgs,
...
}: {
home.username = "youwen"; home.username = "youwen";
home.homeDirectory = "/Users/youwen"; home.homeDirectory = "/Users/youwen";
@ -79,5 +82,4 @@
# Let home Manager install and manage itself. # Let home Manager install and manage itself.
programs.home-manager.enable = true; programs.home-manager.enable = true;
} }

View file

@ -7,4 +7,3 @@
../waybar/desktop ../waybar/desktop
]; ];
} }

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
home.username = "youwen"; home.username = "youwen";
home.homeDirectory = "/home/youwen"; home.homeDirectory = "/home/youwen";

View file

@ -1,9 +1,8 @@
{ pkgs, ... }: {pkgs, ...}: {
{
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" = "Y"; "$Left" = "Y";
"$Right" = "O"; "$Right" = "O";
@ -164,8 +163,7 @@
"ignorezero,swaync-control-center" "ignorezero,swaync-control-center"
"blur,logout_dialog" "blur,logout_dialog"
]; ];
monitor = monitor = ["DP-1,2560x1440@165,1920x0,auto" "HDMI-A-1,1920x1080@60,0x0,1"];
[ "DP-1,2560x1440@165,1920x0,auto" "HDMI-A-1,1920x1080@60,0x0,1" ];
dwindle = { dwindle = {
pseudotile = "yes"; pseudotile = "yes";
preserve_split = "yes"; preserve_split = "yes";
@ -189,7 +187,7 @@
"workspaces, 1, 5, wind" "workspaces, 1, 5, wind"
]; ];
}; };
general = { general = {
gaps_in = "3"; gaps_in = "3";
gaps_out = "8"; gaps_out = "8";
@ -284,17 +282,15 @@
services.hypridle = { services.hypridle = {
enable = true; enable = true;
settings = { settings = {
lock_cmd = lock_cmd = "pidof hyprlock || hyprlock"; # avoid starting multiple hyprlock instances.
"pidof hyprlock || hyprlock"; # avoid starting multiple hyprlock instances.
before_sleep_cmd = "loginctl lock-session"; # lock before suspend. before_sleep_cmd = "loginctl lock-session"; # lock before suspend.
after_sleep_cmd = after_sleep_cmd = "hyprctl dispatch dpms on"; # to avoid having to press a key twice to turn on the display.
"hyprctl dispatch dpms on"; # to avoid having to press a key twice to turn on the display.
}; };
}; };
xdg.portal = { xdg.portal = {
enable = true; enable = true;
configPackages = [ pkgs.xdg-desktop-portal-hyprland ]; configPackages = [pkgs.xdg-desktop-portal-hyprland];
extraPortals = [ pkgs.xdg-desktop-portal-hyprland ]; extraPortals = [pkgs.xdg-desktop-portal-hyprland];
}; };
} }

View file

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

View file

@ -1,5 +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,8 +1,6 @@
{ pkgs, ... }: { {pkgs, ...}: {
imports = imports = [../theming ../home.nix ../programs ../hyprland/laptop ../waybar/laptop];
[ ../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,3 +1,3 @@
{ pkgs, ... }: {pkgs, ...}: let
let createCommon = import ../common-packages.nix; createCommon = import ../common-packages.nix;
in { home.packages = ((createCommon pkgs) ++ [ ]); } in {home.packages = (createCommon pkgs) ++ [];}

View file

@ -1,13 +1,15 @@
{ pkgs, ... }: {pkgs, ...}: let
let createCommon = import ../common-packages.nix; createCommon = import ../common-packages.nix;
in { in {
home.packages = ((createCommon pkgs) ++ (with pkgs; [ home.packages =
spotify (createCommon pkgs)
bitwarden-desktop ++ (with pkgs; [
modrinth-app spotify
lutris bitwarden-desktop
wine modrinth-app
sbctl lutris
r2modman wine
])); sbctl
r2modman
]);
} }

View file

@ -15,8 +15,8 @@
action_alias = "kitty_scrollback_nvim kitten /home/youwen/.local/share/nvim/lazy/kitty-scrollback.nvim/python/kitty_scrollback_nvim.py"; action_alias = "kitty_scrollback_nvim kitten /home/youwen/.local/share/nvim/lazy/kitty-scrollback.nvim/python/kitty_scrollback_nvim.py";
}; };
keybindings = { keybindings = {
"kitty_mod+h" = "kitty_scrollback_nvim"; "kitty_mod+h" = "kitty_scrollback_nvim";
"kitty_mod+g" = "kitty_scrollback_nvim --config ksb_builtin_last_cmd_output"; "kitty_mod+g" = "kitty_scrollback_nvim --config ksb_builtin_last_cmd_output";
}; };
}; };

View file

@ -1,5 +1,5 @@
{ pkgs, ... }: { {pkgs, ...}: {
imports = [ ./catppuccin.nix ]; imports = [./catppuccin.nix];
gtk = { gtk = {
enable = true; enable = true;
@ -8,7 +8,7 @@
name = "Bibata-Modern-Ice"; name = "Bibata-Modern-Ice";
size = 26; size = 26;
}; };
iconTheme = { name = "Papirus-Dark"; }; iconTheme = {name = "Papirus-Dark";};
}; };
qt = { qt = {
@ -23,8 +23,6 @@
theme=GraphiteNordDark theme=GraphiteNordDark
''; '';
"Kvantum/GraphiteNord".source = "Kvantum/GraphiteNord".source = "${pkgs.graphite-kde-theme}/share/Kvantum/GraphiteNord";
"${pkgs.graphite-kde-theme}/share/Kvantum/GraphiteNord";
}; };
} }

View file

@ -9,21 +9,21 @@
width = 1600; width = 1600;
reload-style-on-change = true; reload-style-on-change = true;
margin = "10px 0px 0px 0px"; margin = "10px 0px 0px 0px";
modules-left = [ "hyprland/window" "hyprland/workspaces" ]; modules-left = ["hyprland/window" "hyprland/workspaces"];
modules-right = [ "backlight" "group/adjustable" "custom/weather" ]; modules-right = ["backlight" "group/adjustable" "custom/weather"];
modules-center = [ "network" "group/hardware" "clock" ]; modules-center = ["network" "group/hardware" "clock"];
"hyprland/workspaces" = { "hyprland/workspaces" = {
active-only = false; active-only = false;
all-outputs = false; all-outputs = false;
format = "{icon}"; format = "{icon}";
persistent-workspaces = { persistent-workspaces = {
eDP-1 = [ 1 ]; eDP-1 = [1];
DP-1 = [ 2 3 4 5 ]; DP-1 = [2 3 4 5];
}; };
}; };
"group/hardware" = { "group/hardware" = {
orientation = "inherit"; orientation = "inherit";
modules = [ "cpu" "memory" "battery" ]; modules = ["cpu" "memory" "battery"];
}; };
"group/adjustable" = { "group/adjustable" = {
orientation = "inherit"; orientation = "inherit";
@ -31,7 +31,7 @@
transition-duration = 500; transition-duration = 500;
transition-left-to-right = true; transition-left-to-right = true;
}; };
modules = [ "pulseaudio" "mpris" ]; modules = ["pulseaudio" "mpris"];
}; };
"custom/weather" = { "custom/weather" = {
orientation = "horizontal"; orientation = "horizontal";
@ -51,12 +51,12 @@
# format-paused = " 󰏤 {title} "; # format-paused = " 󰏤 {title} ";
# format-stopped = "Nothing Playing"; # format-stopped = "Nothing Playing";
# }; # };
tray = { spacing = 10; }; tray = {spacing = 10;};
clock = { format = "{:%a %b %d, %I:%M %p} "; }; clock = {format = "{:%a %b %d, %I:%M %p} ";};
backlight = { backlight = {
device = "intel_backlight"; device = "intel_backlight";
format = "{percent}% {icon}"; format = "{percent}% {icon}";
format-icons = [ "󰃞" "󰃠" ]; format-icons = ["󰃞" "󰃠"];
}; };
battery = { battery = {
states = { states = {
@ -65,9 +65,9 @@
critical = 10; critical = 10;
}; };
format = "{capacity}% {icon}"; format = "{capacity}% {icon}";
format-icons = [ "󰁻" "󰁽" "󰁿" "󰂀" "󰁹" ]; format-icons = ["󰁻" "󰁽" "󰁿" "󰂀" "󰁹"];
}; };
"hyprland/window" = { format = "{class}"; }; "hyprland/window" = {format = "{class}";};
network = { network = {
format-wifi = "{essid} "; format-wifi = "{essid} ";
format-linked = "{ifname} (No IP) "; format-linked = "{ifname} (No IP) ";
@ -81,7 +81,7 @@
format-muted = " {format_source}"; format-muted = " {format_source}";
format-source = "{volume}% "; format-source = "{volume}% ";
format-source-muted = ""; format-source-muted = "";
format-icons = { default = [ "" "" "" ]; }; format-icons = {default = ["" "" ""];};
}; };
}; };
}; };

View file

@ -9,23 +9,21 @@
# width = 1000; # width = 1000;
reload-style-on-change = true; reload-style-on-change = true;
margin = "5px 0px 0px 0px"; margin = "5px 0px 0px 0px";
modules-left = modules-left = ["hyprland/window" "hyprland/workspaces" "network" "clock"];
[ "hyprland/window" "hyprland/workspaces" "network" "clock" ]; modules-right = ["group/hardware" "backlight" "group/adjustable" "custom/weather"];
modules-right =
[ "group/hardware" "backlight" "group/adjustable" "custom/weather" ];
# modules-center = [ "network" "group/hardware" "clock" ]; # modules-center = [ "network" "group/hardware" "clock" ];
"hyprland/workspaces" = { "hyprland/workspaces" = {
active-only = false; active-only = false;
all-outputs = false; all-outputs = false;
format = "{icon}"; format = "{icon}";
persistent-workspaces = { persistent-workspaces = {
eDP-1 = [ 1 ]; eDP-1 = [1];
DP-1 = [ 2 3 4 5 ]; DP-1 = [2 3 4 5];
}; };
}; };
"group/hardware" = { "group/hardware" = {
orientation = "inherit"; orientation = "inherit";
modules = [ "cpu" "battery" ]; modules = ["cpu" "battery"];
}; };
"group/adjustable" = { "group/adjustable" = {
orientation = "inherit"; orientation = "inherit";
@ -33,7 +31,7 @@
transition-duration = 500; transition-duration = 500;
transition-left-to-right = true; transition-left-to-right = true;
}; };
modules = [ "pulseaudio" "mpris" ]; modules = ["pulseaudio" "mpris"];
}; };
"custom/weather" = { "custom/weather" = {
orientation = "horizontal"; orientation = "horizontal";
@ -53,12 +51,12 @@
# format-paused = " 󰏤 {title} "; # format-paused = " 󰏤 {title} ";
# format-stopped = "Nothing Playing"; # format-stopped = "Nothing Playing";
# }; # };
tray = { spacing = 10; }; tray = {spacing = 10;};
clock = { format = "{:%a %b %d, %I:%M %p} "; }; clock = {format = "{:%a %b %d, %I:%M %p} ";};
backlight = { backlight = {
device = "intel_backlight"; device = "intel_backlight";
format = "{percent}% {icon}"; format = "{percent}% {icon}";
format-icons = [ "󰃞" "󰃠" ]; format-icons = ["󰃞" "󰃠"];
}; };
battery = { battery = {
states = { states = {
@ -67,9 +65,9 @@
critical = 10; critical = 10;
}; };
format = "{capacity}% {icon}"; format = "{capacity}% {icon}";
format-icons = [ "󰁻" "󰁽" "󰁿" "󰂀" "󰁹" ]; format-icons = ["󰁻" "󰁽" "󰁿" "󰂀" "󰁹"];
}; };
"hyprland/window" = { format = "{class}"; }; "hyprland/window" = {format = "{class}";};
network = { network = {
format-wifi = "{essid} "; format-wifi = "{essid} ";
format-linked = "{ifname} (No IP) "; format-linked = "{ifname} (No IP) ";
@ -83,7 +81,7 @@
format-muted = " {format_source}"; format-muted = " {format_source}";
format-source = "{volume}% "; format-source = "{volume}% ";
format-source-muted = ""; format-source-muted = "";
format-icons = { default = [ "" "" "" ]; }; format-icons = {default = ["" "" ""];};
}; };
}; };
}; };