Added dotfiles and hardware to user-specific folders
Before Width: | Height: | Size: 221 KiB After Width: | Height: | Size: 221 KiB |
Before Width: | Height: | Size: 150 KiB After Width: | Height: | Size: 150 KiB |
Before Width: | Height: | Size: 218 KiB After Width: | Height: | Size: 218 KiB |
Before Width: | Height: | Size: 772 KiB After Width: | Height: | Size: 772 KiB |
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 344 KiB After Width: | Height: | Size: 344 KiB |
Before Width: | Height: | Size: 591 KiB After Width: | Height: | Size: 591 KiB |
Before Width: | Height: | Size: 138 KiB After Width: | Height: | Size: 138 KiB |
|
@ -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;
|
||||||
|
|
|
@ -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}";
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -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" ];
|
||||||
|
|
|
@ -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;
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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"
|
|
||||||
];
|
|
||||||
})
|
|
||||||
];
|
|
||||||
};
|
|
|
@ -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?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|