Files
nixos-config/nixos-configurations/shared-desktop.nix

153 lines
3.7 KiB
Nix
Raw Normal View History

2024-02-11 13:16:43 +01:00
{ pkgs, lib, ... }:
2023-07-02 00:18:17 +02:00
{
2023-07-05 07:35:46 +02:00
services = {
2023-07-05 22:54:09 +02:00
xserver = {
enable = true;
displayManager.gdm.enable = true;
desktopManager.gnome.enable = true;
2024-05-25 13:30:15 +02:00
excludePackages = [ pkgs.xterm ];
2023-07-05 22:54:09 +02:00
};
2023-07-05 07:35:46 +02:00
pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
2023-07-17 10:16:28 +02:00
printing.enable = true;
resolved.enable = true;
2024-01-13 16:58:15 +01:00
mullvad-vpn = {
enable = true;
package = pkgs.mullvad-vpn;
};
2024-02-11 13:16:43 +01:00
postgresql = {
enable = true;
package = pkgs.postgresql_15;
ensureDatabases = [ "dcbot" "todos" ];
authentication = lib.mkForce ''
local all all trust
2024-02-13 15:45:47 +01:00
host all all 0.0.0.0/0 scram-sha-256
2024-02-16 07:44:50 +01:00
host all all ::1/128 scram-sha-256
2024-02-11 13:16:43 +01:00
'';
};
2024-04-27 13:50:30 +02:00
};
2024-02-07 11:08:33 +01:00
networking.firewall = {
allowedTCPPorts = [ 53317 ];
allowedUDPPorts = [ 53317 ];
};
2023-07-16 15:33:51 +02:00
programs = {
2023-08-05 11:55:19 +02:00
steam.enable = true;
2023-08-04 22:48:00 +02:00
gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
java.enable = true;
2024-04-30 16:26:20 +02:00
nix-ld = {
enable = true;
libraries = with pkgs; [
nodejs
nodePackages.pnpm
];
};
2023-07-16 15:33:51 +02:00
};
2024-01-04 14:07:22 +01:00
2023-08-05 11:55:19 +02:00
hardware.pulseaudio.enable = false;
2023-07-05 06:03:46 +02:00
2024-01-13 16:58:15 +01:00
hardware.bluetooth.enable = true;
2023-07-02 00:18:17 +02:00
home-manager.users.thiloho = { pkgs, lib, config, ... }: {
2023-07-05 22:54:09 +02:00
programs = {
2023-09-17 23:27:45 +02:00
firefox = {
enable = true;
2024-04-25 08:25:23 +02:00
package = pkgs.firefox-devedition.override {
cfg = { speechSynthesisSupport = true; };
};
2023-09-17 23:27:45 +02:00
};
2023-10-03 17:13:28 +02:00
chromium = {
enable = true;
2023-11-16 08:02:23 +01:00
package = pkgs.brave;
2023-10-03 17:13:28 +02:00
};
2023-07-17 21:13:13 +02:00
vscode = {
enable = true;
2024-06-07 22:18:37 +02:00
package = pkgs.vscodium;
2024-02-21 21:35:39 +01:00
mutableExtensionsDir = false;
extensions = with pkgs.vscode-extensions; [
svelte.svelte-vscode
jnoortheen.nix-ide
ritwickdey.liveserver
astro-build.astro-vscode
2023-08-21 12:06:29 +02:00
dbaeumer.vscode-eslint
2023-11-07 18:27:37 +01:00
bradlc.vscode-tailwindcss
2024-02-03 21:01:15 +01:00
esbenp.prettier-vscode
2024-02-21 21:24:29 +01:00
pkief.material-icon-theme
2024-03-21 22:48:49 +01:00
unifiedjs.vscode-mdx
2024-03-27 17:02:32 +01:00
rust-lang.rust-analyzer
tamasfe.even-better-toml
mkhl.direnv
2024-06-02 03:04:24 +02:00
james-yu.latex-workshop
2024-04-30 16:26:20 +02:00
]
++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
{
name = "biome";
publisher = "biomejs";
version = "2024.3.70509";
sha256 = "1v17wb0b789c08kb5idm32jbi404xr90x7xlbcy7zgy3q2z1xpdj";
}
2023-07-17 21:13:13 +02:00
];
userSettings = {
2023-08-06 00:09:03 +02:00
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nil";
2024-01-13 16:58:15 +01:00
"editor.indentSize" = 2;
"editor.tabSize" = 2;
2024-02-16 07:44:50 +01:00
"typescript.preferences.importModuleSpecifier" = "relative";
2024-02-21 21:24:29 +01:00
"workbench.iconTheme" = "material-icon-theme";
2024-04-30 16:26:20 +02:00
"biome.lspBin" = "./node_modules/@biomejs/biome";
"svelte.enable-ts-plugin" = true;
2023-07-17 21:13:13 +02:00
};
};
2023-08-05 11:59:49 +02:00
git = {
enable = true;
userName = "thiloho";
userEmail = "123883702+thiloho@users.noreply.github.com";
2024-01-04 14:07:22 +01:00
signing = { signByDefault = true; };
2023-08-05 11:59:49 +02:00
};
2024-03-27 17:02:32 +01:00
direnv = {
enable = true;
enableBashIntegration = true;
nix-direnv.enable = true;
};
2023-08-05 11:55:19 +02:00
obs-studio.enable = true;
2023-07-02 00:18:17 +02:00
};
home = {
2024-01-04 14:07:22 +01:00
sessionVariables = { NIXOS_OZONE_WL = 1; };
2023-07-02 00:18:17 +02:00
packages = with pkgs; [
libreoffice
airshipper
tldr
2023-07-08 17:16:21 +02:00
prismlauncher
2023-07-15 18:37:17 +02:00
ventoy-full
2023-07-22 20:59:59 +02:00
psensor
2024-01-04 14:07:22 +01:00
nil
2023-08-11 07:31:16 +02:00
zoom-us
teamspeak5_client
2023-08-29 11:14:03 +02:00
discord
2023-11-16 04:26:47 +01:00
qbittorrent
2023-10-01 04:20:47 +02:00
neofetch
2023-11-22 00:55:52 +01:00
godot_4
backblaze-b2
2024-02-07 11:08:33 +01:00
localsend
2024-02-07 20:52:15 +01:00
mullvad-browser
2024-02-13 15:45:47 +01:00
spotify
2024-02-20 20:59:10 +01:00
insomnia
2024-05-20 20:52:31 +02:00
dbeaver-bin
2024-06-02 03:04:24 +02:00
texliveFull
2024-06-05 20:08:54 +02:00
gnome.gnome-tweaks
gnome.gnome-themes-extra
2023-07-02 00:18:17 +02:00
];
};
};
}