Added dotfiles and hardware to user-specific folders

This commit is contained in:
Nathan Anderson 2024-01-12 16:18:45 -07:00
parent 2bb838aef4
commit 3652381567
62 changed files with 78 additions and 158 deletions

View File

Before

Width:  |  Height:  |  Size: 221 KiB

After

Width:  |  Height:  |  Size: 221 KiB

View File

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 150 KiB

View File

Before

Width:  |  Height:  |  Size: 218 KiB

After

Width:  |  Height:  |  Size: 218 KiB

View File

Before

Width:  |  Height:  |  Size: 772 KiB

After

Width:  |  Height:  |  Size: 772 KiB

View File

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

Before

Width:  |  Height:  |  Size: 344 KiB

After

Width:  |  Height:  |  Size: 344 KiB

View File

Before

Width:  |  Height:  |  Size: 591 KiB

After

Width:  |  Height:  |  Size: 591 KiB

View File

Before

Width:  |  Height:  |  Size: 138 KiB

After

Width:  |  Height:  |  Size: 138 KiB

View File

@ -57,7 +57,7 @@
modules = [ modules = [
./nixos/desktop_configuration.nix ./nixos/desktop_configuration.nix
# Setup nix-ld # Setup nix-ld
nix-ld.nixosModules.nix-ld # nix-ld.nixosModules.nix-ld
# Setup home manager # Setup home manager
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;

View File

@ -30,7 +30,7 @@ in
engines = { engines = {
"Startpage" = { "Startpage" = {
urls = [{ urls = [{
template = "https://www.startpage.com/do/mypage.pl?prfe=a1ffaae1a3f4dc133b6e11b3d611db561598fc16fbc43a22c2694805a5b4d46852c848cb54f3ccbc9cea0e8e83dab567d3abe2b350870e7781f8701d4558a1c988aced444d1e8d8a7b830563/search?query={searchTerms}"; template = "https://www.startpage.com/sp/search?query={searchTerms}";
}]; }];
}; };
}; };

View File

@ -1,9 +1,5 @@
{ inputs, outputs, lib, config, pkgs, userName, fullName, email, hostName, desktop, gaming, ... }: { inputs, outputs, lib, config, pkgs, userName, fullName, email, hostName, desktop, gaming, ... }:
{ {
# Home Manager needs a bit of information about you and the paths it should
# manage.
#
# nixpkgs.overlays = [ # nixpkgs.overlays = [
# inputs.nur.overlay # inputs.nur.overlay
# ]; # ];
@ -29,13 +25,71 @@
home.packages = with pkgs; [ home.packages = with pkgs; [
# nur.repos.crazazy.js.eslint # nur.repos.crazazy.js.eslint
# inputs.nixpkgs-stable.legacyPackages.x86_64-linux.corectrl # inputs.nixpkgs-stable.legacyPackages.x86_64-linux.corectrl
# kakoune
#
# Dev Tools
#
dbeaver
cargo
kakoune
# flutter
docker
docker-compose
python310
nodejs_21
zig
### LSP's
rnix-lsp # Nix LSP
openscad-lsp
nodePackages.typescript-language-server
vscode-langservers-extracted # provides eslint, markdown, json, css, and html lsp
rubyPackages.solargraph
python310Packages.python-lsp-server
zls
### Misc
# android-udev-rules
# android-tools
# sdkmanager
openscad
#
# Gaming
#
wine-wayland
webcord
#
# Better Unix
#
bat
duf
fd
fzf
lsd
ripgrep
gtop
#
# Photo / Video
#
davinci-resolve-studio
imv
mpv
gimp
#
# Communication
#
mumble
slack
signal-desktop
#
# Other
#
keepassxc keepassxc
obs-studio obs-studio
signal-desktop
waybar
wofi
xfce.thunar
# Install fonts # Install fonts
(nerdfonts.override { fonts = [ "Hermit" "Overpass" ]; }) (nerdfonts.override { fonts = [ "Hermit" "Overpass" ]; })
@ -58,7 +112,7 @@
# # the Nix store. Activating the configuration will then make '~/.screenrc' a # # the Nix store. Activating the configuration will then make '~/.screenrc' a
# # symlink to the Nix store copy. # # symlink to the Nix store copy.
# ".screenrc".source = dotfiles/screenrc; # ".screenrc".source = dotfiles/screenrc;
source = ../../dotfiles; source = ../../nate/dotfiles;
recursive = true; recursive = true;
# # You can also set the file content immediately. # # You can also set the file content immediately.
@ -85,24 +139,6 @@
XDG_CURRENT_DESKTOP="sway"; XDG_CURRENT_DESKTOP="sway";
}; };
wayland.windowManager.sway = {
enable = true;
# config = rec {
# modifier = "Mod4";
# terminal = "foot";
# # startup = [
# # {command = "firefox";}
# # ];
# };
};
# kdeconnect setup
# services.kdeconnect = {
# enable = true;
# indicator = true;
# };
# Git setup # Git setup
programs.git = { programs.git = {
enable = true; enable = true;
@ -113,9 +149,6 @@
# Zsh setup # Zsh setup
programs.zsh = { programs.zsh = {
enable = true; enable = true;
#history = {
# Size = 10000;
#};
oh-my-zsh = { oh-my-zsh = {
enable = true; enable = true;
plugins = [ "git" ]; plugins = [ "git" ];

View File

@ -22,14 +22,15 @@
### ###
## Configuration ## Configuration
### ###
config = lib.mkIf config.swaywm.enable { config = lib.mkIf config.swaywm.enable {
programs.sway.enable = true;
nixpkgs.config.allowUnfree = config.swaywm.useNonFree; nixpkgs.config.allowUnfree = config.swaywm.useNonFree;
# For R2ModMan # For R2ModMan
nixpkgs.config.permittedInsecurePackages = [ # nixpkgs.config.permittedInsecurePackages = [
"electron-25.9.0" # "electron-25.9.0"
]; # ];
### ###
## XDG portal setup ## XDG portal setup
@ -70,11 +71,12 @@
swaylock swaylock
swayidle swayidle
wl-clipboard wl-clipboard
waybar
wdisplays wdisplays
wofi
xdg-utils xdg-utils
zsh zsh
# Fonts # Fonts
] ]
config.swaywm.systemPackages config.swaywm.systemPackages
# (lib.mkIf config.swaywm.installGaming [ # (lib.mkIf config.swaywm.installGaming [
@ -96,6 +98,9 @@
programs.zsh.enable = true; programs.zsh.enable = true;
programs.steam.enable = config.swaywm.installGaming; programs.steam.enable = config.swaywm.installGaming;
programs.adb.enable = true;
# kdeconnect setup
programs.kdeconnect.enable = true;
### ###
## Services ## Services
@ -109,9 +114,6 @@
pulse.enable = true; pulse.enable = true;
}; };
# kdeconnect setup
programs.kdeconnect.enable = true;
### ###
## Misc ## Misc
### ###
@ -120,9 +122,8 @@
security.polkit.enable = true; security.polkit.enable = true;
hardware.opengl = { hardware.opengl = {
enable = true; enable = true;
driSupport = true; driSupport = true;
}; };
}; };
} }

View File

@ -1,52 +0,0 @@
{ lib, config, pkgs, ... }:
let
cfg = config.main_user;
in
{
options.main_user = {
enable = lib.mkEnableOption "enable user module";
isDesktopUser = lib.mkOption {
default = false;
example = true;
description = "Add additional user groups for desktop users";
};
userName = lib.mkOption {
default = "mainuser";
description = "username";
};
};
config = lib.mkIf cfg.enable {
users.users.${cfg.userName} = lib.mkMerge [
{
isNormalUser = true;
initialPassword = "password";
description = "main user";
shell = pkgs.zsh;
}
(lib.mkIf (!cfg.isDesktopUser) {
extraGroups = [
"wheel"
"networkmanager"
cfg.userName
];
})
(lib.mkIf cfg.isDesktopUser {
extraGroups = [
"wheel"
"networkmanager"
"corectrl"
cfg.userName
"video"
"audio"
# For android
"adbusers"
];
})
];
};

View File

@ -1,7 +1,7 @@
{ config, lib, inputs, outputs, pkgs, userName, hostName, desktop, timeZone, gaming, system, ... }: { config, lib, inputs, outputs, pkgs, userName, hostName, desktop, timeZone, gaming, system, ... }:
let let
supportedDesktops = [ "sway" ]; supportedDesktops = [ "sway" "kde" ];
supportedDesktopsStr = lib.strings.concatStringsSep ", " supportedDesktops; supportedDesktopsStr = lib.strings.concatStringsSep ", " supportedDesktops;
in in
{ {
@ -52,72 +52,10 @@ in
useNonFree = true; useNonFree = true;
installGaming = gaming; installGaming = gaming;
systemPackages = with pkgs; [ systemPackages = with pkgs; [
#
# Dev Tools
#
dbeaver
cargo
kakoune
# flutter
docker
docker-compose
python310
nodejs_21
zig
### LSP's
rnix-lsp # Nix LSP
openscad-lsp
nodePackages.typescript-language-server
vscode-langservers-extracted # provides eslint, markdown, json, css, and html lsp
rubyPackages.solargraph
python310Packages.python-lsp-server
zls
### Misc
# android-udev-rules
# android-tools
# sdkmanager
openscad
#
# Productivity
#
libreoffice libreoffice
#
# Gaming
#
mumble
wine-wayland
r2modman
#
# Better Unix
#
bat
duf
fd
fzf
lsd
ripgrep
gtop
#
# Photo / Video
#
davinci-resolve-studio
imv
mpv
gimp
#
# Work
#
slack
]; ];
}; };
programs.adb.enable = true;
system.stateVersion = "23.11"; # Did you read the comment? system.stateVersion = "23.11"; # Did you read the comment?
} }