mirror of
https://github.com/youwen5/nixos.git
synced 2024-11-28 11:43:51 -08:00
Compare commits
3 commits
1d50e3276a
...
586b4a27cd
Author | SHA1 | Date | |
---|---|---|---|
586b4a27cd | |||
26439134dd | |||
9062a9d3ed |
30 changed files with 347 additions and 314 deletions
|
@ -3,6 +3,9 @@
|
||||||
This is a repository that implements liminalOS, my personal Linux distribution
|
This is a repository that implements liminalOS, my personal Linux distribution
|
||||||
based on [NixOS](https://nixos.org/).
|
based on [NixOS](https://nixos.org/).
|
||||||
|
|
||||||
|
Time wasted writing Nix code:
|
||||||
|
![](https://wakatime.com/badge/user/018dc5b8-ba5a-4572-a38a-b526d1b28240/project/c59b3d5e-0c9c-4bd5-a752-e75522ab0cdc.svg)
|
||||||
|
|
||||||
<!-- prettier-ignore -->
|
<!-- prettier-ignore -->
|
||||||
> **lim·i·nal**
|
> **lim·i·nal**
|
||||||
> 1. between or belonging to two different places, states, etc.
|
> 1. between or belonging to two different places, states, etc.
|
||||||
|
|
280
flake.nix
280
flake.nix
|
@ -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
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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 = ''
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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" ];
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -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";
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 = ''
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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"];})
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ inputs, ... }: {
|
{inputs, ...}: {
|
||||||
nix-homebrew = {
|
nix-homebrew = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableRosetta = true;
|
enableRosetta = true;
|
||||||
|
|
|
@ -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;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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"];})
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{pkgs, ...}:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
services.greetd = {
|
services.greetd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
|
@ -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"];
|
||||||
}
|
}
|
||||||
|
|
|
@ -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,6 +68,8 @@
|
||||||
useTheme = "gruvbox";
|
useTheme = "gruvbox";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.direnv.enable = true;
|
||||||
|
|
||||||
programs.fish = {
|
programs.fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
|
@ -76,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
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{ imports = [ ./core.nix ]; }
|
{imports = [./core.nix];}
|
||||||
|
|
|
@ -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;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,4 +7,3 @@
|
||||||
../waybar/desktop
|
../waybar/desktop
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
{ config, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
home.username = "youwen";
|
home.username = "youwen";
|
||||||
home.homeDirectory = "/home/youwen";
|
home.homeDirectory = "/home/youwen";
|
||||||
|
|
||||||
|
|
|
@ -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];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{ imports = [ ../common.nix ]; }
|
{imports = [../common.nix];}
|
||||||
|
|
|
@ -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;
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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) ++ [];}
|
||||||
|
|
|
@ -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
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -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";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -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";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -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 = ["" "" ""];};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -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 = ["" "" ""];};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue