389 lines
15 KiB
Nix
389 lines
15 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
let
|
|
|
|
impermanence = builtins.fetchTarball "https://github.com/nix-community/impermanence/archive/master.tar.gz";
|
|
|
|
thunderbirdSettings = {
|
|
"extensions.activeThemeID" = "thunderbird-compact-dark@mozilla.org";
|
|
"browser.theme.content-theme" = 0;
|
|
"browser.theme.toolbar-theme" = 0;
|
|
"calendar.alarms.showmissed" = false;
|
|
"mail.uidensity" = 2;
|
|
"mail.inline_attachments" = false;
|
|
"mail.folder.views.version" = 1;
|
|
"calendar.list.sortOrder" = "cloonar-personal";
|
|
"calendar.ui.version" = 3;
|
|
"calendar.timezone.local" = "Europe/Vienna";
|
|
"calendar.week.start" = 1;
|
|
};
|
|
|
|
thunderbirdCalendarPersonal = {
|
|
"calendar.registry.cloonar-personal.cache.enabled" = true;
|
|
"calendar.registry.cloonar-personal.calendar-main-in-composite" = true;
|
|
"calendar.registry.cloonar-personal.color" = "#232323";
|
|
"calendar.registry.cloonar-personal.disabled" = false;
|
|
"calendar.registry.cloonar-personal.forceEmailScheduling" = true;
|
|
"calendar.registry.cloonar-personal.imip.identity.key" = "id6";
|
|
"calendar.registry.cloonar-personal.name" = "Personal";
|
|
"calendar.registry.cloonar-personal.readOnly" = false;
|
|
"calendar.registry.cloonar-personal.refreshInterval" = 30;
|
|
"calendar.registry.cloonar-personal.suppressAlarms" = false;
|
|
"calendar.registry.cloonar-personal.type" = "caldav";
|
|
"calendar.registry.cloonar-personal.uri" = "https://cloud.cloonar.com/remote.php/dav/calendars/dominik.polakovics@cloonar.com/personal/";
|
|
"calendar.registry.cloonar-personal.username" = "dominik.polakovics@cloonar.com";
|
|
};
|
|
thunderbirdCalendarEpicenterEmployees = {
|
|
"calendar.registry.epicenter-employees.cache.enabled" = true;
|
|
"calendar.registry.epicenter-employees.calendar-main-in-composite" = true;
|
|
"calendar.registry.epicenter-employees.color" = "#e774ca";
|
|
"calendar.registry.epicenter-employees.disabled" = true;
|
|
"calendar.registry.epicenter-employees.forceEmailScheduling" = true;
|
|
"calendar.registry.epicenter-employees.name" = "epicenter.works-Employees (admin)";
|
|
"calendar.registry.epicenter-employees.readOnly" = false;
|
|
"calendar.registry.epicenter-employees.refreshInterval" = 30;
|
|
"calendar.registry.epicenter-employees.suppressAlarms" = true;
|
|
"calendar.registry.epicenter-employees.type" = "caldav";
|
|
"calendar.registry.epicenter-employees.uri" = "https://cloud.epicenter.works/remote.php/dav/calendars/razormind/akvorrat-employees_shared_by_admin/";
|
|
"calendar.registry.epicenter-employees.username" = "razormind";
|
|
};
|
|
|
|
thunderbirdContactsPersonal = {
|
|
"ldap_2.servers.Contacts.carddav.token" = "http://sabre.io/ns/sync/325";
|
|
"ldap_2.servers.Contacts.carddav.url" = "https://cloud.cloonar.com/remote.php/dav/addressbooks/users/dominik.polakovics@cloonar.com/contacts/";
|
|
"ldap_2.servers.Contacts.carddav.username" = "dominik.polakovics@cloonar.com";
|
|
"ldap_2.servers.Contacts.description" = "Contacts";
|
|
"ldap_2.servers.Contacts.dirType" = 102;
|
|
"ldap_2.servers.Contacts.filename" = "abook-1.sqlite";
|
|
"ldap_2.servers.Contacts.uid" = "68fb463c-1c2d-4f39-be37-bbb6ecb97e63";
|
|
"ldap_2.servers.history.uid" = "01df0056-319d-47ac-93ff-b24b978c0902";
|
|
"ldap_2.servers.pab.uid" = "3a7c1bff-18ec-4500-9ae2-098b5fdbaeaa";
|
|
};
|
|
|
|
firefoxSettings = {
|
|
"browser.startup.homepage" = "https://start.duckduckgo.com";
|
|
"browser.startup.page" = 1;
|
|
"browser.startup.homepage_override.mstone" = "ignore";
|
|
"extensions.autoDisableScopes" = 0;
|
|
"app.normandy.first_run" = false;
|
|
"browser.download.panel.shown" = true;
|
|
"devtools.cache.disabled" = true;
|
|
"devtools.toolbox.host" = "right";
|
|
"browser.uiCustomization.state" = "{\"placements\":{\"widget-overflow-fixed-list\":[],\"unified-extensions-area\":[],\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"urlbar-container\",\"downloads-button\",\"screenshot-button\",\"ublock0_raymondhill_net-browser-action\",\"jid1-mnnxcxisbpnsxq_jetpack-browser-action\",\"_d634138d-c276-4fc8-924b-40a0ea21d284_-browser-action\",\"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action\",\"_testpilot-containers-browser-action\",\"unified-extensions-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"firefox-view-button\",\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"PersonalToolbar\":[\"import-button\",\"personal-bookmarks\"]},\"seen\":[\"save-to-pocket-button\",\"_d634138d-c276-4fc8-924b-40a0ea21d284_-browser-action\",\"_testpilot-containers-browser-action\",\"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action\",\"ublock0_raymondhill_net-browser-action\",\"jid1-mnnxcxisbpnsxq_jetpack-browser-action\",\"developer-button\"],\"dirtyAreaCache\":[\"unified-extensions-area\",\"nav-bar\",\"PersonalToolbar\"],\"currentVersion\":20,\"newElementCount\":3}";
|
|
};
|
|
|
|
firefoxExtensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
bitwarden
|
|
multi-account-containers
|
|
onepassword-password-manager
|
|
privacy-badger
|
|
ublock-origin
|
|
];
|
|
in
|
|
{
|
|
programs.fuse.userAllowOther = true;
|
|
|
|
home-manager.users.dominik = { lib, pkgs, ... }: {
|
|
imports = [ "${impermanence}/home-manager.nix" ];
|
|
/* The home.stateVersion option does not have a default and must be set */
|
|
home.stateVersion = "24.05";
|
|
home.enableNixpkgsReleaseCheck = false;
|
|
/* Here goes the rest of your home-manager config, e.g. home.packages = [ pkgs.foo ]; */
|
|
home.persistence."/nix/persist/user/dominik" = {
|
|
allowOther = true;
|
|
directories = [
|
|
".config/github-copilot"
|
|
".config/libreoffice"
|
|
".config/Nextcloud"
|
|
".config/rustdesk"
|
|
".config/Signal"
|
|
".local/share/keyrings"
|
|
".mozilla"
|
|
".thunderbird"
|
|
"cloud.cloonar.com"
|
|
"cloud.epicenter.works"
|
|
"projects"
|
|
"go"
|
|
];
|
|
};
|
|
|
|
programs.git = {
|
|
|
|
enable = true;
|
|
package = pkgs.gitAndTools.gitFull;
|
|
userName = "Dominik Polakovics";
|
|
userEmail = "dominik.polakovics@cloonar.com";
|
|
# signing = {
|
|
# key = "dominik.polakovics@cloonar.com";
|
|
# signByDefault = false;
|
|
# };
|
|
iniContent = {
|
|
# Branch with most recent change comes first
|
|
branch.sort = "-committerdate";
|
|
# Remember and auto-resolve merge conflicts
|
|
# https://git-scm.com/book/en/v2/Git-Tools-Rerere
|
|
rerere.enabled = true;
|
|
};
|
|
};
|
|
|
|
programs.thunderbird = {
|
|
enable = true;
|
|
profiles = {
|
|
private = {
|
|
isDefault = true;
|
|
settings = lib.mkMerge [
|
|
thunderbirdSettings
|
|
thunderbirdCalendarPersonal
|
|
thunderbirdContactsPersonal
|
|
];
|
|
};
|
|
cloonar = {
|
|
settings = lib.mkMerge [
|
|
thunderbirdSettings
|
|
thunderbirdCalendarPersonal
|
|
thunderbirdContactsPersonal
|
|
];
|
|
};
|
|
work = {
|
|
settings = lib.mkMerge [
|
|
thunderbirdSettings
|
|
thunderbirdCalendarPersonal
|
|
thunderbirdCalendarEpicenterEmployees
|
|
thunderbirdContactsPersonal
|
|
];
|
|
};
|
|
};
|
|
};
|
|
|
|
accounts.email.accounts = {
|
|
"dominik@superbros.tv" = {
|
|
primary = true;
|
|
realName = "Dominik Polakovics";
|
|
address = "dominik@superbros.tv";
|
|
userName = "dominik@superbros.tv";
|
|
imap = {
|
|
host = "imap.cloonar.com";
|
|
port = 993;
|
|
};
|
|
smtp = {
|
|
host = "mail.cloonar.com";
|
|
port = 587;
|
|
tls = {
|
|
enable = true;
|
|
useStartTls = true;
|
|
};
|
|
};
|
|
thunderbird = {
|
|
enable = true;
|
|
profiles = [ "private" "cloonar" "work" ];
|
|
};
|
|
};
|
|
"office@cloonar.com" = {
|
|
realName = "Cloonar";
|
|
address = "office@cloonar.com";
|
|
userName = "office@cloonar.com";
|
|
imap = {
|
|
host = "imap.cloonar.com";
|
|
port = 993;
|
|
};
|
|
smtp = {
|
|
host = "mail.cloonar.com";
|
|
port = 587;
|
|
tls = {
|
|
enable = true;
|
|
useStartTls = true;
|
|
};
|
|
};
|
|
thunderbird = {
|
|
enable = true;
|
|
profiles = [ "cloonar" "work" ];
|
|
};
|
|
};
|
|
"dominik.polakovics@cloonar.com" = {
|
|
realName = "Dominik Polakovics";
|
|
address = "dominik.polakovics@cloonar.com";
|
|
userName = "dominik.polakovics@cloonar.com";
|
|
imap = {
|
|
host = "imap.cloonar.com";
|
|
port = 993;
|
|
};
|
|
smtp = {
|
|
host = "mail.cloonar.com";
|
|
port = 587;
|
|
tls = {
|
|
enable = true;
|
|
useStartTls = true;
|
|
};
|
|
};
|
|
thunderbird = {
|
|
enable = true;
|
|
profiles = [ "cloonar" "work" ];
|
|
};
|
|
};
|
|
"dominik.polakovics@epicenter.works" = {
|
|
realName = "Dominik Polakovics";
|
|
address = "dominik.polakovics@epicenter.works";
|
|
userName = "dominik.polakovics@epicenter.works";
|
|
imap = {
|
|
host = "mail.epicenter.works";
|
|
port = 993;
|
|
};
|
|
smtp = {
|
|
host = "mail.epicenter.works";
|
|
port = 587;
|
|
tls = {
|
|
enable = true;
|
|
useStartTls = true;
|
|
};
|
|
};
|
|
thunderbird = {
|
|
enable = true;
|
|
profiles = [ "work" ];
|
|
};
|
|
};
|
|
};
|
|
|
|
programs.firefox = {
|
|
enable = true;
|
|
profiles = {
|
|
default = {
|
|
id = 0;
|
|
isDefault = true;
|
|
settings = firefoxSettings;
|
|
search.default = "DuckDuckGo";
|
|
search.privateDefault = "DuckDuckGo";
|
|
extensions = firefoxExtensions;
|
|
};
|
|
social = {
|
|
id = 1;
|
|
settings = firefoxSettings;
|
|
search.default = "DuckDuckGo";
|
|
search.privateDefault = "DuckDuckGo";
|
|
containersForce = true;
|
|
containers = {
|
|
"private" = {
|
|
color = "green";
|
|
icon = "fingerprint";
|
|
id = 1;
|
|
};
|
|
"cloonar" = {
|
|
color = "purple";
|
|
icon = "briefcase";
|
|
id = 2;
|
|
};
|
|
"epicenter.works" = {
|
|
color = "blue";
|
|
icon = "briefcase";
|
|
id = 3;
|
|
};
|
|
};
|
|
extensions = firefoxExtensions;
|
|
};
|
|
};
|
|
};
|
|
|
|
home.activation.symlinks = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
|
PATH="${pkgs.git}/bin:${pkgs.openssh}/bin:$PATH"
|
|
set +eu
|
|
ln -s /home/dominik/.local/share/Cryptomator/mnt/Documents ~/Documents
|
|
ln -s /home/dominik/.local/share/Cryptomator/mnt/Downloads ~/Downloads
|
|
set -eu
|
|
'';
|
|
|
|
/* Setup development projects */
|
|
home.activation.projects = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
|
PATH="${pkgs.git}/bin:${pkgs.openssh}/bin:$PATH"
|
|
set +eu
|
|
git clone gitea@git.cloonar.com:Cloonar/nixos.git /nix/persist/user/dominik/projects/cloonar/cloonar-nixos 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Cloonar/website.git /nix/persist/user/dominik/projects/cloonar/cloonar-website 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Cloonar/wohnservice-wien-typo3.git /nix/persist/user/dominik/projects/cloonar/wohnservice-wien 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Cloonar/gbv-aktuell.git /nix/persist/user/dominik/projects/cloonar/gbv-aktuell 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Paraclub/api.git /nix/persist/user/dominik/projects/cloonar/paraclub/paraclub-api 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Paraclub/frontend.git /nix/persist/user/dominik/projects/cloonar/paraclub/paraclub-frontend 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Paraclub/website.git /nix/persist/user/dominik/projects/cloonar/paraclub/paraclub-website 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Paraclub/module.git /nix/persist/user/dominik/projects/cloonar/paraclub/paraclub-module 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Cloonar/amz-api.git /nix/persist/user/dominik/projects/cloonar/amz/amz-api 2>/dev/null
|
|
git clone gitea@git.cloonar.com:Cloonar/amz-frontend.git /nix/persist/user/dominik/projects/cloonar/amz/amz-frontend 2>/dev/null
|
|
git clone gitea@git.cloonar.com:myhidden.life/web.git /nix/persist/user/dominik/projects/myhidden.life/myhidden.life-web 2>/dev/null
|
|
|
|
git clone git@gitlab.epicenter.works:epicenter.works/campaigntool.git /nix/persist/user/dominik/projects/epicenter.works/campaigntool 2>/dev/null
|
|
git clone git@gitlab.epicenter.works:epicenter.works/website.git /nix/persist/user/dominik/projects/epicenter.works/epicenter.works 2>/dev/null
|
|
git clone git@gitlab.epicenter.works:epicenter.works/nixos.git /nix/persist/user/dominik/projects/epicenter.works/epicenter-nixos 2>/dev/null
|
|
git clone git@github.com:AKVorrat/spenden.akvorrat.at.git /nix/persist/user/dominik/projects/epicenter.works/spenden.akvorrat.at 2>/dev/null
|
|
git clone git@github.com:AKVorrat/dearmep-website.git /nix/persist/user/dominik/projects/epicenter.works/dearmep-website 2>/dev/null
|
|
set -eu
|
|
'';
|
|
|
|
home.file.".local/share/nvim/project_nvim/project_history".source = ./configs/project_history;
|
|
home.file.".config/Cryptomator/settings.json".source = ./configs/cryptomator.json;
|
|
|
|
programs.ssh = {
|
|
enable = true;
|
|
matchBlocks = {
|
|
"git.cloonar.com" = {
|
|
user = "git";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
identitiesOnly = true;
|
|
};
|
|
"gitlab.epicenter.works" = {
|
|
user = "git";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
identitiesOnly = true;
|
|
};
|
|
"tools.epicenter.works" = {
|
|
user = "root";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/epicenter.id_rsa";
|
|
};
|
|
"*.epicenter.works !tools.epicenter.works" = {
|
|
user = "dominik";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/epicenter.id_rsa";
|
|
};
|
|
"*.dearmep.eu" = {
|
|
user = "root";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/epicenter.id_rsa";
|
|
};
|
|
"*.akvorrat.at" = {
|
|
user = "dominik";
|
|
setEnv = {
|
|
TERM = "xterm-256color";
|
|
};
|
|
identityFile = "/nix/persist/user/dominik/.ssh/epicenter.id_rsa";
|
|
};
|
|
"*.cloonar.com" = {
|
|
user = "root";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
};
|
|
"*.cloonar.smart" = {
|
|
user = "root";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
};
|
|
"*.wsw.at" = {
|
|
user = "wswdpolakovics";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
setEnv = {
|
|
TERM = "xterm-256color";
|
|
};
|
|
};
|
|
"*.nycro.net" = {
|
|
user = "hilgenberg-gmbh.de_kk33i9d2xv"; # prod
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
#user = "hilgenberg.gmbh.de_pci2n5aqzt"; # stage
|
|
setEnv = {
|
|
TERM = "xterm-256color";
|
|
};
|
|
};
|
|
"amz-websrv-01.amz.at" = {
|
|
user = "ebs";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
};
|
|
"u149513.your-backup.de" = {
|
|
user = "u149513";
|
|
identityFile = "/nix/persist/user/dominik/.ssh/id_rsa";
|
|
# user = "u149513-sub2"; # fw.cloonar.com
|
|
port = 23;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|
|
|