hopefully the last complete restructure of this repo
This commit is contained in:
101
home-manager/packages/default.nix
Normal file
101
home-manager/packages/default.nix
Normal file
@@ -0,0 +1,101 @@
|
||||
{ config, lib, pkgs, pkgs-us, self, ... }: {
|
||||
|
||||
imports = [
|
||||
self.inputs.scripts.hmModule
|
||||
self.inputs.external.hmModule
|
||||
];
|
||||
|
||||
options.homeconfig.minimal = lib.options.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
config = lib.mkMerge [
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
killall
|
||||
zip
|
||||
unzip
|
||||
gcc
|
||||
zulu
|
||||
rsync
|
||||
lxqt.lxqt-policykit
|
||||
blueberry
|
||||
wl-clipboard
|
||||
firefox-wayland
|
||||
xfce.thunar
|
||||
grim
|
||||
slurp
|
||||
];
|
||||
}
|
||||
|
||||
(lib.mkIf (!config.homeconfig.minimal) {
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
home.packages = with pkgs; let
|
||||
pypkgs = ps: with ps; [
|
||||
numpy
|
||||
pandas
|
||||
torch
|
||||
torchvision
|
||||
torchaudio
|
||||
transformers
|
||||
datasets
|
||||
pyaudio
|
||||
faster-whisper
|
||||
pyusb
|
||||
];
|
||||
|
||||
in [
|
||||
|
||||
cava
|
||||
android-tools
|
||||
neovim-remote
|
||||
|
||||
(pkgs.python311.withPackages pypkgs)
|
||||
|
||||
brightnessctl
|
||||
libdbusmenu-gtk3
|
||||
lmms
|
||||
#unfree {
|
||||
geogebra
|
||||
#}
|
||||
|
||||
neofetch
|
||||
pkgs-us.mpv
|
||||
(ncmpcpp.override { visualizerSupport = true; clockSupport = true; })
|
||||
playerctl
|
||||
mpc-cli
|
||||
vlc
|
||||
pavucontrol
|
||||
yewtube
|
||||
ytmdl
|
||||
ffmpeg_5
|
||||
rpi-imager
|
||||
tigervnc
|
||||
keepassxc
|
||||
httplz
|
||||
|
||||
#school?
|
||||
#pkgs-us.digital
|
||||
|
||||
#3D modeling/printing
|
||||
kicad
|
||||
blender
|
||||
freecad
|
||||
cura
|
||||
|
||||
#productivity
|
||||
libreoffice
|
||||
super-productivity
|
||||
|
||||
#games
|
||||
prismlauncher
|
||||
];
|
||||
|
||||
})
|
||||
];
|
||||
|
||||
}
|
||||
15
home-manager/packages/external/default.nix
vendored
Normal file
15
home-manager/packages/external/default.nix
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
{ config, lib, pkgs, self, ... }: {
|
||||
|
||||
options = {
|
||||
homeconfig.externalPackages.enable = lib.options.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.homeconfig.externalPackages.enable {
|
||||
home.packages = [
|
||||
self.packages.${pkgs.system}.digital
|
||||
];
|
||||
};
|
||||
}
|
||||
40
home-manager/packages/external/flake.nix
vendored
Normal file
40
home-manager/packages/external/flake.nix
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
{
|
||||
description = "Nathan user External Flakes";
|
||||
|
||||
inputs = {
|
||||
|
||||
digital = {
|
||||
url = "https://github.com/hneemann/Digital/releases/latest/download/Digital.zip";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||
};
|
||||
|
||||
outputs = { self, ... }@inputs: let
|
||||
system = "x86_64-linux";
|
||||
_pkgs = import inputs.nixpkgs { inherit system; };
|
||||
in {
|
||||
|
||||
packages.${system}.digital = _pkgs.stdenv.mkDerivation {
|
||||
|
||||
name = "digital";
|
||||
|
||||
src = inputs.digital;
|
||||
|
||||
buildPhase = ''
|
||||
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
echo "${_pkgs.zulu}/bin/java -jar $src/Digital.jar" > $out/bin/$name
|
||||
chmod +x $out/bin/digital
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
hmModule = { config, lib, pkgs, ... }: import ./. { inherit config lib pkgs self; };
|
||||
|
||||
};
|
||||
}
|
||||
26
home-manager/packages/flake.nix
Normal file
26
home-manager/packages/flake.nix
Normal file
@@ -0,0 +1,26 @@
|
||||
{
|
||||
description = "Nathan user packages";
|
||||
|
||||
inputs = {
|
||||
nixpkgs-us.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
|
||||
scripts.url = "./scripts";
|
||||
|
||||
external.url = "./external";
|
||||
|
||||
};
|
||||
|
||||
outputs = { self, ... }@inputs: let
|
||||
system = "x86_64-linux";
|
||||
|
||||
pkgs-us = import inputs.nixpkgs-us {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
|
||||
in {
|
||||
|
||||
hmModule = { config, lib, pkgs, ... }: import ./. { inherit config lib pkgs pkgs-us self; };
|
||||
|
||||
};
|
||||
}
|
||||
96
home-manager/packages/scripts/default.nix
Normal file
96
home-manager/packages/scripts/default.nix
Normal file
@@ -0,0 +1,96 @@
|
||||
{ config, lib, pkgs, ... }: {
|
||||
|
||||
options = {
|
||||
homeScripts.enable = lib.options.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = true;
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.homeScripts.enable {
|
||||
home.packages = [
|
||||
|
||||
#scripts
|
||||
(pkgs.writeShellScriptBin "_systemRebuild" ''
|
||||
${pkgs.nh}/bin/nh os switch --ask /home/nathan/Projects/System
|
||||
echo //////Enter to close//////
|
||||
read
|
||||
'')
|
||||
(pkgs.writeShellScriptBin "_homeRebuild" ''
|
||||
${pkgs.nh}/bin/nh home switch --ask /home/nathan/Projects/System
|
||||
echo //////Enter to close//////
|
||||
read
|
||||
'')
|
||||
|
||||
(pkgs.writeShellScriptBin "randWallpaper" ''
|
||||
file=$(ls /home/nathan/Pictures/Wallpaper/ | shuf -n 1)
|
||||
setWallpaper /home/nathan/Pictures/Wallpaper/$file
|
||||
'')
|
||||
|
||||
(pkgs.writeShellScriptBin "setWallpaper" ''
|
||||
img=''$(realpath ''${1:-~/.cache/bg})
|
||||
p=''$(ps -e | grep mpvpaper | sed -n -e "s/ *//" -e "s/ /\n/" -e "1 P")
|
||||
${pkgs.mpvpaper}/bin/mpvpaper -f -o "loop" '*' $img && \
|
||||
changeColors $img $2 && \
|
||||
sleep 0.4 && \
|
||||
kill $p
|
||||
'')
|
||||
|
||||
(pkgs.writeShellScriptBin "changeColors" ''
|
||||
|
||||
if [[ $(ls ~/.cache/ | grep bga) != bga ]]; then
|
||||
echo 100 > ~/.cache/bga
|
||||
fi
|
||||
|
||||
alpha=''${2:-`cat ~/.cache/bga`}
|
||||
|
||||
img=''$(realpath ''${1:-~/.cache/bg})
|
||||
|
||||
if [[ $alpha -lt 0 ]]; then
|
||||
$alpha=0
|
||||
fi
|
||||
|
||||
if [[ $alpha -gt 100 ]]; then
|
||||
$alpha=100
|
||||
fi
|
||||
|
||||
wal -i $img -a $alpha --cols16 -n
|
||||
|
||||
echo $alpha > ~/.cache/bga
|
||||
|
||||
rm ~/.cache/bg
|
||||
ln -s $img ~/.cache/bg
|
||||
|
||||
sleep 0.4
|
||||
|
||||
pywalfox update &
|
||||
|
||||
themecord > ~/.cache/_.txt && rm ~/.cache/_.txt
|
||||
|
||||
[[ $(pidof cava) != "" ]] && pkill -USR1 cava &
|
||||
|
||||
for i in $(ls /run/user/1000 | grep nvim); do nvr -s --servername /run/user/1000/$i --remote-send '<cmd>colorscheme pywal<CR>'; done
|
||||
|
||||
pkill -USR1 kitty
|
||||
'')
|
||||
|
||||
(pkgs.writeShellScriptBin "onSystemStart" ''
|
||||
randWallpaper &
|
||||
ags &
|
||||
pypr &
|
||||
lxqt-policykit-agent &
|
||||
nmcli device wifi connect EagleNet password '~?C#@ZiH' &
|
||||
hyprctl setcursor Bibata-Modern-Classic 16 &
|
||||
wayvnc &
|
||||
hyprctl reload &
|
||||
'')
|
||||
|
||||
(pkgs.writeShellScriptBin "colorPrefix" ''
|
||||
exec -a "$0" "$@" &
|
||||
sleep 0.4 && changeColors &
|
||||
'')
|
||||
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
12
home-manager/packages/scripts/flake.nix
Normal file
12
home-manager/packages/scripts/flake.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
description = "Nathan user scripts";
|
||||
|
||||
inputs = {
|
||||
};
|
||||
|
||||
outputs = { self, ... }: {
|
||||
|
||||
hmModule = import ./.;
|
||||
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user