alejandra?
This commit is contained in:
parent
63baacc410
commit
21d7561a56
17 changed files with 296 additions and 204 deletions
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
cosmic-term
|
cosmic-term
|
||||||
fontconfig
|
fontconfig
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,8 @@
|
||||||
{ inputs, pkgs, ... }: {
|
{
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# freecad
|
# freecad
|
||||||
# pijul
|
# pijul
|
||||||
|
|
@ -33,6 +37,7 @@
|
||||||
# nix
|
# nix
|
||||||
nil
|
nil
|
||||||
nixpkgs-fmt
|
nixpkgs-fmt
|
||||||
|
alejandra
|
||||||
|
|
||||||
# python
|
# python
|
||||||
pypy3
|
pypy3
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
# { pkgs, aagl, ... }: {
|
# { pkgs, aagl, ... }: {
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
# imports = [ aagl.nixosModules.default ];
|
# imports = [ aagl.nixosModules.default ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
|
|
@ -24,17 +24,20 @@
|
||||||
# nix.settings = aagl.nixConfig;
|
# nix.settings = aagl.nixConfig;
|
||||||
# programs.honkers-railway-launcher.enable = true;
|
# programs.honkers-railway-launcher.enable = true;
|
||||||
|
|
||||||
users = { groups.game = { }; };
|
users = {groups.game = {};};
|
||||||
security.pam.loginLimits = [
|
security.pam.loginLimits = [
|
||||||
{ domain = "@game"; type = "-"; item = "nice"; value = -20; }
|
{
|
||||||
|
domain = "@game";
|
||||||
|
type = "-";
|
||||||
|
item = "nice";
|
||||||
|
value = -20;
|
||||||
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
environment.etc =
|
environment.etc = let
|
||||||
let
|
json = pkgs.formats.json {};
|
||||||
json = pkgs.formats.json { };
|
in {
|
||||||
in
|
|
||||||
{
|
|
||||||
"pipewire/pipewire.conf.d/92-low-latency.conf".source = json.generate "92-low-latency.conf" {
|
"pipewire/pipewire.conf.d/92-low-latency.conf".source = json.generate "92-low-latency.conf" {
|
||||||
context.properties = {
|
context.properties = {
|
||||||
# default.allowed-rates = []
|
# default.allowed-rates = []
|
||||||
|
|
|
||||||
|
|
@ -1,43 +1,79 @@
|
||||||
{ ... }: {
|
{...}: {
|
||||||
services.rpcbind.enable = true;
|
services.rpcbind.enable = true;
|
||||||
systemd.mounts =
|
systemd.mounts = let
|
||||||
let
|
|
||||||
opts = {
|
opts = {
|
||||||
type = "cifs";
|
type = "cifs";
|
||||||
mountConfig = { Options = "users,noauto,credentials=/etc/nixos/smb-secrets,noatime,uid=1000,gid=100"; };
|
mountConfig = {Options = "users,noauto,credentials=/etc/nixos/smb-secrets,noatime,uid=1000,gid=100";};
|
||||||
};
|
};
|
||||||
in
|
in [
|
||||||
[
|
(opts
|
||||||
(opts // { what = "//100.97.47.81/anime"; where = "/mnt/uwuraid/anime"; })
|
// {
|
||||||
(opts // { what = "//100.97.47.81/appdata"; where = "/mnt/uwuraid/appdata"; })
|
what = "//100.97.47.81/anime";
|
||||||
(opts // { what = "//100.97.47.81/backup"; where = "/mnt/uwuraid/backup"; })
|
where = "/mnt/uwuraid/anime";
|
||||||
(opts // { what = "//100.97.47.81/everything"; where = "/mnt/uwuraid/everything"; })
|
})
|
||||||
(opts // { what = "//100.97.47.81/isos"; where = "/mnt/uwuraid/isos"; })
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/appdata";
|
||||||
|
where = "/mnt/uwuraid/appdata";
|
||||||
|
})
|
||||||
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/backup";
|
||||||
|
where = "/mnt/uwuraid/backup";
|
||||||
|
})
|
||||||
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/everything";
|
||||||
|
where = "/mnt/uwuraid/everything";
|
||||||
|
})
|
||||||
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/isos";
|
||||||
|
where = "/mnt/uwuraid/isos";
|
||||||
|
})
|
||||||
# (opts // { what = "//100.97.47.81/jellyfin"; where = "/mnt/uwuraid/jellyfin"; })
|
# (opts // { what = "//100.97.47.81/jellyfin"; where = "/mnt/uwuraid/jellyfin"; })
|
||||||
(opts // { what = "//100.97.47.81/movies"; where = "/mnt/uwuraid/movies"; })
|
(opts
|
||||||
(opts // { what = "//100.97.47.81/music"; where = "/mnt/uwuraid/music"; })
|
// {
|
||||||
(opts // { what = "//100.97.47.81/photos"; where = "/mnt/uwuraid/photos"; })
|
what = "//100.97.47.81/movies";
|
||||||
(opts // { what = "//100.97.47.81/syncthing"; where = "/mnt/uwuraid/syncthing"; })
|
where = "/mnt/uwuraid/movies";
|
||||||
(opts // { what = "//100.97.47.81/television"; where = "/mnt/uwuraid/television"; })
|
})
|
||||||
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/music";
|
||||||
|
where = "/mnt/uwuraid/music";
|
||||||
|
})
|
||||||
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/photos";
|
||||||
|
where = "/mnt/uwuraid/photos";
|
||||||
|
})
|
||||||
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/syncthing";
|
||||||
|
where = "/mnt/uwuraid/syncthing";
|
||||||
|
})
|
||||||
|
(opts
|
||||||
|
// {
|
||||||
|
what = "//100.97.47.81/television";
|
||||||
|
where = "/mnt/uwuraid/television";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
systemd.automounts =
|
systemd.automounts = let
|
||||||
let
|
|
||||||
opts = {
|
opts = {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = ["multi-user.target"];
|
||||||
automountConfig = { TimeoutIdleSec = "60"; };
|
automountConfig = {TimeoutIdleSec = "60";};
|
||||||
};
|
};
|
||||||
in
|
in [
|
||||||
[
|
(opts // {where = "/mnt/uwuraid/anime";})
|
||||||
(opts // { where = "/mnt/uwuraid/anime"; })
|
(opts // {where = "/mnt/uwuraid/appdata";})
|
||||||
(opts // { where = "/mnt/uwuraid/appdata"; })
|
(opts // {where = "/mnt/uwuraid/backup";})
|
||||||
(opts // { where = "/mnt/uwuraid/backup"; })
|
(opts // {where = "/mnt/uwuraid/everything";})
|
||||||
(opts // { where = "/mnt/uwuraid/everything"; })
|
(opts // {where = "/mnt/uwuraid/isos";})
|
||||||
(opts // { where = "/mnt/uwuraid/isos"; })
|
|
||||||
# (opts // { where = "/mnt/uwuraid/jellyfin"; })
|
# (opts // { where = "/mnt/uwuraid/jellyfin"; })
|
||||||
(opts // { where = "/mnt/uwuraid/movies"; })
|
(opts // {where = "/mnt/uwuraid/movies";})
|
||||||
(opts // { where = "/mnt/uwuraid/music"; })
|
(opts // {where = "/mnt/uwuraid/music";})
|
||||||
(opts // { where = "/mnt/uwuraid/photos"; })
|
(opts // {where = "/mnt/uwuraid/photos";})
|
||||||
(opts // { where = "/mnt/uwuraid/syncthing"; })
|
(opts // {where = "/mnt/uwuraid/syncthing";})
|
||||||
(opts // { where = "/mnt/uwuraid/television"; })
|
(opts // {where = "/mnt/uwuraid/television";})
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
20
flake.nix
20
flake.nix
|
|
@ -23,17 +23,25 @@
|
||||||
nixConfig = {
|
nixConfig = {
|
||||||
# extra-substituters = [ "https://hyprland.cachix.org" "https://ezkea.cachix.org" ];
|
# extra-substituters = [ "https://hyprland.cachix.org" "https://ezkea.cachix.org" ];
|
||||||
# extra-trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" "ezkea.cachix.org-1:ioBmUbJTZIKsHmWWXPe1FSFbeVe+afhfgqgTSNd34eI=" ];
|
# extra-trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" "ezkea.cachix.org-1:ioBmUbJTZIKsHmWWXPe1FSFbeVe+afhfgqgTSNd34eI=" ];
|
||||||
extra-substituters = [ "https://hyprland.cachix.org" ];
|
extra-substituters = ["https://hyprland.cachix.org"];
|
||||||
extra-trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
extra-trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||||
};
|
};
|
||||||
|
|
||||||
# outputs = { self, nixpkgs, nixos-hardware, nixos-raspberrypi, home-manager, helix, aagl, ... }@inputs:
|
# outputs = { self, nixpkgs, nixos-hardware, nixos-raspberrypi, home-manager, helix, aagl, ... }@inputs:
|
||||||
outputs = { self, nixpkgs, nixos-hardware, nixos-raspberrypi, home-manager, helix, jujutsu, ... }@inputs:
|
outputs = {
|
||||||
{
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
nixos-hardware,
|
||||||
|
nixos-raspberrypi,
|
||||||
|
home-manager,
|
||||||
|
helix,
|
||||||
|
jujutsu,
|
||||||
|
...
|
||||||
|
} @ inputs: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
NOcomputer = nixpkgs.lib.nixosSystem {
|
NOcomputer = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = {inherit inputs;};
|
||||||
modules = [
|
modules = [
|
||||||
nixos-hardware.nixosModules.common-cpu-amd
|
nixos-hardware.nixosModules.common-cpu-amd
|
||||||
nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
|
nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
|
||||||
|
|
@ -49,7 +57,7 @@
|
||||||
};
|
};
|
||||||
NOlaptop = nixpkgs.lib.nixosSystem {
|
NOlaptop = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = {inherit inputs;};
|
||||||
modules = [
|
modules = [
|
||||||
nixos-hardware.nixosModules.common-cpu-intel
|
nixos-hardware.nixosModules.common-cpu-intel
|
||||||
# inputs.nixos-hardware.nixosModules.framework-12th-gen-intel
|
# inputs.nixos-hardware.nixosModules.framework-12th-gen-intel
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,10 @@
|
||||||
{ inputs, lib, pkgs, modulesPath, ... }: {
|
{
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# xorg.xkill
|
# xorg.xkill
|
||||||
bat
|
bat
|
||||||
|
|
@ -60,7 +66,7 @@
|
||||||
boot.loader.systemd-boot.enable = lib.mkDefault true;
|
boot.loader.systemd-boot.enable = lib.mkDefault true;
|
||||||
boot.loader.efi.canTouchEfiVariables = lib.mkDefault true;
|
boot.loader.efi.canTouchEfiVariables = lib.mkDefault true;
|
||||||
boot.loader.timeout = 1;
|
boot.loader.timeout = 1;
|
||||||
boot.supportedFilesystems = [ "ntfs" ];
|
boot.supportedFilesystems = ["ntfs"];
|
||||||
|
|
||||||
networking.networkmanager = {
|
networking.networkmanager = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -96,9 +102,9 @@
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
experimental-features = "nix-command flakes";
|
experimental-features = "nix-command flakes";
|
||||||
auto-optimise-store = true;
|
auto-optimise-store = true;
|
||||||
trusted-users = [ "root" "@wheel" ];
|
trusted-users = ["root" "@wheel"];
|
||||||
};
|
};
|
||||||
nixpkgs.config = { allowUnfree = true; };
|
nixpkgs.config = {allowUnfree = true;};
|
||||||
|
|
||||||
systemd.extraConfig = ''
|
systemd.extraConfig = ''
|
||||||
DefaultTimeoutStopSec=15s
|
DefaultTimeoutStopSec=15s
|
||||||
|
|
@ -106,7 +112,7 @@
|
||||||
|
|
||||||
time.timeZone = "US/Pacific";
|
time.timeZone = "US/Pacific";
|
||||||
i18n.defaultLocale = "en_US.utf8";
|
i18n.defaultLocale = "en_US.utf8";
|
||||||
i18n.supportedLocales = [ "all" ];
|
i18n.supportedLocales = ["all"];
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
LC_CTYPE = "en_US.UTF-8";
|
LC_CTYPE = "en_US.UTF-8";
|
||||||
LC_MESSAGES = "en_US.UTF-8";
|
LC_MESSAGES = "en_US.UTF-8";
|
||||||
|
|
@ -121,7 +127,7 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
system.stateVersion = lib.mkDefault "23.05";
|
system.stateVersion = lib.mkDefault "23.05";
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
libraspberrypi
|
libraspberrypi
|
||||||
raspberrypi-eeprom
|
raspberrypi-eeprom
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "/dev/disk/by-label/NIXOS_SD";
|
device = "/dev/disk/by-label/NIXOS_SD";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
options = [ "noatime" ];
|
options = ["noatime"];
|
||||||
# autoResize = true;
|
# autoResize = true;
|
||||||
};
|
};
|
||||||
programs.partition-manager.enable = false;
|
programs.partition-manager.enable = false;
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
services.btrfs.autoScrub.enable = false;
|
services.btrfs.autoScrub.enable = false;
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
initrd.availableKernelModules = [ "xhci_pci" "usbhid" "usb_storage" "vc4" "pcie_brcmstb" "reset-raspberrypi" ];
|
initrd.availableKernelModules = ["xhci_pci" "usbhid" "usb_storage" "vc4" "pcie_brcmstb" "reset-raspberrypi"];
|
||||||
# initrd.availableKernelModules = [ "xhci_pci" ];
|
# initrd.availableKernelModules = [ "xhci_pci" ];
|
||||||
kernelParams = [
|
kernelParams = [
|
||||||
"8250.nr_uarts=1"
|
"8250.nr_uarts=1"
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
arduino
|
arduino
|
||||||
firefox
|
firefox
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
networking.hostName = "NObcer";
|
networking.hostName = "NObcer";
|
||||||
users.users.ssrov = {
|
users.users.ssrov = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "dialout" ];
|
extraGroups = ["dialout"];
|
||||||
hashedPassword = "";
|
hashedPassword = "";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
services.xserver.displayManager = {
|
services.xserver.displayManager = {
|
||||||
autoLogin.enable = true;
|
autoLogin.enable = true;
|
||||||
autoLogin.user = "tao";
|
autoLogin.user = "tao";
|
||||||
|
|
@ -27,17 +27,17 @@
|
||||||
fileSystems."/home" = {
|
fileSystems."/home" = {
|
||||||
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=home_snaps/0/snapshot" "noatime" "compress-force=zstd:3" "discard=async" ];
|
options = ["subvol=home_snaps/0/snapshot" "noatime" "compress-force=zstd:3" "discard=async"];
|
||||||
};
|
};
|
||||||
fileSystems."/home/.snapshots" = {
|
fileSystems."/home/.snapshots" = {
|
||||||
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=home_snaps/" "noatime" "compress-force=zstd:3" "discard=async" ];
|
options = ["subvol=home_snaps/" "noatime" "compress-force=zstd:3" "discard=async"];
|
||||||
};
|
};
|
||||||
fileSystems."/home/tao/Games" = {
|
fileSystems."/home/tao/Games" = {
|
||||||
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=games" "nosuid" "nodev" "noatime" "compress-force=zstd:3" "users" "rw" "exec" "discard=async" ];
|
options = ["subvol=games" "nosuid" "nodev" "noatime" "compress-force=zstd:3" "users" "rw" "exec" "discard=async"];
|
||||||
};
|
};
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" = {
|
||||||
device = "/dev/disk/by-uuid/2B28-151D";
|
device = "/dev/disk/by-uuid/2B28-151D";
|
||||||
|
|
@ -46,25 +46,24 @@
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=nixos" "noatime" "compress-force=zstd:3" "discard=async" ];
|
options = ["subvol=nixos" "noatime" "compress-force=zstd:3" "discard=async"];
|
||||||
};
|
};
|
||||||
fileSystems."/var" = {
|
fileSystems."/var" = {
|
||||||
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=nixos/var" "noatime" "compress-force=zstd:3" "discard=async" ];
|
options = ["subvol=nixos/var" "noatime" "compress-force=zstd:3" "discard=async"];
|
||||||
};
|
};
|
||||||
fileSystems."/tmp" = {
|
fileSystems."/tmp" = {
|
||||||
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=nixos/tmp" "discard=async" ];
|
options = ["subvol=nixos/tmp" "discard=async"];
|
||||||
};
|
};
|
||||||
swapDevices = [{ device = "/dev/disk/by-uuid/ca0ed3d7-8758-4ac7-b016-8b4cd9608ded"; }];
|
swapDevices = [{device = "/dev/disk/by-uuid/ca0ed3d7-8758-4ac7-b016-8b4cd9608ded";}];
|
||||||
|
|
||||||
services.snapper.configs =
|
services.snapper.configs = {
|
||||||
{
|
|
||||||
home = {
|
home = {
|
||||||
SUBVOLUME = "/home";
|
SUBVOLUME = "/home";
|
||||||
ALLOW_USERS = [ "tao" ];
|
ALLOW_USERS = ["tao"];
|
||||||
TIMELINE_CREATE = true;
|
TIMELINE_CREATE = true;
|
||||||
TIMELINE_CLEANUP = true;
|
TIMELINE_CLEANUP = true;
|
||||||
TIMELINE_LIMIT_HOURLY = "5";
|
TIMELINE_LIMIT_HOURLY = "5";
|
||||||
|
|
@ -83,9 +82,9 @@
|
||||||
|
|
||||||
# boot.kernelPackages = pkgs.linuxPackages_latest;
|
# boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
boot.kernelPackages = pkgs.linuxPackages_zen;
|
boot.kernelPackages = pkgs.linuxPackages_zen;
|
||||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"];
|
||||||
boot.kernelModules = [ "i2c-dev" "kvm-amd" ];
|
boot.kernelModules = ["i2c-dev" "kvm-amd"];
|
||||||
boot.kernelParams = [ "nvidia-drm.modeset=1" ];
|
boot.kernelParams = ["nvidia-drm.modeset=1"];
|
||||||
# boot.extraModulePackages = with config.boot.kernelPackages; [ zenpower ];
|
# boot.extraModulePackages = with config.boot.kernelPackages; [ zenpower ];
|
||||||
# boot.blacklistedKernelModules = with config.boot.kernelPackages; [ k10temp ];
|
# boot.blacklistedKernelModules = with config.boot.kernelPackages; [ k10temp ];
|
||||||
boot.kernel.sysctl."net.ipv4.ip_forward" = "1";
|
boot.kernel.sysctl."net.ipv4.ip_forward" = "1";
|
||||||
|
|
@ -109,10 +108,10 @@
|
||||||
systemd.services.nvpl = {
|
systemd.services.nvpl = {
|
||||||
description = "Increase GPU power limit to 400w";
|
description = "Increase GPU power limit to 400w";
|
||||||
script = "/run/current-system/sw/bin/nvidia-smi -pl=400";
|
script = "/run/current-system/sw/bin/nvidia-smi -pl=400";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = ["multi-user.target"];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.udev.packages = [ pkgs.openrgb ];
|
services.udev.packages = [pkgs.openrgb];
|
||||||
services.udev.extraRules = ''
|
services.udev.extraRules = ''
|
||||||
KERNEL=="hidraw*", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="a3c5", MODE="0666"
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="a3c5", MODE="0666"
|
||||||
'';
|
'';
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# prescurve
|
# prescurve
|
||||||
# libsForQt5.skanpage
|
# libsForQt5.skanpage
|
||||||
|
|
@ -10,20 +10,20 @@
|
||||||
fileSystems."/home" = {
|
fileSystems."/home" = {
|
||||||
device = "/dev/disk/by-uuid/e4244a97-9b48-49f0-8093-782163045020";
|
device = "/dev/disk/by-uuid/e4244a97-9b48-49f0-8093-782163045020";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=home-snaps/0/snapshot" "noatime" "compress-force=zstd:3" "discard=async" ];
|
options = ["subvol=home-snaps/0/snapshot" "noatime" "compress-force=zstd:3" "discard=async"];
|
||||||
};
|
};
|
||||||
fileSystems."/home/tao/Games" = {
|
fileSystems."/home/tao/Games" = {
|
||||||
device = "/dev/disk/by-uuid/e4244a97-9b48-49f0-8093-782163045020";
|
device = "/dev/disk/by-uuid/e4244a97-9b48-49f0-8093-782163045020";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=games" "nosuid" "nodev" "noatime" "compress-force=zstd:3" "users" "rw" "exec" "discard=async" ];
|
options = ["subvol=games" "nosuid" "nodev" "noatime" "compress-force=zstd:3" "users" "rw" "exec" "discard=async"];
|
||||||
};
|
};
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "/dev/disk/by-uuid/e4244a97-9b48-49f0-8093-782163045020";
|
device = "/dev/disk/by-uuid/e4244a97-9b48-49f0-8093-782163045020";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
options = [ "subvol=nixos" "noatime" "compress-force=zstd:3" "discard=async" ];
|
options = ["subvol=nixos" "noatime" "compress-force=zstd:3" "discard=async"];
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [{ device = "/dev/disk/by-uuid/ca55d0ea-c0db-44c5-af3a-e38eec803929"; }];
|
swapDevices = [{device = "/dev/disk/by-uuid/ca55d0ea-c0db-44c5-af3a-e38eec803929";}];
|
||||||
|
|
||||||
services.fprintd.enable = true;
|
services.fprintd.enable = true;
|
||||||
services.fwupd.enable = true;
|
services.fwupd.enable = true;
|
||||||
|
|
@ -45,7 +45,6 @@
|
||||||
# wantedBy = [ "default.target" ];
|
# wantedBy = [ "default.target" ];
|
||||||
# };
|
# };
|
||||||
|
|
||||||
|
|
||||||
# SUBSYSTEM=="backlight", GROUP="video", MODE="0664"
|
# SUBSYSTEM=="backlight", GROUP="video", MODE="0664"
|
||||||
services.udev.extraRules = ''
|
services.udev.extraRules = ''
|
||||||
# Ethernet expansion card
|
# Ethernet expansion card
|
||||||
|
|
@ -69,9 +68,9 @@
|
||||||
"nvme.noacpi=1"
|
"nvme.noacpi=1"
|
||||||
"i915.enable_psr=1"
|
"i915.enable_psr=1"
|
||||||
];
|
];
|
||||||
boot.blacklistedKernelModules = [ "cros-usbpd-charger" ];
|
boot.blacklistedKernelModules = ["cros-usbpd-charger"];
|
||||||
boot.extraModprobeConfig = ''options snd-hda-intel model=dell-headset-multi'';
|
boot.extraModprobeConfig = ''options snd-hda-intel model=dell-headset-multi'';
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = ["kvm-intel"];
|
||||||
powerManagement.cpuFreqGovernor = "powersave";
|
powerManagement.cpuFreqGovernor = "powersave";
|
||||||
systemd.sleep.extraConfig = "HibernateDelaySec=180m";
|
systemd.sleep.extraConfig = "HibernateDelaySec=180m";
|
||||||
# boot.kernel.sysctl."net.ipv4.ip_forward" = "1";
|
# boot.kernel.sysctl."net.ipv4.ip_forward" = "1";
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
bat
|
bat
|
||||||
bottom
|
bottom
|
||||||
|
|
@ -32,4 +32,4 @@
|
||||||
VISUAL = "hx";
|
VISUAL = "hx";
|
||||||
SKIM_DEFAULT_COMMAND = "rg --files";
|
SKIM_DEFAULT_COMMAND = "rg --files";
|
||||||
};
|
};
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
users.users.tao.packages = with pkgs; [
|
users.users.tao.packages = with pkgs; [
|
||||||
libsForQt5.kdeconnect-kde
|
libsForQt5.kdeconnect-kde
|
||||||
];
|
];
|
||||||
|
|
@ -16,14 +15,14 @@
|
||||||
# };
|
# };
|
||||||
|
|
||||||
fonts.fonts = with pkgs; [
|
fonts.fonts = with pkgs; [
|
||||||
(nerdfonts.override { fonts = [ "FiraCode" ]; })
|
(nerdfonts.override {fonts = ["FiraCode"];})
|
||||||
noto-fonts-cjk
|
noto-fonts-cjk
|
||||||
noto-fonts-emoji
|
noto-fonts-emoji
|
||||||
];
|
];
|
||||||
|
|
||||||
users.users.tao = {
|
users.users.tao = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" "dialout" ];
|
extraGroups = ["wheel" "dialout"];
|
||||||
# shell = pkgs.nushell;
|
# shell = pkgs.nushell;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,9 @@
|
||||||
{ inputs, config, pkgs, ... }: {
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
users.users.tao.packages = with pkgs; [
|
users.users.tao.packages = with pkgs; [
|
||||||
# birdtray
|
# birdtray
|
||||||
# cider
|
# cider
|
||||||
|
|
@ -65,7 +70,7 @@
|
||||||
];
|
];
|
||||||
# programs.adb.enable = true;
|
# programs.adb.enable = true;
|
||||||
programs.mosh.enable = true;
|
programs.mosh.enable = true;
|
||||||
environment.shells = with pkgs; [ nushell ];
|
environment.shells = with pkgs; [nushell];
|
||||||
|
|
||||||
services.udev.extraRules = ''
|
services.udev.extraRules = ''
|
||||||
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
|
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
|
||||||
|
|
@ -94,14 +99,14 @@
|
||||||
'';
|
'';
|
||||||
|
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
(nerdfonts.override { fonts = [ "FiraCode" ]; })
|
(nerdfonts.override {fonts = ["FiraCode"];})
|
||||||
noto-fonts-cjk
|
noto-fonts-cjk
|
||||||
noto-fonts-color-emoji
|
noto-fonts-color-emoji
|
||||||
];
|
];
|
||||||
|
|
||||||
users.users.tao = {
|
users.users.tao = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "video" "wheel" "libvirtd" "dialout" "game" ];
|
extraGroups = ["video" "wheel" "libvirtd" "dialout" "game"];
|
||||||
shell = pkgs.nushell;
|
shell = pkgs.nushell;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -114,5 +119,5 @@
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.verbose = true;
|
home-manager.verbose = true;
|
||||||
home-manager.backupFileExtension = ".hm-bak";
|
home-manager.backupFileExtension = ".hm-bak";
|
||||||
home-manager.users.tao = (import ./tao/home.nix { inherit inputs pkgs; });
|
home-manager.users.tao = import ./tao/home.nix {inherit inputs pkgs;};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }: {
|
{pkgs, ...}: {
|
||||||
home.file.".cargo/config.toml".text = ''
|
home.file.".cargo/config.toml".text = ''
|
||||||
[alias]
|
[alias]
|
||||||
rr = "run --release"
|
rr = "run --release"
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,8 @@
|
||||||
{ inputs, pkgs, ... }: {
|
{
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
programs.helix = {
|
programs.helix = {
|
||||||
settings = {
|
settings = {
|
||||||
theme = "dracula";
|
theme = "dracula";
|
||||||
|
|
@ -16,9 +20,9 @@
|
||||||
select = "underline";
|
select = "underline";
|
||||||
};
|
};
|
||||||
statusline = {
|
statusline = {
|
||||||
left = [ "mode" "spinner" "spacer" "version-control" ];
|
left = ["mode" "spinner" "spacer" "version-control"];
|
||||||
center = [ "file-name" "file-modification-indicator" ];
|
center = ["file-name" "file-modification-indicator"];
|
||||||
right = [ "diagnostics" "primary-selection-length" "total-line-numbers" "selections" "position" ];
|
right = ["diagnostics" "primary-selection-length" "total-line-numbers" "selections" "position"];
|
||||||
};
|
};
|
||||||
lsp = {
|
lsp = {
|
||||||
display-messages = true;
|
display-messages = true;
|
||||||
|
|
@ -42,15 +46,42 @@
|
||||||
auto-format = true;
|
auto-format = true;
|
||||||
formatter = {
|
formatter = {
|
||||||
command = "clang-format";
|
command = "clang-format";
|
||||||
args = [ "--style=file:/home/tao/Templates/clang-format" ];
|
args = ["--style=file:/home/tao/Templates/clang-format"];
|
||||||
|
};
|
||||||
|
indent = {
|
||||||
|
tab-width = 8;
|
||||||
|
unit = "\t";
|
||||||
};
|
};
|
||||||
indent = { tab-width = 8; unit = "\t"; };
|
|
||||||
}
|
}
|
||||||
# { name = "css"; comment = "/*"; }
|
# { name = "css"; comment = "/*"; }
|
||||||
{ name = "html"; auto-format = false; indent = { tab-width = 4; unit = "\t"; }; }
|
{
|
||||||
{ name = "java"; auto-format = true; indent = { tab-width = 4; unit = "\t"; }; }
|
name = "html";
|
||||||
{ name = "nix"; auto-format = true; formatter = { command = "nixpkgs-fmt"; }; }
|
auto-format = false;
|
||||||
{ name = "typst"; indent = { tab-width = 4; unit = " "; }; }
|
indent = {
|
||||||
|
tab-width = 4;
|
||||||
|
unit = "\t";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "java";
|
||||||
|
auto-format = true;
|
||||||
|
indent = {
|
||||||
|
tab-width = 4;
|
||||||
|
unit = "\t";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "nix";
|
||||||
|
auto-format = true;
|
||||||
|
formatter = {command = "alejandra";};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "typst";
|
||||||
|
indent = {
|
||||||
|
tab-width = 4;
|
||||||
|
unit = " ";
|
||||||
|
};
|
||||||
|
}
|
||||||
# { name = "rust"; }
|
# { name = "rust"; }
|
||||||
];
|
];
|
||||||
language-servers = {
|
language-servers = {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,10 @@
|
||||||
{ pkgs, inputs, ... }: {
|
{
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
(import ./helix.nix { inherit pkgs inputs; })
|
(import ./helix.nix {inherit pkgs inputs;})
|
||||||
# ./hyprland.nix
|
# ./hyprland.nix
|
||||||
./cargo.nix
|
./cargo.nix
|
||||||
];
|
];
|
||||||
|
|
@ -13,8 +17,7 @@
|
||||||
name = "Tao Tien";
|
name = "Tao Tien";
|
||||||
email = "29749622+taotien@users.noreply.github.com";
|
email = "29749622+taotien@users.noreply.github.com";
|
||||||
};
|
};
|
||||||
ui =
|
ui = {
|
||||||
{
|
|
||||||
default-command = "log";
|
default-command = "log";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -46,7 +49,7 @@
|
||||||
|
|
||||||
zellij = {
|
zellij = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = { };
|
settings = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
zoxide = {
|
zoxide = {
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,9 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
users.users.vy.packages = with pkgs; [
|
users.users.vy.packages = with pkgs; [
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
users.users.vy = {
|
users.users.vy = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "scanner" "lp" ];
|
extraGroups = ["scanner" "lp"];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue