2022-02-05 21:42:36 +02:00
|
|
|
{ pkgs, config, inputs, lib, ... }: let
|
|
|
|
portRanges = [
|
|
|
|
# GSConnect
|
|
|
|
{ from = 1716; to = 1764; }
|
|
|
|
];
|
|
|
|
in {
|
|
|
|
imports = [
|
|
|
|
./package-sets.nix
|
2023-01-22 17:26:50 +02:00
|
|
|
./nixpak-tricks.nix
|
2023-05-01 20:07:33 +03:00
|
|
|
./hidden-apps.nix
|
2023-05-02 22:30:37 +03:00
|
|
|
./helix-desktop.nix
|
2023-05-02 23:16:29 +03:00
|
|
|
./open-in-blackbox.nix
|
2023-08-26 15:56:37 +03:00
|
|
|
./bluetooth.nix
|
2023-12-03 03:35:44 +02:00
|
|
|
./pkexec.nix
|
2023-12-06 02:27:47 +02:00
|
|
|
./security.nix
|
2022-02-05 21:42:36 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
services.xserver = {
|
|
|
|
enable = true;
|
|
|
|
displayManager.gdm.enable = true;
|
|
|
|
desktopManager.gnome = {
|
|
|
|
enable = true;
|
|
|
|
extraGSettingsOverrides = builtins.readFile ./gsettings.conf;
|
|
|
|
favoriteAppsOverride = builtins.readFile ./appbar.conf;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.adb.enable = true;
|
|
|
|
|
|
|
|
environment.gnome.excludePackages = with pkgs.gnome; [
|
|
|
|
gnome-logs
|
|
|
|
gnome-music
|
2023-05-01 20:31:23 +03:00
|
|
|
pkgs.gnome-console
|
2022-02-05 21:42:36 +02:00
|
|
|
pkgs.gnome-photos
|
2023-05-01 20:17:17 +03:00
|
|
|
pkgs.gnome-tour
|
2023-05-02 20:33:56 +03:00
|
|
|
pkgs.orca
|
2023-11-25 11:58:01 +02:00
|
|
|
pkgs.snapshot
|
2022-02-05 21:42:36 +02:00
|
|
|
];
|
|
|
|
|
2023-05-01 20:22:17 +03:00
|
|
|
desktop.hiddenApps = [
|
|
|
|
"startcenter.desktop" # LibreOffice Start Center
|
2023-05-01 22:59:34 +03:00
|
|
|
"xsltfilter.desktop" # LibreOffice XSLT based filters
|
2023-05-01 20:22:17 +03:00
|
|
|
"xterm.desktop"
|
|
|
|
"cups.desktop"
|
|
|
|
"scrcpy-console.desktop"
|
2023-05-01 22:59:34 +03:00
|
|
|
|
|
|
|
# all the Krita mimetype stuff
|
|
|
|
"krita_brush.desktop"
|
|
|
|
"krita_csv.desktop"
|
|
|
|
"krita_exr.desktop"
|
|
|
|
"krita_gif.desktop"
|
|
|
|
"krita_heif.desktop"
|
|
|
|
"krita_heightmap.desktop"
|
|
|
|
"krita_jp2.desktop"
|
|
|
|
"krita_jpeg.desktop"
|
|
|
|
"krita_jxl.desktop"
|
|
|
|
"krita_kra.desktop"
|
|
|
|
"krita_krz.desktop"
|
|
|
|
"krita_ora.desktop"
|
|
|
|
"krita_pdf.desktop"
|
|
|
|
"krita_png.desktop"
|
|
|
|
"krita_psd.desktop"
|
|
|
|
"krita_qimageio.desktop"
|
|
|
|
"krita_raw.desktop"
|
|
|
|
"krita_spriter.desktop"
|
|
|
|
"krita_svg.desktop"
|
|
|
|
"krita_tga.desktop"
|
|
|
|
"krita_tiff.desktop"
|
|
|
|
"krita_webp.desktop"
|
|
|
|
"krita_xcf.desktop"
|
2023-05-01 20:22:17 +03:00
|
|
|
];
|
|
|
|
|
2022-02-05 21:42:36 +02:00
|
|
|
environment.variables = {
|
2022-03-31 02:39:41 +03:00
|
|
|
EDITOR = "hx";
|
2022-02-05 21:42:36 +02:00
|
|
|
SSH_ASKPASS = lib.mkForce "";
|
|
|
|
};
|
|
|
|
|
2023-11-14 22:56:14 +02:00
|
|
|
fonts.packages = with pkgs; [
|
2022-02-05 21:42:36 +02:00
|
|
|
terminus_font_fancy
|
2022-02-21 20:58:11 +02:00
|
|
|
terminus_font_ttf
|
2022-02-05 21:42:36 +02:00
|
|
|
nerdfonts-terminus
|
|
|
|
noto-fonts
|
|
|
|
];
|
|
|
|
|
|
|
|
security = {
|
|
|
|
sudo.enable = false;
|
|
|
|
doas.enable = true;
|
2022-08-30 01:20:40 +03:00
|
|
|
doas.extraRules = lib.mkForce [ rec {
|
2022-02-05 21:42:36 +02:00
|
|
|
groups = [ "wheel" ];
|
2022-08-30 01:20:40 +03:00
|
|
|
noPass = !config.services.fprintd.enable;
|
|
|
|
persist = !noPass;
|
2022-02-05 21:42:36 +02:00
|
|
|
}];
|
|
|
|
};
|
|
|
|
|
|
|
|
services.printing.enable = true;
|
|
|
|
|
|
|
|
networking.firewall.allowedTCPPortRanges = portRanges;
|
|
|
|
networking.firewall.allowedUDPPortRanges = portRanges;
|
|
|
|
|
|
|
|
services.avahi.enable = false;
|
|
|
|
|
|
|
|
services.fwupd.enable = true;
|
|
|
|
|
|
|
|
boot = {
|
|
|
|
loader.timeout = 0;
|
|
|
|
initrd.verbose = false;
|
|
|
|
consoleLogLevel = 0;
|
|
|
|
kernelParams = [ "quiet" "udev.log_priority=3" ];
|
|
|
|
plymouth.enable = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
zramSwap.enable = true;
|
|
|
|
zramSwap.algorithm = "zstd";
|
|
|
|
|
|
|
|
services.packagekit.enable = lib.mkForce false;
|
|
|
|
programs.gnome-terminal.enable = false;
|
|
|
|
|
2023-01-26 00:19:33 +02:00
|
|
|
qt = {
|
2022-02-05 21:42:36 +02:00
|
|
|
enable = true;
|
|
|
|
platformTheme = "gtk2";
|
|
|
|
style = "gtk2";
|
|
|
|
};
|
|
|
|
|
2023-05-02 20:31:16 +03:00
|
|
|
virtualisation.libvirtd = {
|
|
|
|
enable = true;
|
|
|
|
qemu.package = pkgs.qemu_kvm;
|
|
|
|
};
|
2022-06-07 21:25:12 +03:00
|
|
|
|
|
|
|
services.printing.drivers = with pkgs; [ hplip gutenprint ];
|
2022-02-05 21:42:36 +02:00
|
|
|
}
|