175 lines
3.4 KiB
Nix
175 lines
3.4 KiB
Nix
{ lib, system, inputs, pkgs, config, ... }: {
|
|
imports = [ ./modules/greetd ];
|
|
|
|
system.extraDependencies = with pkgs; [ ungoogled-chromium ];
|
|
|
|
environment.systemPackages = with pkgs; [ nix-output-monitor ];
|
|
environment.sessionVariables.FLAKE = "/home/admin/nixnew";
|
|
|
|
programs.steam = {
|
|
enable = true;
|
|
extraCompatPackages = [
|
|
pkgs.proton-ge-bin
|
|
];
|
|
};
|
|
|
|
fonts = {
|
|
enableDefaultPackages = false;
|
|
|
|
packages = (with inputs.stable.legacyPackages.${system}; [
|
|
dejavu_fonts
|
|
nerdfonts
|
|
noto-fonts
|
|
noto-fonts-cjk
|
|
]) ++ (with pkgs; [
|
|
corefonts
|
|
vistafonts
|
|
]);
|
|
|
|
fontconfig = {
|
|
defaultFonts = {
|
|
serif = [ "DejaVu Serif" ];
|
|
sansSerif = [ "DejaVu Sans" ];
|
|
monospace = [ "JetBrainsMono Nerd Font" ];
|
|
};
|
|
};
|
|
};
|
|
|
|
programs.ssh = {
|
|
enableAskPassword = true;
|
|
askPassword = lib.getExe pkgs.lxqt.lxqt-openssh-askpass;
|
|
startAgent = true;
|
|
};
|
|
|
|
systemd = {
|
|
# kde polkit agent
|
|
user.services.polkit-agent = {
|
|
wants = [ "graphical-session.target" ];
|
|
after = [ "graphical-session.target" ];
|
|
|
|
serviceConfig = {
|
|
Type = "simple";
|
|
ExecStart = "${pkgs.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1";
|
|
Restart = "on-failure";
|
|
RestartSec = 1;
|
|
TimeoutStopSec = 10;
|
|
};
|
|
};
|
|
};
|
|
|
|
environment.variables = {
|
|
XCURSOR_SIZE = "24";
|
|
};
|
|
|
|
programs = {
|
|
gnupg.agent = {
|
|
enable = true;
|
|
pinentryPackage = pkgs.pinentry-qt;
|
|
};
|
|
kdeconnect = {
|
|
package = pkgs.kdePackages.kdeconnect-kde;
|
|
enable = true;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
syncthing = {
|
|
enable = true;
|
|
user = config.main-user;
|
|
dataDir = "/home/${config.main-user}/.syncthing";
|
|
configDir = "/home/${config.main-user}/.config/syncthing";
|
|
};
|
|
};
|
|
|
|
networking.firewall = {
|
|
allowedTCPPorts = [
|
|
# syncthing TCP
|
|
22000
|
|
];
|
|
allowedUDPPorts = [
|
|
# syncthing QUIC
|
|
22000
|
|
# syncthing discovery
|
|
21027
|
|
];
|
|
};
|
|
|
|
home-manager.users.${config.main-user} = homeInputs: let
|
|
homeConfig = homeInputs.config;
|
|
in {
|
|
imports = [
|
|
./modules/quickshell
|
|
./modules/fcitx5
|
|
./modules/wofi
|
|
./modules/dolphin
|
|
./modules/firefox
|
|
./modules/element.nix
|
|
./modules/keepassxc
|
|
./dev-support.nix
|
|
];
|
|
|
|
home.packages = with pkgs; [
|
|
kwrite
|
|
krita
|
|
gimp
|
|
vlc
|
|
mpv
|
|
qimgv
|
|
kdePackages.filelight kdePackages.kirigami kdePackages.kquickcharts # deps
|
|
curl
|
|
cantata
|
|
logseq
|
|
lxqt.pavucontrol-qt
|
|
helvum
|
|
htop
|
|
btop
|
|
speedcrunch
|
|
libreoffice-qt6
|
|
ripgrep
|
|
qbittorrent
|
|
signal-desktop
|
|
anki-bin
|
|
kid3
|
|
wireshark
|
|
mumble
|
|
freetube
|
|
|
|
distrobox
|
|
xdg-utils
|
|
light
|
|
|
|
unrar # used by ark
|
|
libnotify # test with it a lot
|
|
];
|
|
|
|
programs = {
|
|
alacritty = import ./config/alacritty.nix;
|
|
};
|
|
|
|
programs = {
|
|
direnv = {
|
|
enable = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
mpd = {
|
|
enable = true;
|
|
musicDirectory = "/pool/music";
|
|
network.startWhenNeeded = true;
|
|
|
|
extraConfig = ''
|
|
audio_output {
|
|
type "pipewire"
|
|
name "Pipewire"
|
|
}
|
|
|
|
replaygain "track"
|
|
replaygain_limit "no"
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
}
|