best practices: get rid of with pkgs;
This commit is contained in:
parent
ebcab67a6a
commit
120d485f28
10
base.nix
10
base.nix
@ -120,10 +120,12 @@
|
|||||||
};
|
};
|
||||||
documentation.enable = false;
|
documentation.enable = false;
|
||||||
environment = {
|
environment = {
|
||||||
systemPackages = with pkgs; [
|
systemPackages = builtins.attrValues {
|
||||||
wget
|
inherit (pkgs)
|
||||||
sops
|
wget
|
||||||
];
|
sops
|
||||||
|
;
|
||||||
|
};
|
||||||
variables =
|
variables =
|
||||||
let
|
let
|
||||||
XDG_DATA_HOME = "\${HOME}/.local/share";
|
XDG_DATA_HOME = "\${HOME}/.local/share";
|
||||||
|
|||||||
10
cinnamon.nix
10
cinnamon.nix
@ -12,8 +12,10 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
style = "adwaita";
|
style = "adwaita";
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
adw-gtk3 # theme legacy applications
|
inherit (pkgs)
|
||||||
papirus-icon-theme # icon theme
|
adw-gtk3 # theme legacy applications
|
||||||
];
|
papirus-icon-theme # icon theme
|
||||||
|
;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
16
cosmic.nix
16
cosmic.nix
@ -10,11 +10,13 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
style = "adwaita";
|
style = "adwaita";
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
# ffmpegthumbnailer # generate thumbnails
|
inherit (pkgs)
|
||||||
adw-gtk3 # theme legacy applications
|
# ffmpegthumbnailer # generate thumbnails
|
||||||
papirus-icon-theme # icon theme
|
adw-gtk3 # theme legacy applications
|
||||||
# libgda # for pano shell extension
|
papirus-icon-theme # icon theme
|
||||||
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
# libgda # for pano shell extension
|
||||||
];
|
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
||||||
|
;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
77
gnome.nix
77
gnome.nix
@ -16,43 +16,52 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
environment.gnome.excludePackages = with pkgs; [
|
environment.gnome.excludePackages = builtins.attrValues {
|
||||||
# gnome-shell-extensions
|
inherit (pkgs)
|
||||||
# totem
|
# gnome-shell-extensions
|
||||||
baobab
|
# totem
|
||||||
cheese
|
baobab
|
||||||
epiphany
|
cheese
|
||||||
gnome-characters
|
epiphany
|
||||||
gnome-connections
|
gnome-characters
|
||||||
gnome-font-viewer
|
gnome-connections
|
||||||
gnome-music
|
gnome-font-viewer
|
||||||
gnome-photos
|
gnome-music
|
||||||
gnome-text-editor
|
gnome-photos
|
||||||
gnome-tour
|
gnome-text-editor
|
||||||
yelp
|
gnome-tour
|
||||||
];
|
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 {
|
||||||
adw-gtk3 # theme legacy applications
|
inherit (pkgs)
|
||||||
gnome-tweaks # tweaks for the gnome desktop environment
|
adw-gtk3 # theme legacy applications
|
||||||
papirus-icon-theme # icon theme
|
gnome-tweaks # tweaks for the gnome desktop environment
|
||||||
libgda # for pano shell extension
|
papirus-icon-theme # icon theme
|
||||||
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
libgda # for pano shell extension
|
||||||
])
|
# ffmpegthumbnailer # generate thumbnails
|
||||||
++ (with pkgs.gnomeExtensions; [
|
# gradience # theme customizer, allows you to modify adw-gtk3 themes
|
||||||
appindicator # applets for open applications
|
;
|
||||||
reading-strip # like putting a finger on every line I read
|
};
|
||||||
tactile # window manager
|
extensions = builtins.attrValues {
|
||||||
pano # clipboard manager
|
inherit (pkgs.gnomeExtensions)
|
||||||
freon # hardware temperature monitor
|
appindicator # applets for open applications
|
||||||
gamemode-indicator-in-system-settings # I guess I'm a gamer now?
|
reading-strip # like putting a finger on every line I read
|
||||||
# blur-my-shell # make the overview more visually appealing
|
tactile # window manager
|
||||||
burn-my-windows
|
pano # clipboard manager
|
||||||
# forge # window manager
|
freon # hardware temperature monitor
|
||||||
]);
|
gamemode-indicator-in-system-settings # I guess I'm a gamer now?
|
||||||
|
burn-my-windows
|
||||||
|
# blur-my-shell # make the overview more visually appealing
|
||||||
|
# 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 {
|
||||||
distrobox # install packages from other os
|
inherit (pkgs)
|
||||||
gocryptfs # encrypted filesystem! shhh!!!
|
distrobox # install packages from other os
|
||||||
torrenttools # create torrent files from the terminal!
|
gocryptfs # encrypted filesystem! shhh!!!
|
||||||
vcsi # video thumbnails for torrents, can I replace it with ^?
|
torrenttools # create torrent files from the terminal!
|
||||||
];
|
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 {
|
||||||
obs-vkcapture
|
inherit (pkgs.obs-studio-plugins)
|
||||||
obs-vaapi
|
obs-vkcapture
|
||||||
obs-tuna
|
obs-vaapi
|
||||||
looking-glass-obs
|
obs-tuna
|
||||||
input-overlay
|
looking-glass-obs
|
||||||
droidcam-obs
|
input-overlay
|
||||||
];
|
droidcam-obs
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
|
|||||||
@ -11,25 +11,26 @@
|
|||||||
};
|
};
|
||||||
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
|
||||||
gimp # the coolest bestest art program to never exist
|
gdPackages = builtins.attrValues {
|
||||||
krita # art to your heart desire!
|
inherit (pkgs)
|
||||||
# mypaint # not the best art program
|
|
||||||
# mypaint-brushes # but it's got some
|
|
||||||
# mypaint-brushes1 # nice damn brushes
|
|
||||||
blender # cgi animation and sculpting
|
|
||||||
drawpile # arty party with friends!!
|
|
||||||
pureref # create inspiration/reference boards
|
|
||||||
])
|
|
||||||
++ (
|
|
||||||
if config.my.dev.gameDev.enable then
|
|
||||||
with pkgs;
|
|
||||||
[
|
|
||||||
godot_4 # game development
|
godot_4 # game development
|
||||||
gdtoolkit_4 # gdscript language server
|
gdtoolkit_4 # gdscript language server
|
||||||
]
|
;
|
||||||
else
|
};
|
||||||
[ ]
|
packages = builtins.attrValues {
|
||||||
);
|
inherit (pkgs)
|
||||||
|
gimp # the coolest bestest art program to never exist
|
||||||
|
krita # art to your heart desire!
|
||||||
|
# mypaint # not the best art program
|
||||||
|
# mypaint-brushes # but it's got some
|
||||||
|
# mypaint-brushes1 # nice damn brushes
|
||||||
|
blender # cgi animation and sculpting
|
||||||
|
drawpile # arty party with friends!!
|
||||||
|
pureref # create inspiration/reference boards
|
||||||
|
;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
packages ++ (if config.my.dev.gameDev.enable then gdPackages 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 {
|
||||||
hunspell
|
inherit (pkgs)
|
||||||
hunspellDicts.it_IT
|
hunspell
|
||||||
hunspellDicts.es_MX
|
;
|
||||||
hunspellDicts.en_CA-large
|
inherit (pkgs.hunspellDicts)
|
||||||
];
|
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 {
|
||||||
nerdfonts
|
inherit (pkgs)
|
||||||
symbola
|
nerdfonts
|
||||||
comic-neue
|
symbola
|
||||||
cascadia-code
|
comic-neue
|
||||||
];
|
cascadia-code
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,26 +19,36 @@
|
|||||||
platformOptimizations.enable = true;
|
platformOptimizations.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages =
|
||||||
shipwright # zelda OoT port
|
let
|
||||||
mangohud # fps & stats overlay
|
packages = builtins.attrValues {
|
||||||
lutris # games launcher & emulator hub
|
inherit (pkgs)
|
||||||
cartridges # games launcher
|
shipwright # zelda OoT port
|
||||||
gamemode # optimizes linux to have better gaming performance
|
mangohud # fps & stats overlay
|
||||||
heroic # install epic games
|
lutris # games launcher & emulator hub
|
||||||
protonup-qt # update proton-ge
|
cartridges # games launcher
|
||||||
ns-usbloader # load games into my switch
|
gamemode # optimizes linux to have better gaming performance
|
||||||
(callPackage ../../pkgs/polymc/default.nix { }) # minecraft launcher
|
heroic # install epic games
|
||||||
# minecraft # minecraft official launcher
|
protonup-qt # update proton-ge
|
||||||
|
ns-usbloader # load games into my switch
|
||||||
|
# minecraft # minecraft official launcher
|
||||||
|
|
||||||
# emulators
|
# emulators
|
||||||
rpcs3 # ps3
|
rpcs3 # ps3
|
||||||
pcsx2 # ps2
|
pcsx2 # ps2
|
||||||
cemu # wii u
|
cemu # wii u
|
||||||
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,22 +23,25 @@
|
|||||||
users.users.jawz.packages =
|
users.users.jawz.packages =
|
||||||
let
|
let
|
||||||
vdhcoapp = pkgs.callPackage ../../pkgs/vdhcoapp/default.nix { };
|
vdhcoapp = pkgs.callPackage ../../pkgs/vdhcoapp/default.nix { };
|
||||||
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
|
warp # transfer files with based ppl
|
||||||
|
brave # crypto-browser that at least somewhat integrates with gtk
|
||||||
|
nextcloud-client # self-hosted google-drive alternative
|
||||||
|
fragments # beautiful torrent client
|
||||||
|
protonmail-bridge # bridge for protonmail
|
||||||
|
tor-browser-bundle-bin # dark web, so dark!
|
||||||
|
chromium # web browser with spyware included
|
||||||
|
telegram-desktop # furry chat
|
||||||
|
nicotine-plus # remember Ares?
|
||||||
|
vesktop # screen share with audio discord
|
||||||
|
discord # :3
|
||||||
|
teamspeak5_client # ppl say they will use this...?
|
||||||
|
# hugo # website engine
|
||||||
|
;
|
||||||
|
};
|
||||||
in
|
in
|
||||||
(with pkgs; [
|
packages
|
||||||
warp # transfer files with based ppl
|
|
||||||
brave # crypto-browser that at least somewhat integrates with gtk
|
|
||||||
nextcloud-client # self-hosted google-drive alternative
|
|
||||||
fragments # beautiful torrent client
|
|
||||||
protonmail-bridge # bridge for protonmail
|
|
||||||
tor-browser-bundle-bin # dark web, so dark!
|
|
||||||
chromium # web browser with spyware included
|
|
||||||
telegram-desktop # furry chat
|
|
||||||
nicotine-plus # remember Ares?
|
|
||||||
vesktop # screen share with audio discord
|
|
||||||
discord # :3
|
|
||||||
teamspeak5_client # ppl say they will use this...?
|
|
||||||
# hugo # website engine
|
|
||||||
])
|
|
||||||
++ [
|
++ [
|
||||||
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,15 +7,17 @@
|
|||||||
{
|
{
|
||||||
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 {
|
||||||
# celeste # sync tool for any cloud provider
|
inherit (pkgs)
|
||||||
# czkawka # duplicate finder
|
# celeste # sync tool for any cloud provider
|
||||||
# sequeler # friendly SQL client
|
# czkawka # duplicate finder
|
||||||
collector # stores things and throws them anywhere
|
# sequeler # friendly SQL client
|
||||||
blanket # background noise
|
collector # stores things and throws them anywhere
|
||||||
metadata-cleaner # remove any metadata and geolocation from files
|
blanket # background noise
|
||||||
pika-backup # backups
|
metadata-cleaner # remove any metadata and geolocation from files
|
||||||
gnome-obfuscate # censor private information
|
pika-backup # backups
|
||||||
];
|
gnome-obfuscate # censor private information
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,19 +7,21 @@
|
|||||||
{
|
{
|
||||||
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 {
|
||||||
pitivi # video editor
|
inherit (pkgs)
|
||||||
celluloid # video player
|
pitivi # video editor
|
||||||
curtail # image compressor
|
celluloid # video player
|
||||||
easyeffects # equalizer
|
curtail # image compressor
|
||||||
handbrake # video converter, may be unnecessary
|
easyeffects # equalizer
|
||||||
identity # compare images or videos
|
handbrake # video converter, may be unnecessary
|
||||||
mousai # poor man shazam
|
identity # compare images or videos
|
||||||
shortwave # listen to world radio
|
mousai # poor man shazam
|
||||||
tagger # tag music files
|
shortwave # listen to world radio
|
||||||
# cozy # audiobooks player
|
tagger # tag music files
|
||||||
# gnome-podcasts # podcast player
|
# cozy # audiobooks player
|
||||||
# hakuneko # manga & comic GUI downloader
|
# gnome-podcasts # podcast player
|
||||||
];
|
# hakuneko # manga & comic GUI downloader
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,15 +8,17 @@
|
|||||||
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 {
|
||||||
libreoffice # office, but based
|
inherit (pkgs)
|
||||||
calibre # ugly af eBook library manager
|
libreoffice # office, but based
|
||||||
newsflash # feed reader, syncs with nextcloud
|
calibre # ugly af eBook library manager
|
||||||
furtherance # I packaged this one tehee track time utility
|
newsflash # feed reader, syncs with nextcloud
|
||||||
planify # let's pretend I will organize my tasks
|
furtherance # I packaged this one tehee track time utility
|
||||||
# foliate # gtk eBook reader
|
planify # let's pretend I will organize my tasks
|
||||||
# wike # gtk wikipedia wow!
|
# foliate # gtk eBook reader
|
||||||
# denaro # manage your finances
|
# wike # gtk wikipedia wow!
|
||||||
];
|
# 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,34 +25,45 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.users.jawz.packages =
|
users.users.jawz.packages =
|
||||||
(with pkgs; [
|
let
|
||||||
fd # modern find, faster searches
|
packagesDoomEverywhere = builtins.attrValues {
|
||||||
fzf # fuzzy finder! super cool and useful
|
inherit (pkgs.xorg) xwininfo;
|
||||||
ripgrep # modern grep
|
inherit (pkgs)
|
||||||
tree-sitter # code parsing based on symbols and shit, I do not get it
|
xdotool
|
||||||
graphviz # graphs
|
xclip
|
||||||
tetex # export pdf
|
wl-clipboard-rs
|
||||||
languagetool # proofreader for English
|
;
|
||||||
|
};
|
||||||
|
packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
|
fd # modern find, faster searches
|
||||||
|
fzf # fuzzy finder! super cool and useful
|
||||||
|
ripgrep # modern grep
|
||||||
|
tree-sitter # code parsing based on symbols and shit, I do not get it
|
||||||
|
graphviz # graphs
|
||||||
|
tetex # export pdf
|
||||||
|
languagetool # proofreader for English
|
||||||
|
|
||||||
# doom everywhere
|
# lsps
|
||||||
xorg.xwininfo
|
yaml-language-server
|
||||||
xdotool
|
markdownlint-cli
|
||||||
xclip
|
;
|
||||||
|
};
|
||||||
# lsps
|
packagesNode = builtins.attrValues {
|
||||||
yaml-language-server
|
inherit (pkgs.nodePackages)
|
||||||
markdownlint-cli
|
vscode-json-languageserver
|
||||||
])
|
prettier # multi-language linter
|
||||||
++ (with pkgs.nodePackages; [
|
;
|
||||||
vscode-json-languageserver
|
};
|
||||||
# linters
|
in
|
||||||
prettier
|
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 {
|
||||||
ghc # compiler
|
inherit (pkgs)
|
||||||
haskell-language-server # lsp
|
ghc # compiler
|
||||||
];
|
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 {
|
||||||
nixfmt-rfc-style # formating
|
inherit (pkgs)
|
||||||
cachix # why spend time compiling?
|
nixfmt-rfc-style # formating
|
||||||
nixd # language server
|
cachix # why spend time compiling?
|
||||||
statix # linter
|
nixd # language server
|
||||||
];
|
statix # linter
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,23 +9,32 @@
|
|||||||
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 =
|
||||||
pipenv # python development workflow for humans
|
let
|
||||||
pyright # LSP
|
packages = builtins.attrValues {
|
||||||
(python3.withPackages (
|
inherit (pkgs)
|
||||||
ps: with ps; [
|
pipenv # python development workflow for humans
|
||||||
black # Python code formatter
|
pyright # LSP
|
||||||
editorconfig # follow rules of contributin
|
;
|
||||||
flake8 # wraper for pyflakes, pycodestyle and mccabe
|
};
|
||||||
isort # sort Python imports
|
pythonPackages = builtins.attrValues {
|
||||||
pyflakes # checks source code for errors
|
inherit (pkgs.python3Packages)
|
||||||
pylint # bug and style checker for python
|
black # Python code formatter
|
||||||
speedtest-cli # check internet speed from the comand line
|
editorconfig # follow rules of contributin
|
||||||
# nose # testing and running python scripts
|
flake8 # wraper for pyflakes, pycodestyle and mccabe
|
||||||
# poetry # dependency management made easy
|
isort # sort Python imports
|
||||||
# pytest # framework for writing tests
|
pyflakes # checks source code for errors
|
||||||
]
|
pylint # bug and style checker for python
|
||||||
))
|
speedtest-cli # check internet speed from the comand line
|
||||||
];
|
# nose # testing and running python scripts
|
||||||
|
# poetry # dependency management made easy
|
||||||
|
# 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 {
|
||||||
bashdb # autocomplete
|
inherit (pkgs)
|
||||||
shellcheck # linting
|
bashdb # autocomplete
|
||||||
shfmt # a shell parser and formatter
|
shellcheck # linting
|
||||||
nodePackages.bash-language-server # LSP
|
shfmt # a shell parser and formatter
|
||||||
];
|
;
|
||||||
|
#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 (
|
|
||||||
let
|
pythonPackages = [
|
||||||
version = "12.70";
|
(pkgs.python311.withPackages (ps: [ ps.tensorflow ]))
|
||||||
in
|
];
|
||||||
{
|
|
||||||
pname = "Image-ExifTool";
|
perlPackages = pkgs.perlPackages.buildPerlPackage (
|
||||||
inherit version;
|
let
|
||||||
src = fetchurl {
|
version = "12.70";
|
||||||
url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
|
in
|
||||||
hash = "sha256-TLJSJEXMPj870TkExq6uraX8Wl4kmNerrSlX3LQsr/4=";
|
{
|
||||||
};
|
pname = "Image-ExifTool";
|
||||||
}
|
inherit version;
|
||||||
))
|
src = pkgs.fetchurl {
|
||||||
];
|
url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
|
||||||
|
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 {
|
||||||
nvidia-vaapi-driver
|
inherit (pkgs)
|
||||||
vaapiVdpau
|
nvidia-vaapi-driver
|
||||||
libvdpau-va-gl
|
vaapiVdpau
|
||||||
vulkan-loader
|
libvdpau-va-gl
|
||||||
mesa
|
vulkan-loader
|
||||||
];
|
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 {
|
||||||
exercism # learn to code
|
inherit (pkgs)
|
||||||
bats # testing system, required by Exercism
|
exercism # learn to code
|
||||||
];
|
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
|
||||||
gallery-dl # similar to yt-dlp but for most image gallery websites
|
packages = builtins.attrValues {
|
||||||
yt-dlp # downloads videos from most video websites
|
inherit (pkgs)
|
||||||
ffmpeg # not ffmpreg, the coolest video conversion tool!
|
gallery-dl # similar to yt-dlp but for most image gallery websites
|
||||||
imagemagick # photoshop what??
|
yt-dlp # downloads videos from most video websites
|
||||||
])
|
ffmpeg # not ffmpreg, the coolest video conversion tool!
|
||||||
++ [
|
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 {
|
||||||
batman # man pages
|
inherit (pkgs.bat-extras)
|
||||||
batpipe # piping
|
batman # man pages
|
||||||
batgrep # ripgrep
|
batpipe # piping
|
||||||
batdiff # this is getting crazy!
|
batgrep # ripgrep
|
||||||
batwatch # probably my next best friend
|
batdiff # this is getting crazy!
|
||||||
prettybat # trans your sourcecode!
|
batwatch # probably my next best friend
|
||||||
];
|
prettybat # trans your sourcecode!
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -65,19 +67,21 @@
|
|||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.users.jawz.packages = with pkgs; [
|
users.users.jawz.packages = builtins.attrValues {
|
||||||
ripgrep # modern grep
|
inherit (pkgs)
|
||||||
du-dust # rusty du similar to gdu
|
ripgrep # modern grep
|
||||||
eza # like ls but with colors
|
du-dust # rusty du similar to gdu
|
||||||
fd # modern find, faster searches
|
eza # like ls but with colors
|
||||||
fzf # fuzzy finder! super cool and useful
|
fd # modern find, faster searches
|
||||||
gdu # disk-space utility checker, somewhat useful
|
fzf # fuzzy finder! super cool and useful
|
||||||
rmlint # amazing dupe finder that integrates well with BTRFS
|
gdu # disk-space utility checker, somewhat useful
|
||||||
tldr # man for retards
|
rmlint # amazing dupe finder that integrates well with BTRFS
|
||||||
trash-cli # oop! did not meant to delete that
|
tldr # man for retards
|
||||||
jq # linting
|
trash-cli # oop! did not meant to delete that
|
||||||
smartmontools # check hard drie health
|
jq # linting
|
||||||
];
|
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";
|
||||||
|
|||||||
33
overlay.nix
33
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 {
|
||||||
gst-libav
|
inherit (pkgs.gst_all_1)
|
||||||
gst-plugins-good
|
gst-libav
|
||||||
gst-plugins-bad
|
gst-plugins-good
|
||||||
gst-plugins-ugly
|
gst-plugins-bad
|
||||||
gst-plugins-base
|
gst-plugins-ugly
|
||||||
]);
|
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 {
|
||||||
pyyaml
|
inherit (python3Packages)
|
||||||
types-pyyaml
|
pyyaml
|
||||||
yt-dlp
|
types-pyyaml
|
||||||
];
|
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