forked from jan-leila/nix-config
reconfigured how home manager gets applied
This commit is contained in:
parent
26b231a329
commit
ff295dc7ac
8 changed files with 438 additions and 361 deletions
|
@ -1,17 +1,12 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
osConfig,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.users.leyla;
|
||||
in {
|
||||
imports = [
|
||||
../../overlays/intellij.nix
|
||||
../../overlays/vscodium.nix
|
||||
];
|
||||
|
||||
}:
|
||||
{
|
||||
nixpkgs = {
|
||||
overlays = [
|
||||
inputs.nix-vscode-extensions.overlays.default
|
||||
|
@ -19,119 +14,177 @@ in {
|
|||
};
|
||||
|
||||
programs = {
|
||||
bash.shellAliases = lib.mkIf cfg.isFullUser {
|
||||
bash.shellAliases = lib.mkIf config.isFullUser {
|
||||
code = "codium";
|
||||
};
|
||||
|
||||
steam = lib.mkIf cfg.isFullUser {
|
||||
vscode = let
|
||||
extensions = inputs.nix-vscode-extensions.extensions.${pkgs.system};
|
||||
open-vsx = extensions.open-vsx;
|
||||
vscode-marketplace = extensions.vscode-marketplace;
|
||||
in
|
||||
{
|
||||
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
|
||||
|
||||
package = pkgs.vscodium;
|
||||
|
||||
mutableExtensionsDir = false;
|
||||
enableUpdateCheck = false;
|
||||
enableExtensionUpdateCheck = false;
|
||||
|
||||
userSettings = {
|
||||
"workbench.colorTheme" = "Atom One Dark";
|
||||
};
|
||||
|
||||
extensions = with extensions.open-vsx; [
|
||||
# vs code feel extensions
|
||||
ms-vscode.atom-keybindings
|
||||
akamud.vscode-theme-onedark
|
||||
streetsidesoftware.code-spell-checker
|
||||
streetsidesoftware.code-spell-checker-german
|
||||
streetsidesoftware.code-spell-checker-italian
|
||||
jeanp413.open-remote-ssh
|
||||
|
||||
# nix extensions
|
||||
pinage404.nix-extension-pack
|
||||
jnoortheen.nix-ide
|
||||
|
||||
# html extensions
|
||||
formulahendry.auto-rename-tag
|
||||
ms-vscode.live-server
|
||||
|
||||
# js extensions
|
||||
dsznajder.es7-react-js-snippets
|
||||
dbaeumer.vscode-eslint
|
||||
standard.vscode-standard
|
||||
firsttris.vscode-jest-runner
|
||||
stylelint.vscode-stylelint
|
||||
tauri-apps.tauri-vscode
|
||||
|
||||
# misc extensions
|
||||
bungcip.better-toml
|
||||
|
||||
# the number at the start of the name here doesnt resolve nicely so we have to refernce it as a part of open-vsx directly instead of though with
|
||||
open-vsx."10nates".ollama-autocoder
|
||||
]
|
||||
++ (with extensions.vscode-marketplace; [
|
||||
# js extensions
|
||||
karyfoundation.nearley
|
||||
]);
|
||||
};
|
||||
|
||||
noisetorch.enable = cfg.isFullUser;
|
||||
|
||||
adb.enable = cfg.isFullUser;
|
||||
# steam = lib.mkIf config.isFullUser {
|
||||
# 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
|
||||
# };
|
||||
|
||||
# noisetorch.enable = config.isFullUser;
|
||||
|
||||
# adb.enable = config.isFullUser;
|
||||
};
|
||||
|
||||
users.users.leyla.packages = lib.mkIf (cfg.isFullUser || cfg.isThinUser) (
|
||||
lib.mkMerge [
|
||||
(
|
||||
with pkgs; [
|
||||
# comand line tools
|
||||
yt-dlp
|
||||
ffmpeg
|
||||
imagemagick
|
||||
]
|
||||
)
|
||||
(
|
||||
lib.mkIf (!cfg.isThinUser) (
|
||||
home = {
|
||||
packages = lib.mkIf (config.isFullUser || config.isThinUser) (
|
||||
lib.mkMerge [
|
||||
(
|
||||
with pkgs; [
|
||||
#foss platforms
|
||||
signal-desktop
|
||||
bitwarden
|
||||
firefox
|
||||
ungoogled-chromium
|
||||
libreoffice
|
||||
inkscape
|
||||
gimp
|
||||
krita
|
||||
freecad
|
||||
# cura
|
||||
kicad-small
|
||||
makemkv
|
||||
transmission_4-gtk
|
||||
onionshare
|
||||
easytag
|
||||
# rhythmbox
|
||||
(lib.mkIf cfg.hasGPU obs-studio)
|
||||
# wireshark
|
||||
# rpi-imager
|
||||
# fritzing
|
||||
|
||||
# proprietary platforms
|
||||
discord
|
||||
obsidian
|
||||
steam
|
||||
(lib.mkIf cfg.hasGPU davinci-resolve)
|
||||
|
||||
# development tools
|
||||
(vscode-with-extensions.override {
|
||||
vscode = vscodium;
|
||||
vscodeExtensions = with open-vsx;
|
||||
[
|
||||
# vs code feel extensions
|
||||
ms-vscode.atom-keybindings
|
||||
akamud.vscode-theme-onedark
|
||||
streetsidesoftware.code-spell-checker
|
||||
streetsidesoftware.code-spell-checker-german
|
||||
streetsidesoftware.code-spell-checker-italian
|
||||
jeanp413.open-remote-ssh
|
||||
|
||||
# nix extensions
|
||||
pinage404.nix-extension-pack
|
||||
jnoortheen.nix-ide
|
||||
|
||||
# html extensions
|
||||
formulahendry.auto-rename-tag
|
||||
ms-vscode.live-server
|
||||
|
||||
# js extensions
|
||||
dsznajder.es7-react-js-snippets
|
||||
dbaeumer.vscode-eslint
|
||||
standard.vscode-standard
|
||||
firsttris.vscode-jest-runner
|
||||
stylelint.vscode-stylelint
|
||||
tauri-apps.tauri-vscode
|
||||
|
||||
# misc extensions
|
||||
bungcip.better-toml
|
||||
|
||||
open-vsx."10nates".ollama-autocoder
|
||||
]
|
||||
++ (with vscode-marketplace; [
|
||||
# js extensions
|
||||
karyfoundation.nearley
|
||||
]);
|
||||
})
|
||||
androidStudioPackages.canary
|
||||
jetbrains.idea-community
|
||||
dbeaver-bin
|
||||
bruno
|
||||
|
||||
# system tools
|
||||
protonvpn-gui
|
||||
openvpn
|
||||
nextcloud-client
|
||||
noisetorch
|
||||
|
||||
# hardware managment tools
|
||||
(lib.mkIf config.hardware.piperMouse.enable piper)
|
||||
(lib.mkIf config.hardware.openRGB.enable openrgb)
|
||||
(lib.mkIf config.hardware.viaKeyboard.enable via)
|
||||
# comand line tools
|
||||
yt-dlp
|
||||
ffmpeg
|
||||
imagemagick
|
||||
]
|
||||
)
|
||||
)
|
||||
]
|
||||
);
|
||||
(
|
||||
lib.mkIf (!config.isThinUser) (
|
||||
with pkgs; [
|
||||
#foss platforms
|
||||
signal-desktop
|
||||
bitwarden
|
||||
firefox
|
||||
ungoogled-chromium
|
||||
libreoffice
|
||||
inkscape
|
||||
gimp
|
||||
krita
|
||||
freecad
|
||||
# cura
|
||||
kicad-small
|
||||
makemkv
|
||||
transmission_4-gtk
|
||||
onionshare
|
||||
easytag
|
||||
# rhythmbox
|
||||
(lib.mkIf config.hasGPU obs-studio)
|
||||
# wireshark
|
||||
# rpi-imager
|
||||
# fritzing
|
||||
|
||||
# proprietary platforms
|
||||
discord
|
||||
obsidian
|
||||
steam
|
||||
(lib.mkIf config.hasGPU davinci-resolve)
|
||||
|
||||
# development tools
|
||||
# (vscode-with-extensions.override {
|
||||
# vscode = vscodium;
|
||||
# vscodeExtensions = with open-vsx;
|
||||
# [
|
||||
# # vs code feel extensions
|
||||
# ms-vscode.atom-keybindings
|
||||
# akamud.vscode-theme-onedark
|
||||
# streetsidesoftware.code-spell-checker
|
||||
# streetsidesoftware.code-spell-checker-german
|
||||
# streetsidesoftware.code-spell-checker-italian
|
||||
# jeanp413.open-remote-ssh
|
||||
|
||||
# # nix extensions
|
||||
# pinage404.nix-extension-pack
|
||||
# jnoortheen.nix-ide
|
||||
|
||||
# # html extensions
|
||||
# formulahendry.auto-rename-tag
|
||||
# ms-vscode.live-server
|
||||
|
||||
# # js extensions
|
||||
# dsznajder.es7-react-js-snippets
|
||||
# dbaeumer.vscode-eslint
|
||||
# standard.vscode-standard
|
||||
# firsttris.vscode-jest-runner
|
||||
# stylelint.vscode-stylelint
|
||||
# tauri-apps.tauri-vscode
|
||||
|
||||
# # misc extensions
|
||||
# bungcip.better-toml
|
||||
|
||||
# open-vsx."10nates".ollama-autocoder
|
||||
# ]
|
||||
# ++ (with vscode-marketplace; [
|
||||
# # js extensions
|
||||
# karyfoundation.nearley
|
||||
# ]);
|
||||
# })
|
||||
androidStudioPackages.canary
|
||||
jetbrains.idea-community
|
||||
dbeaver-bin
|
||||
bruno
|
||||
|
||||
# system tools
|
||||
protonvpn-gui
|
||||
openvpn
|
||||
nextcloud-client
|
||||
noisetorch
|
||||
|
||||
# hardware managment tools
|
||||
(lib.mkIf osConfig.hardware.piperMouse.enable piper)
|
||||
(lib.mkIf osConfig.hardware.openRGB.enable openrgb)
|
||||
(lib.mkIf osConfig.hardware.viaKeyboard.enable via)
|
||||
]
|
||||
)
|
||||
)
|
||||
]
|
||||
);
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue