best practices: get rid of with pkgs;
This commit is contained in:
parent
ebcab67a6a
commit
120d485f28
6
base.nix
6
base.nix
@ -120,10 +120,12 @@
|
|||||||
};
|
};
|
||||||
documentation.enable = false;
|
documentation.enable = false;
|
||||||
environment = {
|
environment = {
|
||||||
systemPackages = with pkgs; [
|
systemPackages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
wget
|
wget
|
||||||
sops
|
sops
|
||||||
];
|
;
|
||||||
|
};
|
||||||
variables =
|
variables =
|
||||||
let
|
let
|
||||||
XDG_DATA_HOME = "\${HOME}/.local/share";
|
XDG_DATA_HOME = "\${HOME}/.local/share";
|
||||||
|
|||||||
@ -12,8 +12,10 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
style = "adwaita";
|
style = "adwaita";
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
adw-gtk3 # theme legacy applications
|
adw-gtk3 # theme legacy applications
|
||||||
papirus-icon-theme # icon theme
|
papirus-icon-theme # icon theme
|
||||||
];
|
;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,11 +10,13 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
style = "adwaita";
|
style = "adwaita";
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
# ffmpegthumbnailer # generate thumbnails
|
# ffmpegthumbnailer # generate thumbnails
|
||||||
adw-gtk3 # theme legacy applications
|
adw-gtk3 # theme legacy applications
|
||||||
papirus-icon-theme # icon theme
|
papirus-icon-theme # icon theme
|
||||||
# libgda # for pano shell extension
|
# libgda # for pano shell extension
|
||||||
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
||||||
];
|
;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
25
gnome.nix
25
gnome.nix
@ -16,7 +16,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
environment.gnome.excludePackages = with pkgs; [
|
environment.gnome.excludePackages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
# gnome-shell-extensions
|
# gnome-shell-extensions
|
||||||
# totem
|
# totem
|
||||||
baobab
|
baobab
|
||||||
@ -30,29 +31,37 @@
|
|||||||
gnome-text-editor
|
gnome-text-editor
|
||||||
gnome-tour
|
gnome-tour
|
||||||
yelp
|
yelp
|
||||||
];
|
;
|
||||||
|
};
|
||||||
qt = {
|
qt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
style = "adwaita";
|
style = "adwaita";
|
||||||
};
|
};
|
||||||
users.users.jawz.packages =
|
users.users.jawz.packages =
|
||||||
(with pkgs; [
|
let
|
||||||
# ffmpegthumbnailer # generate thumbnails
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
adw-gtk3 # theme legacy applications
|
adw-gtk3 # theme legacy applications
|
||||||
gnome-tweaks # tweaks for the gnome desktop environment
|
gnome-tweaks # tweaks for the gnome desktop environment
|
||||||
papirus-icon-theme # icon theme
|
papirus-icon-theme # icon theme
|
||||||
libgda # for pano shell extension
|
libgda # for pano shell extension
|
||||||
|
# ffmpegthumbnailer # generate thumbnails
|
||||||
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
||||||
])
|
;
|
||||||
++ (with pkgs.gnomeExtensions; [
|
};
|
||||||
|
extensions = builtins.attrValues {
|
||||||
|
inherit (pkgs.gnomeExtensions)
|
||||||
appindicator # applets for open applications
|
appindicator # applets for open applications
|
||||||
reading-strip # like putting a finger on every line I read
|
reading-strip # like putting a finger on every line I read
|
||||||
tactile # window manager
|
tactile # window manager
|
||||||
pano # clipboard manager
|
pano # clipboard manager
|
||||||
freon # hardware temperature monitor
|
freon # hardware temperature monitor
|
||||||
gamemode-indicator-in-system-settings # I guess I'm a gamer now?
|
gamemode-indicator-in-system-settings # I guess I'm a gamer now?
|
||||||
# blur-my-shell # make the overview more visually appealing
|
|
||||||
burn-my-windows
|
burn-my-windows
|
||||||
|
# blur-my-shell # make the overview more visually appealing
|
||||||
# forge # window manager
|
# forge # window manager
|
||||||
]);
|
;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
packages ++ extensions;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@
|
|||||||
graphics = {
|
graphics = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enable32Bit = true;
|
enable32Bit = true;
|
||||||
extraPackages = with pkgs; [ vpl-gpu-rt ];
|
extraPackages = [ pkgs.vpl-gpu-rt ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
boot = {
|
boot = {
|
||||||
|
|||||||
@ -90,7 +90,7 @@
|
|||||||
users = {
|
users = {
|
||||||
groups.nixremote.gid = 555;
|
groups.nixremote.gid = 555;
|
||||||
users = {
|
users = {
|
||||||
jawz.packages = with pkgs; [ stash ];
|
jawz.packages = [ pkgs.stash ];
|
||||||
nixremote = {
|
nixremote = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
|
|||||||
@ -80,12 +80,14 @@
|
|||||||
users = {
|
users = {
|
||||||
groups.nixremote.gid = 555;
|
groups.nixremote.gid = 555;
|
||||||
users = {
|
users = {
|
||||||
jawz.packages = with pkgs; [
|
jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
distrobox # install packages from other os
|
distrobox # install packages from other os
|
||||||
gocryptfs # encrypted filesystem! shhh!!!
|
gocryptfs # encrypted filesystem! shhh!!!
|
||||||
torrenttools # create torrent files from the terminal!
|
torrenttools # create torrent files from the terminal!
|
||||||
vcsi # video thumbnails for torrents, can I replace it with ^?
|
vcsi # video thumbnails for torrents, can I replace it with ^?
|
||||||
];
|
;
|
||||||
|
};
|
||||||
nixremote = {
|
nixremote = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
@ -116,14 +118,16 @@
|
|||||||
obs-studio = {
|
obs-studio = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableVirtualCamera = true;
|
enableVirtualCamera = true;
|
||||||
plugins = with pkgs.obs-studio-plugins; [
|
plugins = builtins.attrValues {
|
||||||
|
inherit (pkgs.obs-studio-plugins)
|
||||||
obs-vkcapture
|
obs-vkcapture
|
||||||
obs-vaapi
|
obs-vaapi
|
||||||
obs-tuna
|
obs-tuna
|
||||||
looking-glass-obs
|
looking-glass-obs
|
||||||
input-overlay
|
input-overlay
|
||||||
droidcam-obs
|
droidcam-obs
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
|
|||||||
@ -11,7 +11,15 @@
|
|||||||
};
|
};
|
||||||
config = lib.mkIf config.my.apps.art.enable {
|
config = lib.mkIf config.my.apps.art.enable {
|
||||||
users.users.jawz.packages =
|
users.users.jawz.packages =
|
||||||
(with pkgs; [
|
let
|
||||||
|
gdPackages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
|
godot_4 # game development
|
||||||
|
gdtoolkit_4 # gdscript language server
|
||||||
|
;
|
||||||
|
};
|
||||||
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
gimp # the coolest bestest art program to never exist
|
gimp # the coolest bestest art program to never exist
|
||||||
krita # art to your heart desire!
|
krita # art to your heart desire!
|
||||||
# mypaint # not the best art program
|
# mypaint # not the best art program
|
||||||
@ -20,16 +28,9 @@
|
|||||||
blender # cgi animation and sculpting
|
blender # cgi animation and sculpting
|
||||||
drawpile # arty party with friends!!
|
drawpile # arty party with friends!!
|
||||||
pureref # create inspiration/reference boards
|
pureref # create inspiration/reference boards
|
||||||
])
|
;
|
||||||
++ (
|
};
|
||||||
if config.my.dev.gameDev.enable then
|
in
|
||||||
with pkgs;
|
packages ++ (if config.my.dev.gameDev.enable then gdPackages else [ ]);
|
||||||
[
|
|
||||||
godot_4 # game development
|
|
||||||
gdtoolkit_4 # gdscript language server
|
|
||||||
]
|
|
||||||
else
|
|
||||||
[ ]
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,11 +7,15 @@
|
|||||||
{
|
{
|
||||||
options.my.apps.dictionaries.enable = lib.mkEnableOption "enable";
|
options.my.apps.dictionaries.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.apps.dictionaries.enable {
|
config = lib.mkIf config.my.apps.dictionaries.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
hunspell
|
hunspell
|
||||||
hunspellDicts.it_IT
|
;
|
||||||
hunspellDicts.es_MX
|
inherit (pkgs.hunspellDicts)
|
||||||
hunspellDicts.en_CA-large
|
it_IT
|
||||||
];
|
es_MX
|
||||||
|
en_CA-large
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,11 +7,13 @@
|
|||||||
{
|
{
|
||||||
options.my.apps.fonts.enable = lib.mkEnableOption "enable";
|
options.my.apps.fonts.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.apps.fonts.enable {
|
config = lib.mkIf config.my.apps.fonts.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
nerdfonts
|
nerdfonts
|
||||||
symbola
|
symbola
|
||||||
comic-neue
|
comic-neue
|
||||||
cascadia-code
|
cascadia-code
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,7 +19,10 @@
|
|||||||
platformOptimizations.enable = true;
|
platformOptimizations.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages =
|
||||||
|
let
|
||||||
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
shipwright # zelda OoT port
|
shipwright # zelda OoT port
|
||||||
mangohud # fps & stats overlay
|
mangohud # fps & stats overlay
|
||||||
lutris # games launcher & emulator hub
|
lutris # games launcher & emulator hub
|
||||||
@ -28,7 +31,6 @@
|
|||||||
heroic # install epic games
|
heroic # install epic games
|
||||||
protonup-qt # update proton-ge
|
protonup-qt # update proton-ge
|
||||||
ns-usbloader # load games into my switch
|
ns-usbloader # load games into my switch
|
||||||
(callPackage ../../pkgs/polymc/default.nix { }) # minecraft launcher
|
|
||||||
# minecraft # minecraft official launcher
|
# minecraft # minecraft official launcher
|
||||||
|
|
||||||
# emulators
|
# emulators
|
||||||
@ -38,7 +40,15 @@
|
|||||||
dolphin-emu # wii
|
dolphin-emu # wii
|
||||||
snes9x-gtk # snes
|
snes9x-gtk # snes
|
||||||
ryujinx # switch
|
ryujinx # switch
|
||||||
(callPackage ../../pkgs/citra/default.nix { branch = "nightly"; }) # 3ds
|
;
|
||||||
|
};
|
||||||
|
customPackages = [
|
||||||
|
# minecraft launcher
|
||||||
|
(pkgs.callPackage ../../pkgs/polymc/default.nix { })
|
||||||
|
# 3Ds emulator
|
||||||
|
(pkgs.callPackage ../../pkgs/citra/default.nix { branch = "nightly"; })
|
||||||
];
|
];
|
||||||
|
in
|
||||||
|
packages ++ customPackages;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,8 +23,8 @@
|
|||||||
users.users.jawz.packages =
|
users.users.jawz.packages =
|
||||||
let
|
let
|
||||||
vdhcoapp = pkgs.callPackage ../../pkgs/vdhcoapp/default.nix { };
|
vdhcoapp = pkgs.callPackage ../../pkgs/vdhcoapp/default.nix { };
|
||||||
in
|
packages = builtins.attrValues {
|
||||||
(with pkgs; [
|
inherit (pkgs)
|
||||||
warp # transfer files with based ppl
|
warp # transfer files with based ppl
|
||||||
brave # crypto-browser that at least somewhat integrates with gtk
|
brave # crypto-browser that at least somewhat integrates with gtk
|
||||||
nextcloud-client # self-hosted google-drive alternative
|
nextcloud-client # self-hosted google-drive alternative
|
||||||
@ -38,7 +38,10 @@
|
|||||||
discord # :3
|
discord # :3
|
||||||
teamspeak5_client # ppl say they will use this...?
|
teamspeak5_client # ppl say they will use this...?
|
||||||
# hugo # website engine
|
# hugo # website engine
|
||||||
])
|
;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
packages
|
||||||
++ [
|
++ [
|
||||||
vdhcoapp # video download helper assistant
|
vdhcoapp # video download helper assistant
|
||||||
inputs.zen-browser.packages.x86_64-linux.default
|
inputs.zen-browser.packages.x86_64-linux.default
|
||||||
|
|||||||
@ -7,7 +7,8 @@
|
|||||||
{
|
{
|
||||||
options.my.apps.misc.enable = lib.mkEnableOption "enable";
|
options.my.apps.misc.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.apps.misc.enable {
|
config = lib.mkIf config.my.apps.misc.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
# celeste # sync tool for any cloud provider
|
# celeste # sync tool for any cloud provider
|
||||||
# czkawka # duplicate finder
|
# czkawka # duplicate finder
|
||||||
# sequeler # friendly SQL client
|
# sequeler # friendly SQL client
|
||||||
@ -16,6 +17,7 @@
|
|||||||
metadata-cleaner # remove any metadata and geolocation from files
|
metadata-cleaner # remove any metadata and geolocation from files
|
||||||
pika-backup # backups
|
pika-backup # backups
|
||||||
gnome-obfuscate # censor private information
|
gnome-obfuscate # censor private information
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,7 +7,8 @@
|
|||||||
{
|
{
|
||||||
options.my.apps.multimedia.enable = lib.mkEnableOption "enable";
|
options.my.apps.multimedia.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.apps.multimedia.enable {
|
config = lib.mkIf config.my.apps.multimedia.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
pitivi # video editor
|
pitivi # video editor
|
||||||
celluloid # video player
|
celluloid # video player
|
||||||
curtail # image compressor
|
curtail # image compressor
|
||||||
@ -20,6 +21,7 @@
|
|||||||
# cozy # audiobooks player
|
# cozy # audiobooks player
|
||||||
# gnome-podcasts # podcast player
|
# gnome-podcasts # podcast player
|
||||||
# hakuneko # manga & comic GUI downloader
|
# hakuneko # manga & comic GUI downloader
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,7 +8,8 @@
|
|||||||
options.my.apps.office.enable = lib.mkEnableOption "enable";
|
options.my.apps.office.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.apps.office.enable {
|
config = lib.mkIf config.my.apps.office.enable {
|
||||||
environment.variables.CALIBRE_USE_SYSTEM_THEME = "1";
|
environment.variables.CALIBRE_USE_SYSTEM_THEME = "1";
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
libreoffice # office, but based
|
libreoffice # office, but based
|
||||||
calibre # ugly af eBook library manager
|
calibre # ugly af eBook library manager
|
||||||
newsflash # feed reader, syncs with nextcloud
|
newsflash # feed reader, syncs with nextcloud
|
||||||
@ -17,6 +18,7 @@
|
|||||||
# foliate # gtk eBook reader
|
# foliate # gtk eBook reader
|
||||||
# wike # gtk wikipedia wow!
|
# wike # gtk wikipedia wow!
|
||||||
# denaro # manage your finances
|
# denaro # manage your finances
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,9 +8,9 @@
|
|||||||
options.my.dev.docker.enable = lib.mkEnableOption "enable";
|
options.my.dev.docker.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.dev.docker.enable {
|
config = lib.mkIf config.my.dev.docker.enable {
|
||||||
environment.variables.DOCKER_CONFIG = "\${XDG_CONFIG_HOME}/docker";
|
environment.variables.DOCKER_CONFIG = "\${XDG_CONFIG_HOME}/docker";
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
dockfmt
|
inherit (pkgs) dockfmt;
|
||||||
nodePackages.dockerfile-language-server-nodejs
|
inherit (pkgs.nodePackages) dockerfile-language-server-nodejs;
|
||||||
];
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,7 +25,17 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.users.jawz.packages =
|
users.users.jawz.packages =
|
||||||
(with pkgs; [
|
let
|
||||||
|
packagesDoomEverywhere = builtins.attrValues {
|
||||||
|
inherit (pkgs.xorg) xwininfo;
|
||||||
|
inherit (pkgs)
|
||||||
|
xdotool
|
||||||
|
xclip
|
||||||
|
wl-clipboard-rs
|
||||||
|
;
|
||||||
|
};
|
||||||
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
fd # modern find, faster searches
|
fd # modern find, faster searches
|
||||||
fzf # fuzzy finder! super cool and useful
|
fzf # fuzzy finder! super cool and useful
|
||||||
ripgrep # modern grep
|
ripgrep # modern grep
|
||||||
@ -34,25 +44,26 @@
|
|||||||
tetex # export pdf
|
tetex # export pdf
|
||||||
languagetool # proofreader for English
|
languagetool # proofreader for English
|
||||||
|
|
||||||
# doom everywhere
|
|
||||||
xorg.xwininfo
|
|
||||||
xdotool
|
|
||||||
xclip
|
|
||||||
|
|
||||||
# lsps
|
# lsps
|
||||||
yaml-language-server
|
yaml-language-server
|
||||||
markdownlint-cli
|
markdownlint-cli
|
||||||
])
|
;
|
||||||
++ (with pkgs.nodePackages; [
|
};
|
||||||
|
packagesNode = builtins.attrValues {
|
||||||
|
inherit (pkgs.nodePackages)
|
||||||
vscode-json-languageserver
|
vscode-json-languageserver
|
||||||
# linters
|
prettier # multi-language linter
|
||||||
prettier
|
;
|
||||||
]);
|
};
|
||||||
|
in
|
||||||
|
packages ++ packagesDoomEverywhere ++ packagesNode;
|
||||||
services.emacs = {
|
services.emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package =
|
package =
|
||||||
with pkgs;
|
let
|
||||||
((emacsPackagesFor emacs-gtk).emacsWithPackages (epkgs: with epkgs; [ vterm ]));
|
emacsPackages = (pkgs.emacsPackagesFor pkgs.emacs-gtk).emacsWithPackages;
|
||||||
|
in
|
||||||
|
emacsPackages (epkgs: [ epkgs.vterm ]);
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
};
|
};
|
||||||
environment.variables.PATH = [ "\${XDG_CONFIG_HOME}/emacs/bin" ];
|
environment.variables.PATH = [ "\${XDG_CONFIG_HOME}/emacs/bin" ];
|
||||||
|
|||||||
@ -7,10 +7,12 @@
|
|||||||
{
|
{
|
||||||
options.my.dev.haskell.enable = lib.mkEnableOption "enable";
|
options.my.dev.haskell.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.dev.haskell.enable {
|
config = lib.mkIf config.my.dev.haskell.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
ghc # compiler
|
ghc # compiler
|
||||||
haskell-language-server # lsp
|
haskell-language-server # lsp
|
||||||
];
|
;
|
||||||
|
};
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
CABAL_DIR = "\${XDG_CACHE_HOME}/cabal";
|
CABAL_DIR = "\${XDG_CACHE_HOME}/cabal";
|
||||||
STACK_ROOT = "\${XDG_DATA_HOME}/stack";
|
STACK_ROOT = "\${XDG_DATA_HOME}/stack";
|
||||||
|
|||||||
@ -11,10 +11,10 @@
|
|||||||
"npm/npmrc".source = ../../dotfiles/npm/npmrc;
|
"npm/npmrc".source = ../../dotfiles/npm/npmrc;
|
||||||
"configstore/update-notifier-npm-check.json".source = ../../dotfiles/npm/update-notifier-npm-check.json;
|
"configstore/update-notifier-npm-check.json".source = ../../dotfiles/npm/update-notifier-npm-check.json;
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
nodejs
|
inherit (pkgs) nodejs;
|
||||||
nodePackages.pnpm
|
inherit (pkgs.nodePackages) pnpm;
|
||||||
];
|
};
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
NPM_CONFIG_USERCONFIG = "\${XDG_CONFIG_HOME}/npm/npmrc";
|
NPM_CONFIG_USERCONFIG = "\${XDG_CONFIG_HOME}/npm/npmrc";
|
||||||
PNPM_HOME = "\${XDG_DATA_HOME}/pnpm";
|
PNPM_HOME = "\${XDG_DATA_HOME}/pnpm";
|
||||||
|
|||||||
@ -7,11 +7,13 @@
|
|||||||
{
|
{
|
||||||
options.my.dev.nix.enable = lib.mkEnableOption "enable";
|
options.my.dev.nix.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.dev.nix.enable {
|
config = lib.mkIf config.my.dev.nix.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
nixfmt-rfc-style # formating
|
nixfmt-rfc-style # formating
|
||||||
cachix # why spend time compiling?
|
cachix # why spend time compiling?
|
||||||
nixd # language server
|
nixd # language server
|
||||||
statix # linter
|
statix # linter
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,11 +9,16 @@
|
|||||||
config = lib.mkIf config.my.dev.python.enable {
|
config = lib.mkIf config.my.dev.python.enable {
|
||||||
home-manager.users.jawz.xdg.configFile."python/pythonrc".source = ../../dotfiles/pythonrc;
|
home-manager.users.jawz.xdg.configFile."python/pythonrc".source = ../../dotfiles/pythonrc;
|
||||||
environment.variables.PYTHONSTARTUP = "\${XDG_CONFIG_HOME}/python/pythonrc";
|
environment.variables.PYTHONSTARTUP = "\${XDG_CONFIG_HOME}/python/pythonrc";
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages =
|
||||||
|
let
|
||||||
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
pipenv # python development workflow for humans
|
pipenv # python development workflow for humans
|
||||||
pyright # LSP
|
pyright # LSP
|
||||||
(python3.withPackages (
|
;
|
||||||
ps: with ps; [
|
};
|
||||||
|
pythonPackages = builtins.attrValues {
|
||||||
|
inherit (pkgs.python3Packages)
|
||||||
black # Python code formatter
|
black # Python code formatter
|
||||||
editorconfig # follow rules of contributin
|
editorconfig # follow rules of contributin
|
||||||
flake8 # wraper for pyflakes, pycodestyle and mccabe
|
flake8 # wraper for pyflakes, pycodestyle and mccabe
|
||||||
@ -24,8 +29,12 @@
|
|||||||
# nose # testing and running python scripts
|
# nose # testing and running python scripts
|
||||||
# poetry # dependency management made easy
|
# poetry # dependency management made easy
|
||||||
# pytest # framework for writing tests
|
# pytest # framework for writing tests
|
||||||
]
|
;
|
||||||
))
|
};
|
||||||
|
in
|
||||||
|
packages
|
||||||
|
++ [
|
||||||
|
(pkgs.python3.withPackages (ps: pythonPackages))
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,11 +7,14 @@
|
|||||||
{
|
{
|
||||||
options.my.dev.sh.enable = lib.mkEnableOption "enable";
|
options.my.dev.sh.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.dev.sh.enable {
|
config = lib.mkIf config.my.dev.sh.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
bashdb # autocomplete
|
bashdb # autocomplete
|
||||||
shellcheck # linting
|
shellcheck # linting
|
||||||
shfmt # a shell parser and formatter
|
shfmt # a shell parser and formatter
|
||||||
nodePackages.bash-language-server # LSP
|
;
|
||||||
];
|
#LSP
|
||||||
|
inherit (pkgs.nodePackages) bash-language-server;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -39,25 +39,31 @@ in
|
|||||||
users.users.nextcloud = {
|
users.users.nextcloud = {
|
||||||
isSystemUser = true;
|
isSystemUser = true;
|
||||||
extraGroups = [ "render" ];
|
extraGroups = [ "render" ];
|
||||||
packages = with pkgs; [
|
packages =
|
||||||
mediainfo
|
let
|
||||||
nodejs
|
packages = builtins.attrValues {
|
||||||
perl
|
inherit (pkgs) mediainfo nodejs perl;
|
||||||
(python311.withPackages (ps: with ps; [ tensorflow ]))
|
};
|
||||||
(perlPackages.buildPerlPackage (
|
|
||||||
|
pythonPackages = [
|
||||||
|
(pkgs.python311.withPackages (ps: [ ps.tensorflow ]))
|
||||||
|
];
|
||||||
|
|
||||||
|
perlPackages = pkgs.perlPackages.buildPerlPackage (
|
||||||
let
|
let
|
||||||
version = "12.70";
|
version = "12.70";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
pname = "Image-ExifTool";
|
pname = "Image-ExifTool";
|
||||||
inherit version;
|
inherit version;
|
||||||
src = fetchurl {
|
src = pkgs.fetchurl {
|
||||||
url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
|
url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
|
||||||
hash = "sha256-TLJSJEXMPj870TkExq6uraX8Wl4kmNerrSlX3LQsr/4=";
|
hash = "sha256-TLJSJEXMPj870TkExq6uraX8Wl4kmNerrSlX3LQsr/4=";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
))
|
);
|
||||||
];
|
in
|
||||||
|
packages ++ pythonPackages ++ [ perlPackages ];
|
||||||
};
|
};
|
||||||
programs.msmtp = {
|
programs.msmtp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@ -16,7 +16,7 @@ let
|
|||||||
hash = "sha256-ISiMNTrA4J8NYUQSmdVFaro1RxkSqvXhz6LpoSn/fLQ=";
|
hash = "sha256-ISiMNTrA4J8NYUQSmdVFaro1RxkSqvXhz6LpoSn/fLQ=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
build-system = with pkgs.python3Packages; [ setuptools ];
|
build-system = [ pkgs.python3Packages.setuptools ];
|
||||||
};
|
};
|
||||||
qbit_manage_env = pkgs.python3.withPackages (
|
qbit_manage_env = pkgs.python3.withPackages (
|
||||||
ps:
|
ps:
|
||||||
|
|||||||
@ -13,13 +13,15 @@
|
|||||||
graphics = {
|
graphics = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enable32Bit = true;
|
enable32Bit = true;
|
||||||
extraPackages = with pkgs; [
|
extraPackages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
nvidia-vaapi-driver
|
nvidia-vaapi-driver
|
||||||
vaapiVdpau
|
vaapiVdpau
|
||||||
libvdpau-va-gl
|
libvdpau-va-gl
|
||||||
vulkan-loader
|
vulkan-loader
|
||||||
mesa
|
mesa
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
nvidia = {
|
nvidia = {
|
||||||
open = (config.networking.hostName == "workstation");
|
open = (config.networking.hostName == "workstation");
|
||||||
|
|||||||
@ -7,9 +7,11 @@
|
|||||||
{
|
{
|
||||||
options.my.shell.exercism.enable = lib.mkEnableOption "enable";
|
options.my.shell.exercism.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.shell.exercism.enable {
|
config = lib.mkIf config.my.shell.exercism.enable {
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
exercism # learn to code
|
exercism # learn to code
|
||||||
bats # testing system, required by Exercism
|
bats # testing system, required by Exercism
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,14 +8,16 @@
|
|||||||
options.my.shell.multimedia.enable = lib.mkEnableOption "enable";
|
options.my.shell.multimedia.enable = lib.mkEnableOption "enable";
|
||||||
config = lib.mkIf config.my.shell.multimedia.enable {
|
config = lib.mkIf config.my.shell.multimedia.enable {
|
||||||
users.users.jawz.packages =
|
users.users.jawz.packages =
|
||||||
(with pkgs; [
|
let
|
||||||
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
gallery-dl # similar to yt-dlp but for most image gallery websites
|
gallery-dl # similar to yt-dlp but for most image gallery websites
|
||||||
yt-dlp # downloads videos from most video websites
|
yt-dlp # downloads videos from most video websites
|
||||||
ffmpeg # not ffmpreg, the coolest video conversion tool!
|
ffmpeg # not ffmpreg, the coolest video conversion tool!
|
||||||
imagemagick # photoshop what??
|
imagemagick # photoshop what??
|
||||||
])
|
;
|
||||||
++ [
|
};
|
||||||
(pkgs.python3Packages.buildPythonApplication (
|
ffpb = pkgs.python3Packages.buildPythonApplication (
|
||||||
let
|
let
|
||||||
pname = "ffpb";
|
pname = "ffpb";
|
||||||
version = "0.4.1";
|
version = "0.4.1";
|
||||||
@ -29,7 +31,11 @@
|
|||||||
buildInputs = [ pkgs.python3Packages.setuptools ];
|
buildInputs = [ pkgs.python3Packages.setuptools ];
|
||||||
propagatedBuildInputs = [ pkgs.python3Packages.tqdm ];
|
propagatedBuildInputs = [ pkgs.python3Packages.tqdm ];
|
||||||
}
|
}
|
||||||
))
|
);
|
||||||
|
in
|
||||||
|
packages
|
||||||
|
++ [
|
||||||
|
ffpb
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -45,14 +45,16 @@
|
|||||||
pager = "less -FR";
|
pager = "less -FR";
|
||||||
theme = "base16";
|
theme = "base16";
|
||||||
};
|
};
|
||||||
extraPackages = with pkgs.bat-extras; [
|
extraPackages = builtins.attrValues {
|
||||||
|
inherit (pkgs.bat-extras)
|
||||||
batman # man pages
|
batman # man pages
|
||||||
batpipe # piping
|
batpipe # piping
|
||||||
batgrep # ripgrep
|
batgrep # ripgrep
|
||||||
batdiff # this is getting crazy!
|
batdiff # this is getting crazy!
|
||||||
batwatch # probably my next best friend
|
batwatch # probably my next best friend
|
||||||
prettybat # trans your sourcecode!
|
prettybat # trans your sourcecode!
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -65,7 +67,8 @@
|
|||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
ripgrep # modern grep
|
ripgrep # modern grep
|
||||||
du-dust # rusty du similar to gdu
|
du-dust # rusty du similar to gdu
|
||||||
eza # like ls but with colors
|
eza # like ls but with colors
|
||||||
@ -77,7 +80,8 @@
|
|||||||
trash-cli # oop! did not meant to delete that
|
trash-cli # oop! did not meant to delete that
|
||||||
jq # linting
|
jq # linting
|
||||||
smartmontools # check hard drie health
|
smartmontools # check hard drie health
|
||||||
];
|
;
|
||||||
|
};
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
TEST = "AHHH";
|
TEST = "AHHH";
|
||||||
HISTFILE = "\${XDG_STATE_HOME}/bash/history";
|
HISTFILE = "\${XDG_STATE_HOME}/bash/history";
|
||||||
|
|||||||
21
overlay.nix
21
overlay.nix
@ -5,24 +5,31 @@ _self: super: {
|
|||||||
nautilus = gPrev.nautilus.overrideAttrs (nsuper: {
|
nautilus = gPrev.nautilus.overrideAttrs (nsuper: {
|
||||||
buildInputs =
|
buildInputs =
|
||||||
nsuper.buildInputs
|
nsuper.buildInputs
|
||||||
++ (with pkgs.gst_all_1; [
|
++ builtins.attrValues {
|
||||||
|
inherit (pkgs.gst_all_1)
|
||||||
gst-libav
|
gst-libav
|
||||||
gst-plugins-good
|
gst-plugins-good
|
||||||
gst-plugins-bad
|
gst-plugins-bad
|
||||||
gst-plugins-ugly
|
gst-plugins-ugly
|
||||||
gst-plugins-base
|
gst-plugins-base
|
||||||
]);
|
;
|
||||||
|
};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
lutris = super.lutris.override {
|
lutris = super.lutris.override {
|
||||||
extraPkgs =
|
extraPkgs =
|
||||||
pkgs: with pkgs; [
|
pkgs:
|
||||||
pango
|
let
|
||||||
winetricks
|
corePackages = builtins.attrValues {
|
||||||
wine64Packages.stable
|
inherit (pkgs) pango winetricks;
|
||||||
wineWowPackages.stable
|
};
|
||||||
|
winePackages = [
|
||||||
|
pkgs.wine64Packages.stable
|
||||||
|
pkgs.wineWowPackages.stable
|
||||||
];
|
];
|
||||||
|
in
|
||||||
|
corePackages ++ winePackages;
|
||||||
};
|
};
|
||||||
nerdfonts = super.nerdfonts.override {
|
nerdfonts = super.nerdfonts.override {
|
||||||
fonts = [
|
fonts = [
|
||||||
|
|||||||
@ -9,11 +9,13 @@ python3Packages.buildPythonApplication {
|
|||||||
version = "2.5";
|
version = "2.5";
|
||||||
src = ../../scripts/download/.;
|
src = ../../scripts/download/.;
|
||||||
build-system = [ python3Packages.setuptools ];
|
build-system = [ python3Packages.setuptools ];
|
||||||
dependencies = with python3Packages; [
|
dependencies = builtins.attrValues {
|
||||||
|
inherit (python3Packages)
|
||||||
pyyaml
|
pyyaml
|
||||||
types-pyyaml
|
types-pyyaml
|
||||||
yt-dlp
|
yt-dlp
|
||||||
];
|
;
|
||||||
|
};
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
gallery-dl
|
gallery-dl
|
||||||
ffmpeg
|
ffmpeg
|
||||||
|
|||||||
@ -168,7 +168,7 @@ let
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://polymc.org/";
|
homepage = "https://polymc.org/";
|
||||||
downloadPage = "https://polymc.org/download/";
|
downloadPage = "https://polymc.org/download/";
|
||||||
changelog = "https://github.com/PolyMC/PolyMC/releases";
|
changelog = "https://github.com/PolyMC/PolyMC/releases";
|
||||||
@ -179,7 +179,7 @@ let
|
|||||||
their associated options with a simple interface.
|
their associated options with a simple interface.
|
||||||
'';
|
'';
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
license = licenses.gpl3Only;
|
license = lib.licenses.gpl3Only;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|||||||
@ -66,11 +66,11 @@ buildNpmPackage (
|
|||||||
--add-flags $out/opt/vdhcoapp/src/main.js
|
--add-flags $out/opt/vdhcoapp/src/main.js
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "Companion application for the Video DownloadHelper browser add-on";
|
description = "Companion application for the Video DownloadHelper browser add-on";
|
||||||
homepage = "https://www.downloadhelper.net/";
|
homepage = "https://www.downloadhelper.net/";
|
||||||
license = licenses.gpl2;
|
license = lib.licenses.gpl2;
|
||||||
maintainers = with maintainers; [ wolfangaukang ];
|
maintainers = [ lib.maintainers.wolfangaukang ];
|
||||||
mainProgram = "vdhcoapp";
|
mainProgram = "vdhcoapp";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -33,12 +33,12 @@ rustPlatform.buildRustPackage (
|
|||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "File picker used by VDHCoApp";
|
description = "File picker used by VDHCoApp";
|
||||||
homepage = "https://github.com/paulrouget/static-filepicker";
|
homepage = "https://github.com/paulrouget/static-filepicker";
|
||||||
license = licenses.gpl2;
|
license = lib.licenses.gpl2;
|
||||||
mainProgram = "filepicker";
|
mainProgram = "filepicker";
|
||||||
maintainers = with maintainers; [ hannesgith ];
|
maintainers = [ lib.maintainers.hannesgith ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user