2024-02-24 02:30:17 -08:00
|
|
|
{
|
|
|
|
|
inputs,
|
|
|
|
|
lib,
|
|
|
|
|
pkgs,
|
|
|
|
|
modulesPath,
|
|
|
|
|
...
|
|
|
|
|
}: {
|
2023-07-11 00:38:39 -07:00
|
|
|
environment.systemPackages = with pkgs; [
|
2024-01-30 10:46:26 -08:00
|
|
|
# xorg.xkill
|
2023-07-11 00:38:39 -07:00
|
|
|
bat
|
|
|
|
|
bottom
|
2023-10-19 11:01:23 -07:00
|
|
|
cifs-utils
|
2023-07-11 00:38:39 -07:00
|
|
|
du-dust
|
2023-09-30 22:39:53 -07:00
|
|
|
exfatprogs
|
2023-09-28 23:33:56 -07:00
|
|
|
ffmpeg
|
2023-07-11 00:38:39 -07:00
|
|
|
firefox
|
|
|
|
|
git
|
2024-02-01 19:24:36 -08:00
|
|
|
inputs.helix.packages.${pkgs.system}.default
|
2024-01-30 10:46:26 -08:00
|
|
|
libthai
|
2023-11-01 18:58:21 -07:00
|
|
|
localsend
|
2024-01-30 10:46:26 -08:00
|
|
|
macchina
|
2023-09-28 23:33:56 -07:00
|
|
|
mesa
|
2024-01-30 09:32:08 -08:00
|
|
|
mpv
|
2023-07-11 00:38:39 -07:00
|
|
|
ouch
|
2023-09-30 22:39:53 -07:00
|
|
|
ripgrep
|
2024-01-30 10:46:26 -08:00
|
|
|
rustdesk
|
|
|
|
|
screen
|
2023-07-11 00:38:39 -07:00
|
|
|
skim
|
|
|
|
|
tree
|
|
|
|
|
wezterm
|
|
|
|
|
wget
|
2023-08-25 17:40:48 -07:00
|
|
|
yt-dlp
|
2024-02-11 02:29:23 -08:00
|
|
|
zellij
|
2023-09-28 23:33:56 -07:00
|
|
|
zstd
|
2023-07-11 00:38:39 -07:00
|
|
|
];
|
2023-09-30 17:07:49 -07:00
|
|
|
programs.partition-manager.enable = lib.mkDefault true;
|
2023-07-11 00:38:39 -07:00
|
|
|
|
2023-09-30 17:07:49 -07:00
|
|
|
services.tailscale.enable = true;
|
2024-01-30 09:32:08 -08:00
|
|
|
services.tailscale.package = pkgs.tailscale;
|
2024-02-08 23:59:38 -08:00
|
|
|
services.resolved.enable = true;
|
2024-01-22 10:40:07 -08:00
|
|
|
|
2023-09-30 17:07:49 -07:00
|
|
|
services.openssh.enable = true;
|
2023-07-18 22:14:59 -07:00
|
|
|
services.flatpak.enable = lib.mkDefault true;
|
|
|
|
|
services.printing.enable = lib.mkDefault true;
|
2023-10-09 17:54:57 -07:00
|
|
|
|
|
|
|
|
services.smartd.enable = true;
|
2023-09-30 17:07:49 -07:00
|
|
|
services.btrfs.autoScrub.enable = lib.mkDefault true;
|
2023-07-11 00:38:39 -07:00
|
|
|
|
|
|
|
|
environment.variables = {
|
|
|
|
|
EDITOR = "hx";
|
|
|
|
|
VISUAL = "hx";
|
2024-02-11 02:29:23 -08:00
|
|
|
PAGER = "bat";
|
2023-11-01 01:50:30 -07:00
|
|
|
SKIM_DEFAULT_COMMAND = "rg --files";
|
2023-07-11 00:38:39 -07:00
|
|
|
};
|
|
|
|
|
|
2023-07-19 00:52:04 -07:00
|
|
|
environment.sessionVariables = {
|
|
|
|
|
EDITOR = "hx";
|
|
|
|
|
VISUAL = "hx";
|
2024-02-11 02:29:23 -08:00
|
|
|
PAGER = "bat";
|
2023-11-01 01:50:30 -07:00
|
|
|
SKIM_DEFAULT_COMMAND = "rg --files";
|
2023-07-19 00:52:04 -07:00
|
|
|
};
|
|
|
|
|
|
2023-07-11 00:38:39 -07:00
|
|
|
hardware.enableAllFirmware = true;
|
2023-07-18 22:14:59 -07:00
|
|
|
hardware.bluetooth.enable = lib.mkDefault true;
|
2023-07-11 00:38:39 -07:00
|
|
|
|
2023-09-30 17:07:49 -07:00
|
|
|
boot.loader.systemd-boot.enable = lib.mkDefault true;
|
|
|
|
|
boot.loader.efi.canTouchEfiVariables = lib.mkDefault true;
|
2023-11-01 01:50:30 -07:00
|
|
|
boot.loader.timeout = 1;
|
2024-02-24 02:30:17 -08:00
|
|
|
boot.supportedFilesystems = ["ntfs"];
|
2023-07-11 00:38:39 -07:00
|
|
|
|
2023-09-28 23:33:56 -07:00
|
|
|
networking.networkmanager = {
|
|
|
|
|
enable = true;
|
|
|
|
|
};
|
2023-07-11 00:38:39 -07:00
|
|
|
networking.firewall.enable = false;
|
|
|
|
|
|
2023-11-29 22:34:53 -08:00
|
|
|
services.xserver.enable = lib.mkDefault true;
|
2024-02-05 13:47:51 -08:00
|
|
|
services.xserver.xkb.layout = "us";
|
2023-07-11 00:38:39 -07:00
|
|
|
systemd.services.display-manager.restartIfChanged = false;
|
2023-07-18 22:14:59 -07:00
|
|
|
services.xserver.displayManager.sddm.enable = lib.mkDefault true;
|
|
|
|
|
services.xserver.desktopManager.plasma5.enable = lib.mkDefault true;
|
2023-07-11 00:38:39 -07:00
|
|
|
environment.plasma5.excludePackages = with pkgs.libsForQt5; [
|
|
|
|
|
elisa
|
|
|
|
|
konsole
|
2023-09-28 23:33:56 -07:00
|
|
|
gwenview
|
2023-07-11 00:38:39 -07:00
|
|
|
];
|
|
|
|
|
|
2024-02-24 14:31:26 -08:00
|
|
|
security.rtkit.enable = true;
|
2023-07-11 00:38:39 -07:00
|
|
|
services.pipewire = {
|
2023-11-29 23:43:51 -08:00
|
|
|
enable = lib.mkDefault true;
|
2023-07-11 00:38:39 -07:00
|
|
|
alsa.enable = true;
|
|
|
|
|
alsa.support32Bit = true;
|
|
|
|
|
pulse.enable = true;
|
|
|
|
|
};
|
|
|
|
|
|
2024-02-19 22:41:58 -08:00
|
|
|
security.sudo-rs.enable = true;
|
|
|
|
|
# security.sudo-rs.extraRules = [{
|
|
|
|
|
# commands = [
|
|
|
|
|
# { command = "${pkgs.systemd}/bin/bootctl set-oneshot auto-windows"; options = [ "NOPASSWD" ]; }
|
|
|
|
|
# ];
|
|
|
|
|
# groups = [ "wheel" ];
|
|
|
|
|
# }];
|
|
|
|
|
|
2023-07-11 00:38:39 -07:00
|
|
|
nix.settings = {
|
|
|
|
|
experimental-features = "nix-command flakes";
|
|
|
|
|
auto-optimise-store = true;
|
2024-02-24 02:30:17 -08:00
|
|
|
trusted-users = ["root" "@wheel"];
|
2023-07-11 00:38:39 -07:00
|
|
|
};
|
2024-02-24 02:30:17 -08:00
|
|
|
nixpkgs.config = {allowUnfree = true;};
|
2023-07-11 00:38:39 -07:00
|
|
|
|
2023-07-18 22:14:59 -07:00
|
|
|
systemd.extraConfig = ''
|
|
|
|
|
DefaultTimeoutStopSec=15s
|
|
|
|
|
'';
|
|
|
|
|
|
2023-07-11 00:38:39 -07:00
|
|
|
time.timeZone = "US/Pacific";
|
2023-10-19 11:01:23 -07:00
|
|
|
i18n.defaultLocale = "en_US.utf8";
|
2024-02-24 02:30:17 -08:00
|
|
|
i18n.supportedLocales = ["all"];
|
2023-10-30 14:10:57 -07:00
|
|
|
i18n.extraLocaleSettings = {
|
|
|
|
|
LC_CTYPE = "en_US.UTF-8";
|
|
|
|
|
LC_MESSAGES = "en_US.UTF-8";
|
|
|
|
|
LC_ALL = "en_US.UTF-8";
|
|
|
|
|
};
|
2024-02-21 17:59:25 -08:00
|
|
|
i18n.inputMethod = {
|
|
|
|
|
enabled = "fcitx5";
|
|
|
|
|
fcitx5.addons = with pkgs; [
|
|
|
|
|
fcitx5-gtk
|
|
|
|
|
fcitx5-mozc
|
|
|
|
|
fcitx5-rime
|
|
|
|
|
];
|
|
|
|
|
};
|
2023-07-11 00:38:39 -07:00
|
|
|
|
2024-02-24 02:30:17 -08:00
|
|
|
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
2023-07-18 22:14:59 -07:00
|
|
|
|
|
|
|
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
2023-09-30 18:47:13 -07:00
|
|
|
system.stateVersion = lib.mkDefault "23.05";
|
2023-07-11 00:38:39 -07:00
|
|
|
}
|