nixos/user-jsutter.nix
2023-01-24 20:39:56 +00:00

181 lines
4.7 KiB
Nix

{ config, pkgs, home-manager, ... }:
let
home-manager = builtins.fetchTarball {
url = "https://github.com/nix-community/home-manager/archive/master.tar.gz";
sha256 = "05msmzfa45l9sr9ngd2cfxw66kw0x76d68gp29v5ilrakf8nc90w";
};
in
{
imports = [
(import "${home-manager}/nixos")
];
users.users.jsutter = {
isNormalUser = true;
description = "Julian Sutter";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
firefox
git
tor-browser-bundle-bin
nextcloud-client
vlc
deluge
steam
vmware-horizon-client
kleopatra
pinentry
arc-theme
zoom-us
slack
vscodium
];
};
# Options for Steam
programs.steam = {
enable = true;
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
home-manager.users.jsutter = {
home.username = "jsutter";
home.homeDirectory = "/home/jsutter";
programs.home-manager.enable = true;
home.stateVersion = "22.11";
# Git Configuration
programs.git = {
enable = true;
userName = "Julian Sutter";
userEmail = "jsutter@symbiotip.com";
};
dconf.settings = {
"org/gnome/mutter" = {
experimental-features = [ "scale-monitor-framebuffer" ];
};
};
# GTK Stuff
gtk = {
enable = true;
iconTheme = {
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
};
theme = {
name = "palenight";
package = pkgs.palenight-theme;
};
cursorTheme = {
name = "Numix-Cursor";
package = pkgs.numix-cursor-theme;
};
gtk3.extraConfig = {
Settings = ''
gtk-application-prefer-dark-theme=1
'';
};
gtk4.extraConfig = {
Settings = ''
gtk-application-prefer-dark-theme=1
'';
};
};
# dconf Stuff - use "sudo dconf watch /" to observe changes and write them here.
dconf.settings = {
"org/gnome/shell" = {
favorite-apps = [
"org.gnome.Console.desktop"
"firefox.desktop"
"slack.desktop"
"codium.desktop"
"com.nextcloud.desktopclient.nextcloud.desktop"
"Zoom.desktop"
"steam.desktop"
"vmware-view.desktop" ];
};
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
enable-hot-corners = false;
};
"org/gnome/desktop/wm/preferences" = {
workspace-names = [ "Main" ];
};
"org/gnome/desktop/background" = {
picture-uri = "file:///run/current-system/sw/share/backgrounds/gnome/vnc-l.png";
picture-uri-dark = "file:///run/current-system/sw/share/backgrounds/gnome/vnc-d.png";
};
"org/gnome/desktop/screensaver" = {
picture-uri = "file:///run/current-system/sw/share/backgrounds/gnome/vnc-d.png";
primary-color = "#3465a4";
secondary-color = "#000000";
};
"org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = [ # "gnome-extensions list" to get a list.
"user-theme@gnome-shell-extensions.gcampax.github.com"
"trayIconsReloaded@selfmade.pl"
"Vitals@CoreCoding.com"
"dash-to-panel@jderose9.github.com"
"sound-output-device-chooser@kgshank.net"
"space-bar@luchrioh"
];
};
};
home.packages = with pkgs; [
gnomeExtensions.user-themes
gnomeExtensions.tray-icons-reloaded
gnomeExtensions.vitals
gnomeExtensions.dash-to-panel
gnomeExtensions.sound-output-device-chooser
gnomeExtensions.space-bar
];
home.sessionVariables.GTK_THEME = "palenight";
# Add Firefox GNOME theme directory
home.file."firefox-gnome-theme" = {
target = ".mozilla/firefox/default/chrome/firefox-gnome-theme";
source = fetchTarball {
url = "https://github.com/rafaelmardojai/firefox-gnome-theme/archive/master.tar.gz";
sha256 = "1k7w7drq5xvxccxijjl6spf4w02ghil9jya35crysa3hi0mvyn29";
};
};
programs.firefox = {
enable = true;
profiles.default = {
name = "Default";
settings = {
"extensions.activeThemeID" = "firefox-compact-dark@mozilla.org";
# For Firefox GNOME theme:
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.tabs.drawInTitlebar" = false;
"svg.context-properties.content.enabled" = true;
};
userChrome = ''
@import "firefox-gnome-theme/userChrome.css";
@import "firefox-gnome-theme/theme/colors/dark.css";
'';
};
};
};
# Zerotier
services.zerotierone.joinNetworks = [ "b15644912e748585" ];
services.zerotierone.enable= true;
}