abolish with scoping
This commit is contained in:
parent
322e8cad34
commit
d5687fa024
9 changed files with 107 additions and 303 deletions
205
configs/home.nix
205
configs/home.nix
|
@ -1,205 +0,0 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
pkgs-unstable,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
# Home Manager needs a bit of information about you and the paths it should
|
||||
# manage.
|
||||
home.username = "cdombroski";
|
||||
home.homeDirectory = "/home/cdombroski";
|
||||
|
||||
# This value determines the Home Manager release that your configuration is
|
||||
# compatible with. This helps avoid breakage when a new Home Manager release
|
||||
# introduces backwards incompatible changes.
|
||||
#
|
||||
# You should not change this value, even if you update Home Manager. If you do
|
||||
# want to update the value, then make sure to first check the Home Manager
|
||||
# release notes.
|
||||
home.stateVersion = "23.11"; # Please read the comment before changing.
|
||||
|
||||
# The home.packages option allows you to install Nix packages into your
|
||||
# environment.
|
||||
home.packages = [
|
||||
pkgs.element-desktop
|
||||
pkgs.discord
|
||||
pkgs.openrgb-with-all-plugins
|
||||
pkgs.keepassxc
|
||||
pkgs.heroic
|
||||
pkgs.r2modman
|
||||
pkgs.mangohud
|
||||
pkgs.hack-font
|
||||
pkgs.htop
|
||||
pkgs.jellyfin-media-player
|
||||
pkgs.konversation
|
||||
pkgs.nixd
|
||||
pkgs.yakuake
|
||||
pkgs.mgba
|
||||
pkgs.vlc
|
||||
pkgs-unstable.jetbrains.idea-community
|
||||
pkgs.dolphin-emu-primehack
|
||||
pkgs.steamtinkerlaunch
|
||||
pkgs.mangohud
|
||||
pkgs.lutris
|
||||
pkgs.knossosnet
|
||||
pkgs.lilypond
|
||||
pkgs.musescore
|
||||
pkgs.protontricks
|
||||
pkgs.protonup-qt
|
||||
(pkgs.retroarch.override {
|
||||
cores = with pkgs.libretro; [
|
||||
beetle-psx-hw
|
||||
pcsx2
|
||||
mesen
|
||||
bsnes
|
||||
parallel-n64
|
||||
dolphin
|
||||
sameboy
|
||||
citra
|
||||
gpsp
|
||||
desmume
|
||||
fbneo
|
||||
nxengine
|
||||
mgba
|
||||
];
|
||||
})
|
||||
|
||||
# # Adds the 'hello' command to your environment. It prints a friendly
|
||||
# # "Hello, world!" when run.
|
||||
# pkgs.hello
|
||||
|
||||
# # It is sometimes useful to fine-tune packages, for example, by applying
|
||||
# # overrides. You can do that directly here, just don't forget the
|
||||
# # parentheses. Maybe you want to install Nerd Fonts with a limited number of
|
||||
# # fonts?
|
||||
# (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
|
||||
|
||||
# # You can also create simple shell scripts directly inside your
|
||||
# # configuration. For example, this adds a command 'my-hello' to your
|
||||
# # environment:
|
||||
# (pkgs.writeShellScriptBin "my-hello" ''
|
||||
# echo "Hello, ${config.home.username}!"
|
||||
# '')
|
||||
];
|
||||
|
||||
services.syncthing = {
|
||||
enable = true;
|
||||
tray.enable = true;
|
||||
};
|
||||
|
||||
systemd.user = {
|
||||
targets.tray = {
|
||||
Unit = {
|
||||
Description = "System Tray";
|
||||
Requires = [ "graphical-session.target" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs.config = {
|
||||
allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "discord" ];
|
||||
permittedInsecurePackages = [ "electron-25.9.0" ];
|
||||
};
|
||||
xdg.configFile."autostart/yakuake.desktop".source = "${pkgs.yakuake}/share/applications/org.kde.yakuake.desktop";
|
||||
|
||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
||||
# plain files is through 'home.file'.
|
||||
home.file = {
|
||||
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
||||
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
||||
# # symlink to the Nix store copy.
|
||||
# ".screenrc".source = dotfiles/screenrc;
|
||||
|
||||
# # You can also set the file content immediately.
|
||||
# ".gradle/gradle.properties".text = ''
|
||||
# org.gradle.console=verbose
|
||||
# org.gradle.daemon.idletimeout=3600000
|
||||
# '';
|
||||
};
|
||||
|
||||
home.preferXdgDirectories = true;
|
||||
xdg.enable = true;
|
||||
|
||||
# Home Manager can also manage your environment variables through
|
||||
# 'home.sessionVariables'. If you don't want to manage your shell through Home
|
||||
# Manager then you have to manually source 'hm-session-vars.sh' located at
|
||||
# either
|
||||
#
|
||||
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
# or
|
||||
#
|
||||
# ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
# or
|
||||
#
|
||||
# /etc/profiles/per-user/cdombroski/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
home.sessionVariables = {
|
||||
ANDROID_USER_HOME = "${config.xdg.dataHome}/android";
|
||||
CARGO_HOME = "${config.xdg.dataHome}/cargo";
|
||||
DOTNET_CLI_HOME = "${config.xdg.dataHome}/dotnet";
|
||||
DVDCSS_CACHE = "${config.xdg.dataHome}/dvdcss";
|
||||
GRADLE_USER_HOME = "${config.xdg.dataHome}/gradle";
|
||||
JAVA_OPTIONS = "-Djava.util.prefs.userRoot=${config.xdg.configHome}/java";
|
||||
NODE_REPL_HISTORY = "${config.xdg.stateHome}/node_repl_history";
|
||||
NPM_CONFIG_USERCONFIG = "${config.xdg.configHome}/npm/npmrc";
|
||||
PYTHON_HISTORY = "${config.xdg.stateHome}/python_history";
|
||||
RUSTUP_HOME = "${config.xdg.dataHome}/rustup";
|
||||
XCOMPOSE_CACHE = "${config.xdg.cacheHome}/X11/xcompose";
|
||||
};
|
||||
home.shellAliases = {
|
||||
adb = ''HOME="${config.xdg.dataHome}/android" adb'';
|
||||
mvn = "mvn -gs ${config.xdg.configHome}/maven/settings.xml";
|
||||
wget = "wget --hsts-file=${config.xdg.dataHome}/wget-hsts";
|
||||
};
|
||||
home.sessionPath = [ "$HOME/.local/bin" ];
|
||||
gtk.gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs = {
|
||||
home-manager.enable = true;
|
||||
bash = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
historyFile = "${config.xdg.stateHome}/bash/history";
|
||||
};
|
||||
direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
gpg = {
|
||||
enable = true;
|
||||
homedir = "${config.xdg.dataHome}/gnupg";
|
||||
};
|
||||
vim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
vim-sensible
|
||||
vim-fugitive
|
||||
vim-eunuch
|
||||
vim-endwise
|
||||
vim-lsp
|
||||
vim-lsp-settings
|
||||
nerdtree
|
||||
nerdtree-git-plugin
|
||||
vim-devicons
|
||||
editorconfig-vim
|
||||
];
|
||||
};
|
||||
vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium-fhs;
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
mkhl.direnv
|
||||
eamodio.gitlens
|
||||
jnoortheen.nix-ide
|
||||
redhat.java
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -130,9 +130,9 @@
|
|||
config = { };
|
||||
};
|
||||
devshells.default = {
|
||||
packages = with pkgs; [
|
||||
deploy-rs.deploy-rs
|
||||
sops
|
||||
packages = [
|
||||
pkgs.deploy-rs.deploy-rs
|
||||
pkgs.sops
|
||||
];
|
||||
};
|
||||
packages.zwave-js-ui = pkgs.callPackage ./pkgs/zwave-js-ui.nix { };
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
programs.vim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
plugins = builtins.attrValues {
|
||||
inherit (pkgs.vimPlugins)
|
||||
vim-sensible
|
||||
vim-fugitive
|
||||
vim-eunuch
|
||||
|
@ -14,6 +15,7 @@
|
|||
nerdtree-git-plugin
|
||||
vim-devicons
|
||||
editorconfig-vim
|
||||
];
|
||||
;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -8,11 +8,11 @@
|
|||
programs.vscode = lib.mkIf osConfig.services.displayManager.enable {
|
||||
enable = true;
|
||||
package = pkgs.vscodium-fhs;
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
mkhl.direnv
|
||||
eamodio.gitlens
|
||||
jnoortheen.nix-ide
|
||||
redhat.java
|
||||
extensions = [
|
||||
pkgs.vscode-extensions.mkhl.direnv
|
||||
pkgs.vscode-extensions.eamodio.gitlens
|
||||
pkgs.vscode-extensions.jnoortheen.nix-ide
|
||||
pkgs.vscode-extensions.redhat.java
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -139,9 +139,9 @@
|
|||
services.adblock = {
|
||||
startAt = "daily";
|
||||
postStop = "systemctl try-reload-or-restart unbound";
|
||||
path = with pkgs; [
|
||||
gawk
|
||||
wget
|
||||
path = [
|
||||
pkgs.gawk
|
||||
pkgs.wget
|
||||
];
|
||||
script = ''
|
||||
wget -nv -O - https://raw.githubusercontent.com/hagezi/dns-blocklists/main/unbound/tif.blacklist.conf > /tmp/new.conf
|
||||
|
@ -155,9 +155,9 @@
|
|||
};
|
||||
|
||||
environment = {
|
||||
systemPackages = with pkgs; [
|
||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||
wget
|
||||
systemPackages = [
|
||||
pkgs.vim
|
||||
pkgs.wget
|
||||
];
|
||||
persistence."/persist" = {
|
||||
hideMounts = true;
|
||||
|
|
|
@ -63,7 +63,7 @@ in
|
|||
allowUnfree = true;
|
||||
permittedInsecurePackages = [ "electron-25.9.0" ];
|
||||
packageOverrides = pkgs: {
|
||||
steam = pkgs.steam.override { extraPkgs = pkgs: with pkgs; [ winetricks ]; };
|
||||
steam = pkgs.steam.override { extraPkgs = pkgs: [ pkgs.winetricks ]; };
|
||||
};
|
||||
};
|
||||
hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
|
@ -121,7 +121,9 @@ in
|
|||
};
|
||||
|
||||
environment = {
|
||||
systemPackages = with pkgs; [
|
||||
systemPackages =
|
||||
builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
vim-full
|
||||
libreoffice-qt
|
||||
firefox
|
||||
|
@ -143,25 +145,27 @@ in
|
|||
r2modman
|
||||
mangohud
|
||||
hack-font
|
||||
htop
|
||||
jellyfin-media-player
|
||||
konversation
|
||||
nixd
|
||||
yakuake
|
||||
mgba
|
||||
vlc
|
||||
pkgs-unstable.jetbrains.idea-community
|
||||
dolphin-emu-primehack
|
||||
steamtinkerlaunch
|
||||
mangohud
|
||||
lutris
|
||||
knossosnet
|
||||
lilypond
|
||||
musescore
|
||||
protontricks
|
||||
protonup-qt
|
||||
(retroarch.override {
|
||||
cores = with libretro; [
|
||||
;
|
||||
inherit (pkgs-unstable.jetbrains) idea-community;
|
||||
}
|
||||
++ [
|
||||
(pkgs.retroarch.override {
|
||||
cores = builtins.attrValues {
|
||||
inherit (pkgs.libretro)
|
||||
beetle-psx-hw
|
||||
pcsx2
|
||||
mesen
|
||||
|
@ -175,7 +179,8 @@ in
|
|||
fbneo
|
||||
nxengine
|
||||
mgba
|
||||
];
|
||||
;
|
||||
};
|
||||
})
|
||||
];
|
||||
persistence."/persist" = {
|
||||
|
@ -212,9 +217,9 @@ in
|
|||
remotePlay.openFirewall = true;
|
||||
gamescopeSession.enable = true;
|
||||
};
|
||||
firefox.nativeMessagingHosts.packages = with pkgs; [
|
||||
keepassxc
|
||||
libsForQt5.plasma-browser-integration
|
||||
firefox.nativeMessagingHosts.packages = [
|
||||
pkgs.keepassxc
|
||||
pkgs.kdePackages.plasma-browser-integration
|
||||
];
|
||||
gamemode = {
|
||||
enable = true;
|
||||
|
|
|
@ -258,7 +258,7 @@ in
|
|||
imageFile = pkgs.dockerTools.buildLayeredImage {
|
||||
name = "my-zwave-js-ui";
|
||||
tag = "latest";
|
||||
contents = with pkgs; [ cacert ];
|
||||
contents = [ pkgs.cacert ];
|
||||
config.Cmd = [ "${inputs.self.packages.${pkgs.stdenv.system}.zwave-js-ui}/bin/zwave-js-ui" ];
|
||||
};
|
||||
volumes = [ "zwave-config:/usr/src/app/store" ];
|
||||
|
@ -488,15 +488,17 @@ in
|
|||
};
|
||||
nix.settings.trusted-users = [ "nixremote" ];
|
||||
environment = {
|
||||
systemPackages = with pkgs; [
|
||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||
systemPackages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
vim
|
||||
dive
|
||||
podman-tui
|
||||
docker-compose
|
||||
tcpdump
|
||||
ethtool
|
||||
pkgs-unstable.recyclarr
|
||||
];
|
||||
;
|
||||
inherit (pkgs-unstable) recyclarr;
|
||||
};
|
||||
persistence."/persist" = {
|
||||
enableWarnings = false;
|
||||
hideMounts = true;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{
|
||||
boot.plymouth = {
|
||||
enable = true;
|
||||
themePackages = with pkgs; [ (adi1090x-plymouth-themes.override { selected_themes = [ "owl" ]; }) ];
|
||||
themePackages = [ (pkgs.adi1090x-plymouth-themes.override { selected_themes = [ "owl" ]; }) ];
|
||||
theme = lib.mkForce "owl";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -20,6 +20,6 @@ buildNpmPackage rec {
|
|||
description = "Full featured Z-Wave Control Panel and MQTT Gateway.";
|
||||
homepage = "https://zwave-js.github.io/zwave-js-ui/";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ cdombroski ];
|
||||
maintainers = [ lib.maintainers.cdombroski ];
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue