Files
vargix-os/components/user-kurtisa.nix
2024-05-07 23:12:32 +10:00

185 lines
5.6 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports =
[
(import "${home-manager}/nixos")
];
# Setup Hypervisor
boot.kernelModules = [ "kvm-intel" "kvm-amd" ];
virtualisation.libvirtd.enable = true;
virtualisation.spiceUSBRedirection.enable = true;
#docker
virtualisation.docker.enable = true;
#GS CONNECT
programs.kdeconnect = {
enable = true;
package = pkgs.gnomeExtensions.gsconnect;
};
# My user account. Don't forget to set a password with passwd.
users.users.kurtisa = {
isNormalUser = true;
description = "Kurtis Andrews";
extraGroups = [ "networkmanager" "wheel" "docker" ];
packages = with pkgs; [
firefox
thunderbird
chromium
gimp
bitwarden
discord
libreoffice
vscode
plexamp
gnome.gnome-boxes
gnomeExtensions.caffeine
gnome.gnome-disk-utility
];
shell = pkgs.fish;
};
home-manager.users.kurtisa = {pkgs, lib, ...}: let inherit (lib.hm.gvariant) mkTuple mkUint32 mkDouble mkVariant; in {
home.stateVersion = "22.11";
dconf.settings = {
"org/gnome/desktop/peripherals/touchpad" = {
tap-to-click = true;
two-finger-scrolling-enabled = true;
};
"/org/gnome/mutter" = {
edge-tiling = true;
};
"org/gnome/shell".enabled-extensions = [
"caffeine@patapon.info"
"gsconnect@andyholmes.github.io"
];
"org/gnome/desktop/interface" = {
clock-format = "12h";
clock-show-weekday = true;
};
"org/gnome/shell/world-clocks".locations = [
(mkVariant (mkTuple [
(mkUint32 2)
(mkVariant (mkTuple [
"New York"
"KNYC"
true
[ (mkTuple [ (mkDouble "0.71180344078725644") (mkDouble "-1.2909618758762367") ]) ]
[ (mkTuple [ (mkDouble "0.71059804659265924") (mkDouble "-1.2916478949920254") ]) ]
]))
]))
];
"org/gnome/shell/weather".locations = [
(mkVariant (mkTuple [
(mkUint32 2)
(mkVariant (mkTuple [
"Rockhampton"
"YBRK"
true
[ (mkTuple [ (mkDouble "-0.40811615094024323") (mkDouble "2.6261387536518987") ]) ]
[ (mkTuple [ (mkDouble "-0.40811615094024323") (mkDouble "2.626720524251466") ]) ]
]))
]))
];
};
programs.fish = {
enable = true;
shellAliases = {
vargix-os = "~/.vargix-os/vargix-os";
};
};
programs.thefuck.enable = true;
programs.starship = {
enable = true;
enableFishIntegration = true;
settings = {
add_newline = false;
format = "$shlvl$shell$username$hostname$nix_shell$git_branch$git_commit$git_state$git_status$directory$jobs$cmd_duration$character";
shlvl = {
disabled = false;
symbol = "";
style = "bright-red bold";
};
shell = {
disabled = false;
format = "$indicator";
fish_indicator = "";
bash_indicator = "[BASH](bright-white) ";
zsh_indicator = "[ZSH](bright-white) ";
};
username = {
style_user = "bright-white bold";
style_root = "bright-red bold";
};
rlang = { detect_files = [ ]; };
python = { disabled = true; };
};
};
programs.git = {
enable = true;
userName = "Kurtis";
userEmail = "kurtis@whonet.com.au";
};
};
# Add chrome extensions to chrome
programs.chromium.enable = true;
programs.chromium.extensions = [
"cjpalhdlnbpafiamejdnhcphjbkeiagm" # ublock origin
"nngceckbapebfimnlniiiahkandclblb" # Bitwarden
"bkjdcppkdgccnhjibfhlhmeiafnjfamk" # Rich url
"bfhkfdnddlhfippjbflipboognpdpoeh" # remarkable
"pnidmkljnhbjfffciajlcpeldoljnidn" # linkwarden
];
# Add some web apps into gnome
programs.chromium.extraOpts = {
"WebAppInstallForceList" = [
{
"create_desktop_shortcut" = true;
"default_launch_container" = "window";
"url" = "https://bookmarks.tcmeta.net";
}
{
"create_desktop_shortcut" = true;
"default_launch_container" = "window";
"url" = "https://home.kk.tcmeta.net";
}
{
"create_desktop_shortcut" = true;
"default_launch_container" = "window";
"url" = "https://it-tools.tech/";
}
{
"create_desktop_shortcut" = true;
"default_launch_container" = "window";
"url" = "https://cook.tcmeta.net";
}
];
};
# add my search engine
programs.chromium.defaultSearchProviderEnabled = true;
programs.chromium.defaultSearchProviderSearchURL = "https://search.tcmeta.net/search?q={searchTerms}";
# This is a random wallpaper maker for when you restart your pc.
systemd.user.tmpfiles.rules = [
# Automatically pick a random wallpaper at startup.
"L+ %h/.config/autostart/wallpaper.desktop 0755 - - - ${pkgs.writeText "wallpaper.desktop" ''
[Desktop Entry]
Name=Wallpaper Randomiser
Terminal=false
Exec=${pkgs.writeShellScript "wallpaper.sh" ''
FILE=$(${pkgs.fd}/bin/fd '(.*\.jpeg|.*\.jpg|.*\.png)' $HOME/Pictures/wallpapers | shuf -n 1)
dconf write /org/gnome/desktop/background/picture-uri "'file://$FILE'"
dconf write /org/gnome/desktop/background/picture-uri-dark "'file://$FILE'"
dconf write /org/gnome/desktop/screensaver/picture-uri "'file://$FILE'"
''}
Type=Application
Categories=Utility;
NoDisplay=true
''}"
];
}