292 lines
5.1 KiB
Nix
292 lines
5.1 KiB
Nix
{ pkgs, ... }:
|
|
|
|
with pkgs;
|
|
|
|
let
|
|
unstable = import <nixos-unstable> {};
|
|
mybrowser = firefox;
|
|
|
|
desktopApps = [
|
|
mybrowser
|
|
falkon
|
|
thunderbird
|
|
calibre
|
|
dino
|
|
unstable.zotero
|
|
keepassxc
|
|
ding
|
|
aspell
|
|
aspellDicts.de
|
|
aspellDicts.en
|
|
# for kate/KDE applications
|
|
hunspellDicts.de-de
|
|
hunspellDicts.en-us
|
|
hunspellDicts.en-gb-ise
|
|
seafile-client
|
|
alacritty
|
|
libreoffice-fresh
|
|
backintime-common
|
|
anki
|
|
signal-desktop
|
|
(tor-browser-bundle-bin.override {mediaSupport=true;pulseaudioSupport=true;})
|
|
virtualbox
|
|
pdfpc
|
|
quaternion
|
|
unstable.nheko
|
|
wire-desktop
|
|
gpx-viewer
|
|
gpxsee
|
|
(corebird.overrideAttrs (oldAttrs: {src = fetchFromGitHub {
|
|
owner = "IBBoard";
|
|
repo = "corebird";
|
|
rev = "bc758889a5ac304101001c36eafdb219a0acfda7";
|
|
sha256 = "1yiflxvswrybabqq5cd6x9i740560c23p58gvcn9b6riwhxzrlb9";
|
|
};}))
|
|
# (corebird.overrideAttrs (oldAttrs: {src = fetchFromGitHub {
|
|
# owner = "nextbird";
|
|
# repo = "nextbird";
|
|
# rev = "c5d1f4edc60634746a0c56d2430ec7933dd8c16e";
|
|
# sha256 = "0iwg6brwbbmapsh559my7zwhg91xb88w4kq3sqykc6cd3dvyr9xy";
|
|
# };}))
|
|
tootle
|
|
subsurface
|
|
(pkgs.pidgin-with-plugins.override {
|
|
plugins = [ pkgs.pidginotr ];})
|
|
|
|
# for Hibiscus banking software
|
|
jameica
|
|
];
|
|
|
|
graphicsApps = [
|
|
inkscape
|
|
unstable.darktable
|
|
hugin
|
|
luminanceHDR
|
|
exiftool
|
|
gimp
|
|
]
|
|
++ (with gimpPlugins; [
|
|
resynthesizer2
|
|
fourier
|
|
lqrPlugin
|
|
]);
|
|
|
|
multimediaApps = [
|
|
mpv
|
|
vlc
|
|
#amarok-kf5
|
|
clementine
|
|
youtube-dl
|
|
sonic-pi
|
|
musescore
|
|
audacity
|
|
avidemux
|
|
linphone
|
|
picard
|
|
soundkonverter
|
|
];
|
|
|
|
cliApps = [
|
|
myVim
|
|
htop
|
|
tmux
|
|
httpie
|
|
ponysay
|
|
gti
|
|
tree
|
|
lsof
|
|
mosh
|
|
openssh
|
|
sshfsFuse
|
|
cryfs
|
|
smbnetfs # for FUSE smb mounting
|
|
sshuttle
|
|
thefuck
|
|
gnupg
|
|
unar
|
|
pwgen
|
|
pandoc
|
|
agrep
|
|
pdfgrep
|
|
torsocks
|
|
ncdu
|
|
psmisc # for killall
|
|
dos2unix
|
|
reptyr # re-bind running program to other tty
|
|
xclip
|
|
unzip
|
|
];
|
|
|
|
nixHelpers = [
|
|
nox
|
|
];
|
|
|
|
kdeTools = with kdeApplications; [
|
|
okular
|
|
redshift-plasma-applet
|
|
gwenview
|
|
yakuake
|
|
kmail
|
|
kontact
|
|
korganizer
|
|
akonadi-mime #for KOrganizer
|
|
kaddressbook
|
|
kdeconnect
|
|
dolphin
|
|
spectacle
|
|
kate
|
|
kleopatra
|
|
qdirstat
|
|
ark
|
|
kwalletmanager
|
|
ktouch
|
|
kcharselect
|
|
konversation
|
|
okteta
|
|
ktorrent
|
|
krdc
|
|
skanlite
|
|
akonadiconsole
|
|
plasma-browser-integration
|
|
]
|
|
++ (with kdeFrameworks; [
|
|
networkmanager-qt
|
|
kcrash
|
|
plasma5.breeze-gtk
|
|
libsForQt5.phonon-backend-vlc
|
|
#(phonon-backend-vlc.override {qtbase=qt5.qtbase; qtx11extras=qt5.qtx11extras;})
|
|
]);
|
|
|
|
devTools = [
|
|
curl
|
|
httpie
|
|
gdb
|
|
strace
|
|
ltrace
|
|
valgrind
|
|
zeal
|
|
gcc
|
|
kdevelop
|
|
qtcreator
|
|
shellcheck
|
|
mtr
|
|
wireshark
|
|
ripgrep
|
|
];
|
|
|
|
|
|
latexApps = [
|
|
texmaker
|
|
unstable.kile
|
|
biber
|
|
# customize texlive installation
|
|
(texlive.combine {
|
|
inherit (texlive)
|
|
scheme-medium
|
|
|
|
xetex
|
|
luatex
|
|
unicode-math
|
|
fontspec
|
|
collection-binextra
|
|
collection-fontsrecommended
|
|
collection-latex
|
|
collection-latexextra
|
|
collection-latexrecommended
|
|
collection-langgerman
|
|
IEEEtran
|
|
moderncv
|
|
acronym
|
|
ccicons
|
|
fontawesome
|
|
biblatex
|
|
logreq
|
|
koma-script;
|
|
})
|
|
];
|
|
|
|
pythonApps = with python3Packages; [
|
|
notebook
|
|
ipython
|
|
pip
|
|
numpy
|
|
matplotlib
|
|
jedi
|
|
flake8
|
|
mypy
|
|
]
|
|
++ (with python2Packages; [
|
|
]);
|
|
|
|
|
|
fonts = [
|
|
comic-neue
|
|
source-sans-pro
|
|
source-serif-pro
|
|
fira-code
|
|
ubuntu_font_family
|
|
twemoji-color-font
|
|
opensans-ttf
|
|
(iosevka.override {design = [ "slab" "term" ]; set = "serif";})
|
|
# TODO: vollkorn
|
|
# TODO: humor-sans
|
|
];
|
|
|
|
computerVisionTooling = [
|
|
];
|
|
|
|
in
|
|
{
|
|
|
|
home.packages = ([]
|
|
++ desktopApps
|
|
++ latexApps
|
|
++ pythonApps
|
|
++ graphicsApps
|
|
++ cliApps
|
|
++ multimediaApps
|
|
++ devTools
|
|
++ kdeTools
|
|
++ fonts
|
|
++ nixHelpers
|
|
++ computerVisionTooling
|
|
);
|
|
|
|
programs.home-manager.enable = true;
|
|
programs.home-manager.path = "$HOME/.nix-defexpr/channels/home-manager";
|
|
home.stateVersion = "18.09";
|
|
|
|
programs.direnv =
|
|
{ enable = true;
|
|
enableZshIntegration = true;
|
|
};
|
|
|
|
# programs.vim =
|
|
# { enable = true;
|
|
# };
|
|
|
|
programs.bat.enable = true;
|
|
|
|
services.gpg-agent =
|
|
{ enable = true;
|
|
enableSshSupport = true;
|
|
};
|
|
|
|
programs.tmux = {
|
|
enable = true;
|
|
keyMode = "vi";
|
|
extraConfig =
|
|
# for direnv not messing up the environment
|
|
''set-option -g update-environment "DIRENV_DIFF DIRENV_DIR DIRENV_WATCHES"
|
|
set-environment -gu DIRENV_DIFF
|
|
set-environment -gu DIRENV_DIR
|
|
set-environment -gu DIRENV_WATCHES
|
|
set-environment -gu DIRENV_LAYOUT
|
|
|
|
bind-key -T copy-mode-vi 'v' send -X begin-selection
|
|
bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel'';
|
|
terminal = "screen-256color";
|
|
};
|
|
|
|
}
|