moved my user config to a users folder
This commit is contained in:
226
users/me/home.nix
Normal file
226
users/me/home.nix
Normal file
@@ -0,0 +1,226 @@
|
||||
|
||||
{ pkgs, workDir, confDir, secretsDir, inputs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../common/programs/git.nix
|
||||
../../common/programs/lf/default.nix
|
||||
../../common/programs/alacritty.nix
|
||||
../../common/programs/bash.nix
|
||||
../../common/programs/emacs/default.nix
|
||||
../../common/programs/rofi/default.nix
|
||||
../../common/programs/zathura.nix
|
||||
../../common/programs/ssh.nix
|
||||
../../common/programs/neovim.nix
|
||||
|
||||
];
|
||||
|
||||
home-manager.backupFileExtension = "backup";
|
||||
|
||||
home-manager.users.me = { config, pkgs, ... }: {
|
||||
/* The home.stateVersion option does not have a default and must be set */
|
||||
home.stateVersion = "23.05";
|
||||
|
||||
imports = [
|
||||
inputs.nix-index-database.hmModules.nix-index
|
||||
];
|
||||
|
||||
programs.nix-index.enable = false;
|
||||
programs.nix-index.enableBashIntegration = false;
|
||||
programs.nix-index.enableZshIntegration = false;
|
||||
#programs.command-not-found.enable = false;
|
||||
|
||||
gtk.cursorTheme = {
|
||||
name = "Yaru";
|
||||
};
|
||||
|
||||
dconf.settings = {
|
||||
"org/virt-manager/virt-manager/connections" = {
|
||||
autoconnect = ["qemu:///system"];
|
||||
uris = ["qemu:///system"];
|
||||
};
|
||||
};
|
||||
|
||||
services.dunst.enable = true;
|
||||
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
|
||||
home.sessionPath = [ "${workDir}/config/mybin" ];
|
||||
|
||||
home.file = {
|
||||
".config/rclone".source = config.lib.file.mkOutOfStoreSymlink "${secretsDir}/rclone-conf";
|
||||
".xmobarrc".source = "${confDir}/misc/xmobar.hs";
|
||||
".subversion/config".text = ''
|
||||
[miscellany]
|
||||
global-ignores = node_modules
|
||||
''; # documentation for this config file: https://svnbook.red-bean.com/en/1.7/svn.advanced.confarea.html
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
fonts.fonts = with pkgs; [
|
||||
hack-font
|
||||
];
|
||||
|
||||
users.users.me = {
|
||||
isNormalUser = true;
|
||||
passwordFile = "${secretsDir}/main-user-pwd";
|
||||
extraGroups = [ "networkmanager" "wheel" "libvirtd" ]; # Enable ‘sudo’ for the user.
|
||||
packages = with pkgs; [
|
||||
neovim
|
||||
vim
|
||||
obsidian
|
||||
tree
|
||||
xorg.xkbcomp
|
||||
rofi
|
||||
haskellPackages.xmonad-extras
|
||||
haskellPackages.xmonad-contrib
|
||||
alacritty
|
||||
xorg.xev
|
||||
ntfs3g
|
||||
htop
|
||||
subversion
|
||||
pv
|
||||
blueman
|
||||
pavucontrol
|
||||
spotify
|
||||
flameshot
|
||||
nodejs
|
||||
neofetch
|
||||
networkmanagerapplet
|
||||
haskellPackages.xmobar
|
||||
dolphin
|
||||
mupdf
|
||||
zathura
|
||||
xclip
|
||||
rclone
|
||||
stalonetray
|
||||
killall
|
||||
nil
|
||||
file
|
||||
wstunnel
|
||||
playerctl
|
||||
alsa-utils
|
||||
usbutils
|
||||
pciutils
|
||||
lshw
|
||||
jmtpfs
|
||||
pmutils
|
||||
cntr
|
||||
signal-desktop
|
||||
element-desktop
|
||||
discord
|
||||
wireshark
|
||||
zip
|
||||
unzip
|
||||
arp-scan
|
||||
gparted
|
||||
lolcat
|
||||
android-tools
|
||||
moonlight-qt
|
||||
comma
|
||||
(busybox.overrideAttrs (final: prev: {
|
||||
# get only nslookup from busybox
|
||||
# because the less would overwrite the actuall less and the busybox does not have -r
|
||||
# it's a pfusch, but it works
|
||||
postInstall = prev.postInstall + ''
|
||||
echo ============ removing anything but nslookup ============
|
||||
mv $out/bin/nslookup $out/nslookup
|
||||
mv $out/bin/busybox $out/busybox
|
||||
|
||||
rm $out/bin/*
|
||||
|
||||
mv $out/nslookup $out/bin/nslookup
|
||||
mv $out/busybox $out/bin/busybox
|
||||
'';
|
||||
}))
|
||||
delta
|
||||
|
||||
inputs.firefox.packages.${pkgs.system}.firefox-nightly-bin
|
||||
|
||||
# python....
|
||||
(python310.withPackages (p: with p; [
|
||||
pandas
|
||||
click
|
||||
click-aliases
|
||||
]))
|
||||
|
||||
# base-devel
|
||||
gcc
|
||||
|
||||
# rust
|
||||
cargo
|
||||
rust-analyzer
|
||||
|
||||
#localPacketTracer8
|
||||
|
||||
#ciscoPacketTracer8
|
||||
|
||||
# virtualisation
|
||||
qemu
|
||||
libvirt
|
||||
virt-manager
|
||||
freerdp
|
||||
];
|
||||
};
|
||||
|
||||
# xmonad
|
||||
services.xserver.windowManager.xmonad = {
|
||||
enable = true;
|
||||
config = ../../misc/xmonad.hs;
|
||||
#config = "${confDir}/misc/xmo";
|
||||
enableContribAndExtras = true;
|
||||
extraPackages = hpkgs: [
|
||||
hpkgs.xmobar
|
||||
#hpkgs.xmonad-screenshot
|
||||
];
|
||||
ghcArgs = [
|
||||
"-hidir /tmp" # place interface files in /tmp, otherwise ghc tries to write them to the nix store
|
||||
"-odir /tmp" # place object files in /tmp, otherwise ghc tries to write them to the nix store
|
||||
#"-i${xmonad-contexts}" # tell ghc to search in the respective nix store path for the module
|
||||
];
|
||||
};
|
||||
|
||||
services.syncthing = {
|
||||
enable = true;
|
||||
user = "me";
|
||||
#dataDir = "/home/";
|
||||
configDir = "/home/me/.config/syncthing";
|
||||
extraFlags = ["-no-browser"];
|
||||
openDefaultPorts = true;
|
||||
overrideDevices = true; # overrides any devices added or deleted through the WebUI
|
||||
overrideFolders = true; # overrides any folders added or deleted through the WebUI
|
||||
devices = {
|
||||
"seb-phone" = {
|
||||
id = builtins.readFile "${secretsDir}/syncthing-id-phone";
|
||||
#addresses = [ "tcp://192.168.200.24:22000" ];
|
||||
};
|
||||
"seb-tab" = {
|
||||
id = builtins.readFile "${secretsDir}/syncthing-id-tab";
|
||||
#addresses = [ "tcp://192.168.200.26:22000" ];
|
||||
};
|
||||
};
|
||||
folders = {
|
||||
"priv-share" = { # Name of folder in Syncthing, also the folder ID
|
||||
path = "/home/me/work/priv-share"; # Which folder to add to Syncthing
|
||||
#devices = [ "seb-phone" "seb-tab" ]; # Which devices to share the folder with
|
||||
devices = [ "seb-phone" "seb-tab" ]; # Which devices to share the folder with
|
||||
};
|
||||
};
|
||||
};
|
||||
fileSystems."${workDir}/priv-share/things" = {
|
||||
device = "${workDir}/things";
|
||||
options = [ "bind" ];
|
||||
};
|
||||
fileSystems."${workDir}/things/htl" = {
|
||||
device = "${workDir}/htl";
|
||||
options = [ "bind" ];
|
||||
};
|
||||
fileSystems."${workDir}/things/diplomarbeit" = {
|
||||
device = "${workDir}/diplomarbeit";
|
||||
options = [ "bind" ];
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user