2022-02-02 15:50:53 +01:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
|
|
|
{
|
2022-05-20 11:57:00 +02:00
|
|
|
|
2022-02-03 14:34:32 +01:00
|
|
|
imports = [
|
|
|
|
./home/modules/programs/cmus.nix
|
2022-02-03 15:14:00 +01:00
|
|
|
./home/modules/programs/languagetool.nix
|
2022-02-07 12:17:08 +01:00
|
|
|
./home/modules/programs/mailhog.nix
|
2022-02-03 14:34:32 +01:00
|
|
|
];
|
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
home = {
|
|
|
|
|
|
|
|
# Home Manager needs a bit of information about you and the
|
|
|
|
# paths it should manage.
|
|
|
|
username = "daniels";
|
|
|
|
homeDirectory = "/home/daniels";
|
|
|
|
|
|
|
|
# This value determines the Home Manager release that your
|
|
|
|
# configuration is compatible with. This helps avoid breakage
|
|
|
|
# when a new Home Manager release introduces backwards
|
|
|
|
# incompatible changes.
|
|
|
|
#
|
|
|
|
# You can update Home Manager without changing this value. See
|
|
|
|
# the Home Manager release notes for a list of state version
|
|
|
|
# changes in each release.
|
|
|
|
stateVersion = "22.05";
|
|
|
|
|
|
|
|
packages = [
|
|
|
|
pkgs.nix
|
|
|
|
pkgs.cacert
|
|
|
|
|
|
|
|
# System tools
|
|
|
|
pkgs.dmenu
|
|
|
|
pkgs.networkmanager_dmenu
|
|
|
|
pkgs.dmenu-custom-scripts
|
|
|
|
pkgs.custom-update-system
|
|
|
|
pkgs.custom-push-etckeeper
|
|
|
|
pkgs.dunst
|
|
|
|
pkgs.i3blocks
|
|
|
|
pkgs.st
|
|
|
|
pkgs.ncdu
|
|
|
|
pkgs.tree
|
|
|
|
pkgs.rst2pdf
|
|
|
|
|
|
|
|
pkgs.espeak
|
|
|
|
pkgs.bc
|
|
|
|
|
|
|
|
pkgs.borgbackup
|
|
|
|
pkgs.keepassxc
|
|
|
|
|
|
|
|
pkgs.libreoffice
|
|
|
|
|
|
|
|
# Dev tools
|
|
|
|
pkgs.litecli
|
|
|
|
pkgs.sqlite
|
|
|
|
pkgs.mycli
|
|
|
|
# pkgs.mytop
|
|
|
|
pkgs.robo3t
|
|
|
|
pkgs.mkcert
|
|
|
|
pkgs.tig
|
|
|
|
pkgs.universal-ctags
|
|
|
|
pkgs.silver-searcher
|
|
|
|
pkgs.curl
|
|
|
|
pkgs.wget
|
|
|
|
pkgs.kcachegrind
|
|
|
|
pkgs.geckodriver
|
|
|
|
|
|
|
|
# In order to pull binaries from their.
|
|
|
|
# E.g. phps: https://github.com/fossar/nix-phps#how-to-use
|
|
|
|
pkgs.cachix
|
|
|
|
|
|
|
|
# Coding / Neovim
|
|
|
|
# Does not provide any autocompletion yet, don't know why
|
|
|
|
# Use in conjuncion with https://github.com/autozimu/LanguageClient-neovim
|
|
|
|
# pkgs.rnix-lsp
|
|
|
|
|
|
|
|
pkgs.custom-customer-project
|
|
|
|
|
|
|
|
# Communication
|
|
|
|
pkgs.signal-desktop
|
|
|
|
pkgs.thunderbird
|
|
|
|
|
|
|
|
# Media
|
|
|
|
pkgs.vlc
|
|
|
|
pkgs.yt-dlp
|
|
|
|
pkgs.spotdl
|
|
|
|
# Does not work for some reason, need installed via apt
|
|
|
|
# pkgs.sound-juicer
|
|
|
|
# pkgs.audacity
|
|
|
|
pkgs.ffmpeg
|
|
|
|
pkgs.python39Packages.mutagen
|
|
|
|
pkgs.darktable
|
|
|
|
];
|
|
|
|
|
|
|
|
file = {
|
|
|
|
".nix-channels".source = ./home/files/nix-channels;
|
|
|
|
".profile".source = ./home/files/profile;
|
|
|
|
".myclirc".source = ./home/files/myclirc;
|
|
|
|
".agignore".source = ./home/files/agignore;
|
|
|
|
};
|
2022-02-02 15:50:53 +01:00
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
};
|
2022-02-02 15:51:20 +01:00
|
|
|
|
2022-03-24 07:39:56 +01:00
|
|
|
nix = import ./home/programs/nix.nix {
|
|
|
|
inherit pkgs;
|
|
|
|
};
|
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
programs = {
|
2022-02-08 16:11:39 +01:00
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
# Let Home Manager install and manage itself.
|
|
|
|
home-manager.enable = true;
|
2022-02-02 17:21:27 +01:00
|
|
|
|
2022-03-11 14:03:07 +01:00
|
|
|
neovim = import ./home/programs/neovim.nix {
|
|
|
|
inherit pkgs;
|
|
|
|
};
|
2022-02-02 21:50:24 +01:00
|
|
|
git = import ./home/programs/git.nix {
|
|
|
|
inherit pkgs;
|
|
|
|
};
|
2022-02-02 22:52:40 +01:00
|
|
|
htop = import ./home/programs/htop.nix {
|
|
|
|
inherit config;
|
|
|
|
};
|
2022-02-03 09:10:22 +01:00
|
|
|
tmux = import ./home/programs/tmux.nix {
|
2022-02-08 17:46:08 +01:00
|
|
|
inherit pkgs;
|
2022-02-03 09:10:22 +01:00
|
|
|
};
|
2022-02-14 16:06:43 +01:00
|
|
|
jq = import ./home/programs/jq.nix {
|
|
|
|
inherit config;
|
|
|
|
};
|
2022-02-07 13:04:58 +01:00
|
|
|
zsh = import ./home/programs/zsh.nix {
|
2022-02-14 08:05:23 +01:00
|
|
|
inherit config pkgs;
|
2022-02-07 13:04:58 +01:00
|
|
|
};
|
2022-02-03 14:34:32 +01:00
|
|
|
|
2022-03-10 16:17:28 +01:00
|
|
|
firefox = import ./home/programs/firefox.nix {
|
|
|
|
inherit pkgs;
|
|
|
|
};
|
|
|
|
|
2022-02-03 14:34:32 +01:00
|
|
|
# Media
|
|
|
|
cmus.enable = true;
|
2022-02-02 21:50:24 +01:00
|
|
|
|
2022-02-02 22:19:55 +01:00
|
|
|
};
|
2022-02-02 21:02:07 +01:00
|
|
|
|
2022-05-18 21:08:57 +02:00
|
|
|
xsession.windowManager.i3 = import ./home/windowManager/i3.nix {
|
|
|
|
inherit config pkgs;
|
|
|
|
};
|
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
xdg = {
|
|
|
|
|
|
|
|
configFile = {
|
|
|
|
"ctags/config.ctags".source = ./home/files/ctags;
|
|
|
|
"litecli/config".source = ./home/files/litecli;
|
|
|
|
"phpactor".source = ./home/files/phpactor;
|
|
|
|
"yamllint/config".source = ./home/files/yamllint/config;
|
|
|
|
"tig/config".source = ./home/files/tig;
|
|
|
|
|
|
|
|
"cmus/smyckblue.theme".source = ./home/files/cmus/smyckblue.theme;
|
|
|
|
"cmus/rc".source = ./home/files/cmus/rc;
|
|
|
|
|
|
|
|
"i3blocks/config".source = ./home/files/i3-blocks;
|
|
|
|
|
|
|
|
"borg/exclude".source = ./home/files/borg-exclude;
|
|
|
|
};
|
|
|
|
|
|
|
|
dataFile = {
|
|
|
|
"xsd/xliff-core-1.2-strict.xsd".source = pkgs.fetchurl {
|
|
|
|
url = "https://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd";
|
|
|
|
sha256 = "nzevVk7NJ9X2kVTXz+e6jesfYgyBuUzw6rH0IFx01fg=";
|
|
|
|
};
|
|
|
|
"typo3-configuration".source = ./home/files/typo3-configuration;
|
|
|
|
};
|
|
|
|
|
|
|
|
desktopEntries = {
|
|
|
|
networkmanager-dmenu = {
|
|
|
|
type = "Application";
|
|
|
|
exec = "${pkgs.networkmanager_dmenu}/bin/networkmanager_dmenu";
|
|
|
|
name = "Networkmanager dmenu";
|
|
|
|
comment = "Networkmanaging using dmenu";
|
|
|
|
genericName = "Networkmanager Setting";
|
|
|
|
categories = [
|
|
|
|
"Network"
|
|
|
|
];
|
|
|
|
};
|
|
|
|
slack-typo3 = {
|
|
|
|
name = "Slack TYPO3";
|
|
|
|
type = "Application";
|
|
|
|
exec = "/snap/bin/chromium --class=\"chat\" --new-window --app=https://app.slack.com/client/T024TUMLZ/unreads";
|
|
|
|
};
|
|
|
|
slack-codappix = {
|
|
|
|
name = "Slack Codappix";
|
|
|
|
type = "Application";
|
|
|
|
exec = "/snap/bin/chromium --class=\"chat\" --new-window --app=https://app.slack.com/client/T2DPNS55W/unreads";
|
|
|
|
};
|
|
|
|
slack-sac = {
|
|
|
|
name = "Slack SAC";
|
|
|
|
type = "Application";
|
|
|
|
exec = "/snap/bin/chromium --class=\"chat\" --new-window --app=https://app.slack.com/client/T3FANTPL5/unreads";
|
|
|
|
};
|
|
|
|
microsoft-teams = {
|
|
|
|
name = "Microsoft Teams";
|
|
|
|
type = "Application";
|
|
|
|
exec = "/snap/bin/chromium --class=\"chat\" --new-window --user-agent=\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36\" --new-window --app=https://teams.microsoft.com/";
|
|
|
|
};
|
|
|
|
mattermost = {
|
|
|
|
name = "Mattermost werkraum-media";
|
|
|
|
type = "Application";
|
|
|
|
exec = "/snap/bin/chromium --class=\"chat\" --new-window --new-window --app=https://mattermost.werkraum-media.de/";
|
|
|
|
};
|
|
|
|
werkraum-jitsi = {
|
|
|
|
name = "Jitsi werkraum-media";
|
|
|
|
type = "Application";
|
|
|
|
exec = "/snap/bin/chromium --class=\"chat\" --new-window --new-window --app=https://jitsi.werkraum-media.de/codappix";
|
|
|
|
};
|
|
|
|
toggl = {
|
|
|
|
name = "Toggl Time Tracking";
|
|
|
|
type = "Application";
|
|
|
|
exec = "${pkgs.firefox}/bin/firefox --class=\"time-tracking\" --new-instance -P toggl https://track.toggl.com/timer";
|
|
|
|
};
|
|
|
|
mailhog-ui = {
|
|
|
|
name = "Mailhog";
|
|
|
|
type = "Application";
|
|
|
|
exec = "${pkgs.firefox}/bin/firefox --class=\"mailhog\" --new-instance -P mailhog https://mailhog.localhost";
|
|
|
|
};
|
|
|
|
};
|
2022-02-10 16:19:28 +01:00
|
|
|
|
2022-02-07 08:45:08 +01:00
|
|
|
};
|
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
services = {
|
|
|
|
dunst = import ./home/services/dunst.nix;
|
|
|
|
mailhog.enable = true;
|
|
|
|
languagetool.enable = true;
|
|
|
|
nextcloud-client.enable = true;
|
2022-03-16 17:12:48 +01:00
|
|
|
};
|
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
systemd = {
|
2022-02-08 07:54:27 +01:00
|
|
|
|
2022-05-20 11:57:00 +02:00
|
|
|
# Temporary fix to OpenGL issue by using GLX.
|
|
|
|
# Start nextcloud without GLX support which is fine for me for noe.
|
|
|
|
# I don't have a better way for now, then using `pkgs.lib.mkForce` and setting whole value (repeating from modules/services/nextcloud-client.nix).
|
|
|
|
user.services.nextcloud-client.Service.Environment = pkgs.lib.mkForce [
|
|
|
|
"PATH=${config.home.profileDirectory}/bin"
|
|
|
|
"QT_XCB_GL_INTEGRATION=none"
|
|
|
|
];
|
|
|
|
|
|
|
|
user.services.batteryicon = import ./home/services/batteryicon.nix {
|
|
|
|
inherit pkgs;
|
|
|
|
};
|
2022-05-19 07:18:51 +02:00
|
|
|
|
|
|
|
};
|
2022-05-20 11:57:00 +02:00
|
|
|
|
2022-02-02 15:50:53 +01:00
|
|
|
}
|