131 lines
2.4 KiB
Nix
131 lines
2.4 KiB
Nix
{
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}@args:
|
|
{
|
|
boot = {
|
|
tmp.cleanOnBoot = true;
|
|
loader = {
|
|
systemd-boot.enable = true;
|
|
efi.canTouchEfiVariables = true;
|
|
};
|
|
};
|
|
|
|
time.timeZone = "Asia/Singapore";
|
|
|
|
networking.networkmanager = {
|
|
enable = true;
|
|
};
|
|
|
|
networking.nftables.enable = true;
|
|
networking.firewall = {
|
|
enable = true;
|
|
allowedTCPPorts = [ 22 3000 3001 ];
|
|
trustedInterfaces = [ "tailscale0" ];
|
|
};
|
|
|
|
services.openssh = {
|
|
enable = true;
|
|
settings.PasswordAuthentication = false;
|
|
};
|
|
users.users.yadunut = {
|
|
shell = pkgs.zsh;
|
|
extraGroups = [ "input" ];
|
|
};
|
|
programs.zsh.enable = true;
|
|
|
|
nix = {
|
|
optimise = {
|
|
automatic = true;
|
|
};
|
|
settings = {
|
|
trusted-users = [ "root" "yadunut" ];
|
|
experimental-features = [
|
|
"nix-command"
|
|
"flakes"
|
|
];
|
|
};
|
|
};
|
|
|
|
services.tailscale.enable = true;
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
pulse.enable = true;
|
|
jack.enable = true;
|
|
};
|
|
|
|
services.greetd = {
|
|
enable = true;
|
|
settings = rec {
|
|
initial_session={
|
|
command = "uwsm start hyprland-uwsm.desktop";
|
|
user = "yadunut";
|
|
};
|
|
default_session = initial_session;
|
|
};
|
|
};
|
|
hardware.bluetooth.enable = true;
|
|
services.blueman.enable = true;
|
|
security.rtkit.enable = true;
|
|
|
|
nixpkgs.config = {
|
|
allowUnfree = true;
|
|
rocmSupport = true;
|
|
};
|
|
|
|
services.ollama = {
|
|
enable = true;
|
|
host = "0.0.0.0";
|
|
port = 11434;
|
|
};
|
|
|
|
programs.hyprland = {
|
|
enable = true;
|
|
withUWSM = true;
|
|
};
|
|
|
|
programs._1password.enable = true;
|
|
programs._1password-gui.enable = true;
|
|
networking.hostName = "penguin";
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
git
|
|
neovim
|
|
kdePackages.dolphin
|
|
wofi
|
|
dunst
|
|
hyprpolkitagent
|
|
nixd
|
|
brightnessctl
|
|
open-webui
|
|
];
|
|
|
|
services.sunshine = {
|
|
enable = true;
|
|
capSysAdmin = true;
|
|
};
|
|
|
|
virtualisation.podman = {
|
|
enable = true;
|
|
dockerCompat = true;
|
|
defaultNetwork.settings.dns_enabled = true;
|
|
};
|
|
|
|
# gnome keyring
|
|
services.gnome.gnome-keyring.enable = true;
|
|
security.pam.services = {
|
|
greetd.enableGnomeKeyring = true;
|
|
login.enableGnomeKeyring = true;
|
|
};
|
|
|
|
fonts.packages = with pkgs;[ nerd-fonts.jetbrains-mono font-awesome
|
|
noto-fonts
|
|
noto-fonts-emoji
|
|
noto-fonts-cjk-sans
|
|
noto-fonts-extra
|
|
];
|
|
system.stateVersion = "25.11";
|
|
}
|