From b69d5e8a458d1a93ee026c83031cff13b125c7cc Mon Sep 17 00:00:00 2001 From: Mysaa Java Date: Tue, 2 Sep 2025 14:04:38 +0200 Subject: [PATCH] Updated to nixos-24.05, lot of small config changes --- flake.lock | 22 +-- flake.nix | 4 +- machines/polysaa/default.nix | 9 +- packages/add_passwordcommand_imap.patch | 46 ++--- profiles/basic/default.nix | 2 + profiles/basic/email-filters.nix | 249 ++++++++++++++++++++++++ profiles/basic/email.nix | 83 ++++++++ profiles/basic/git.nix | 6 + profiles/basic/networks/eduroam.nix | 4 +- profiles/basic/ssh.nix | 5 + profiles/graphical/default.nix | 1 + profiles/graphical/kde.nix | 31 +++ profiles/graphical/packages.nix | 73 ++++--- 13 files changed, 461 insertions(+), 74 deletions(-) create mode 100644 profiles/basic/email-filters.nix create mode 100644 profiles/graphical/kde.nix diff --git a/flake.lock b/flake.lock index 3c8f164..311431b 100644 --- a/flake.lock +++ b/flake.lock @@ -25,16 +25,16 @@ ] }, "locked": { - "lastModified": 1747688870, - "narHash": "sha256-ypL9WAZfmJr5V70jEVzqGjjQzF0uCkz+AFQF7n9NmNc=", + "lastModified": 1755928099, + "narHash": "sha256-OILVkfhRCm8u18IZ2DKR8gz8CVZM2ZcJmQBXmjFLIfk=", "owner": "nix-community", "repo": "home-manager", - "rev": "d5f1f641b289553927b3801580598d200a501863", + "rev": "4a44fb9f7555da362af9d499817084f4288a957f", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-24.11", + "ref": "release-25.05", "repo": "home-manager", "type": "github" } @@ -47,11 +47,11 @@ ] }, "locked": { - "lastModified": 1755137362, - "narHash": "sha256-3e/S+Q9InEZ+W1YxjrfjkuVz49IsF2vJZx7Id22RCkY=", + "lastModified": 1756001386, + "narHash": "sha256-QGyQ4kbltilt4Jg6LxaVqwyc7OxAjaDAtdusIW7uL/s=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "547b299dd5b8ddccf948ff6728d7ec547eee4e02", + "rev": "b9fcd22d7cf5bb1cf75e32fc7ecb5df6156ec504", "type": "github" }, "original": { @@ -62,16 +62,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1751274312, - "narHash": "sha256-/bVBlRpECLVzjV19t5KMdMFWSwKLtb5RyXdjz3LJT+g=", + "lastModified": 1755922037, + "narHash": "sha256-wY1+2JPH0ZZC4BQefoZw/k+3+DowFyfOxv17CN/idKs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "50ab793786d9de88ee30ec4e4c24fb4236fc2674", + "rev": "b1b3291469652d5a2edb0becc4ef0246fff97a7c", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.11", + "ref": "nixos-25.05", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index 72d922a..13a2727 100644 --- a/flake.nix +++ b/flake.nix @@ -2,9 +2,9 @@ description = "My common nixos system"; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; - home-manager.url = "github:nix-community/home-manager/release-24.11"; + home-manager.url = "github:nix-community/home-manager/release-25.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions"; diff --git a/machines/polysaa/default.nix b/machines/polysaa/default.nix index 1e579cd..28b2803 100644 --- a/machines/polysaa/default.nix +++ b/machines/polysaa/default.nix @@ -84,5 +84,12 @@ }; boot.kernelParams = [ "i915.force_probe=7d45" ]; - system.stateVersion = "24.11"; + hardware.bluetooth = { + enable = true; + powerOnBoot = true; + # Not experimental, show charge of devices + settings.General.Experimental = true; + }; + + system.stateVersion = "25.05"; } diff --git a/packages/add_passwordcommand_imap.patch b/packages/add_passwordcommand_imap.patch index 0032f6a..8a09d09 100644 --- a/packages/add_passwordcommand_imap.patch +++ b/packages/add_passwordcommand_imap.patch @@ -1,31 +1,25 @@ -diff -x __pycache__ -ru thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.cpp thunderbird/thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.cpp ---- thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.cpp 2025-05-13 15:22:25.000000000 +0200 -+++ thunderbird/thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.cpp 2025-08-21 03:49:50.217872643 +0200 -@@ -41,6 +41,15 @@ - #include "mozilla/Unused.h" - #include "nsIUUIDGenerator.h" - #include "nsIArray.h" +diff -rp1 -u a/comm/mailnews/base/src/nsMsgIncomingServer.cpp b/comm/mailnews/base/src/nsMsgIncomingServer.cpp +--- a/comm/mailnews/base/src/nsMsgIncomingServer.cpp 2025-07-21 18:15:26.000000000 +0200 ++++ b/comm/mailnews/base/src/nsMsgIncomingServer.cpp 2025-08-24 23:18:34.302163372 +0200 +@@ -51,2 +51,11 @@ + +#include "mozilla/SpinEventLoopUntil.h" +#include "nsIProcess.h" +#include "mozilla/RandomNum.h" +#include "nsIServerSocket.h" +#include "nsIAsyncInputStream.h" +#include "nsISocketTransport.h" -+#include "nsIBinaryInputStream.h" +#include "nsIObjectInputStream.h" +#include "nsDirectoryServiceDefs.h" - ++ #define PORT_NOT_SET -1 - -@@ -707,12 +716,241 @@ - return NS_OK; - } +@@ -708,2 +717,218 @@ nsresult nsMsgIncomingServer::GetPasswor +nsresult +nsMsgIncomingServer::GetPasswordCommand(nsTArray &passwordCommand) { -+ nsString serializedCommand; ++ nsAutoCString serializedCommand; + -+ nsresult rv = GetUnicharValue("passwordCommand", serializedCommand); ++ nsresult rv = GetStringValue("passwordCommand", serializedCommand); + NS_ENSURE_SUCCESS(rv, rv); + + if (serializedCommand.Length() == 0) @@ -197,7 +191,8 @@ diff -x __pycache__ -ru thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomin + nsCOMPtr executableFile = + do_CreateInstance("@mozilla.org/file/local;1", &rv); + NS_ENSURE_SUCCESS(rv, rv); -+ executableFile->InitWithPath(executable); ++ rv = executableFile->InitWithPath(executable); ++ NS_ENSURE_SUCCESS(rv, rv); + + nsCOMPtr process = + do_CreateInstance("@mozilla.org/process/util;1", &rv); @@ -237,10 +232,7 @@ diff -x __pycache__ -ru thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomin +} + NS_IMETHODIMP - nsMsgIncomingServer::GetPasswordWithUI(const nsAString& aPromptMessage, - const nsAString& aPromptTitle, - nsAString& aPassword) { - nsresult rv = NS_OK; +@@ -714,2 +939,16 @@ nsMsgIncomingServer::GetPasswordWithUI(c + nsTArray passwordCommand; + rv = GetPasswordCommand(passwordCommand); @@ -257,18 +249,12 @@ diff -x __pycache__ -ru thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomin + } + if (m_password.IsEmpty()) { - // let's see if we have the password in the password manager and - // can avoid this prompting thing. This makes it easier to get embedders -diff -x __pycache__ -ru thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.h thunderbird/thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.h ---- thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.h 2025-05-13 15:22:25.000000000 +0200 -+++ thunderbird/thunderbird-128.10.1/comm/mailnews/base/src/nsMsgIncomingServer.h 2025-08-19 12:39:19.236805257 +0200 -@@ -48,6 +48,9 @@ - nsCString m_serverKey; - bool m_hasShutDown; +diff -rp1 -u a/comm/mailnews/base/src/nsMsgIncomingServer.h b/comm/mailnews/base/src/nsMsgIncomingServer.h +--- a/comm/mailnews/base/src/nsMsgIncomingServer.h 2025-07-21 18:15:26.000000000 +0200 ++++ b/comm/mailnews/base/src/nsMsgIncomingServer.h 2025-08-24 19:21:59.609543392 +0200 +@@ -50,2 +50,5 @@ class nsMsgIncomingServer : public nsIMs + nsresult GetPasswordCommand(nsTArray &passwordCommand); + nsresult RunPasswordCommand(nsTArray &passwordCommand, nsAString& password); + // Sets m_password, if password found. Can return NS_ERROR_ABORT if the - // user cancels the master password dialog. - nsresult GetPasswordWithoutUI(); diff --git a/profiles/basic/default.nix b/profiles/basic/default.nix index 2854b67..4d8a8d5 100644 --- a/profiles/basic/default.nix +++ b/profiles/basic/default.nix @@ -13,6 +13,7 @@ ./locale.nix ./ssh.nix ./email.nix + ./email-filters.nix ./git.nix ]; @@ -36,6 +37,7 @@ ); # Set your time zone. + #time.timeZone = "Europe/Paris"; time.timeZone = "Europe/Paris"; # Configure network proxy if necessary diff --git a/profiles/basic/email-filters.nix b/profiles/basic/email-filters.nix new file mode 100644 index 0000000..4b9b94a --- /dev/null +++ b/profiles/basic/email-filters.nix @@ -0,0 +1,249 @@ +{config, pkgs, lib, ...}: + let + filterToString = (f: + if builtins.isString f + then "(all addresses,contains,${f})" + else if builtins.isList f + then "OR "+(lib.strings.concatStringsSep " OR " (builtins.map filterToString f)) + else builtins.throw "Wrong filter content" + ); + convertFilters = (filz: builtins.map (fil: { + enabled = true; + type = "17"; + name = "Moving emails to folder "+fil.folder; + action = "Move to folder"; + actionValue = "imap://mysaa%40hadoly.fr@imap.hadoly.fr/"+(fil.folderEscaped or fil.folder); + condition = filterToString fil.email; + }) filz); + restFilter = (out: { + enabled = true; + type = "17"; + name = "Moving other emails to "+out; + action = "Move to folder"; + actionValue = "imap://mysaa%40hadoly.fr@imap.hadoly.fr/INBOX/"+out; + condition = "ALL"; + }); + rules = [ + { + folder = "Assos/AliENS"; + email = [ + "aliens.discussion@ens-lyon.fr" + "aliens.discussion@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/AliENS/CA"; + email = [ + "aliens.ca@ens-lyon.fr" + "aliens.ca@listes.ens-lyon.fr" + "aliens.contact@ens-lyon.fr" + "aliens.contact@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/BuL/Murders"; + email = [ + "bul.murder.decouverte@ens-lyon.fr" + "bul.murder.decouverte@listes.ens-lyon.fr" + "bul.murder@ens-lyon.fr" + "bul.murder@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/Démesures"; + folderEscaped = "Assos/D&AOk-mesures"; + email = [ + "demesures@ens-lyon.fr" + "demesures@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/Diffs"; + email = [ + "fede.diffusion@ens-lyon.fr" + "fede.diffusion@listes.ens-lyon.fr" + "info.elus.etudiants@ens-lyon.fr" + "info.elus.etudiants@listes.ens-lyon.fr" + "bde.diffusion@ens-lyon.fr" + "bde.diffusion@listes.ens-lyon.fr" + "bul.diffusion@ens-lyon.fr" + "bul.diffusion@listes.ens-lyon.fr" + "enverts.diffusion@ens-lyon.fr" + "enverts.diffusion@listes.ens-lyon.fr" + "trensistor.diffusion@ens-lyon.fr" + "trensistor.diffusion@listes.ens-lyon.fr" + "aliens.diffusion@ens-lyon.fr" + "aliens.diffusion@listes.ens-lyon.fr" + "bde.kfet.diffusion@ens-lyon.fr" + "bde.kfet.diffusion@listes.ens-lyon.fr" + "as-ensl@ens-lyon.fr" + "as-ensl@listes.ens-lyon.fr" + "bde.foyer@ens-lyon.fr" + "bde.foyer@listes.ens-lyon.fr" + "asset.diffusion@ens-lyon.fr" + "asset.diffusion@listes.ens-lyon.fr" + "echarde.diffusion@framalistes.org" + "echarde.membres@framalistes.org" + "enverts.enselle@ens-lyon.fr" + "enverts.enselle@listes.ens-lyon.fr" + "enverts.engraines.descartes@ens-lyon.fr" + "enverts.engraines.monod@listes.ens-lyon.fr" + "discourse+noreply@openstreetmap.fr" + "grrrndzero@grrrndzero.org" + "info@cinefac.fr" + ]; + } + { + folder = "Assos/ENSeigner"; + email = [ + "enseigner.tuteurices@ens-lyon.fr" + "enseigner.tuteurices@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/ENvertS"; + email = [ + "enverts.bureau@ens-lyon.fr" + "enverts.bureau@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/ENvertS/Framavox"; + email = [ + "notifications@framavox.org" + ]; + } + { + folder = "Assos/Fédé"; + folderEscaped = "Assos/F&AOk-d&AOk-"; + email = [ + "fede.ca@ens-lyon.fr" + "fede.ca@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/Fédé/Art Total"; + folderEscaped = "Assos/F&AOk-d&AOk-/Art Total"; + email = [ + "fede.art-total@ens-lyon.fr" + "fede.art-total@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/Fédé/Bureau"; + folderEscaped = "Assos/F&AOk-d&AOk-/Bureau"; + email = [ + "federation@ens-lyon.fr" + "federation@listes.ens-lyon.fr" + "fede.communications@ens-lyon.fr" + ]; + } + { + folder = "Assos/Fédé/Informatique"; + folderEscaped = "Assos/F&AOk-d&AOk-/Informatique"; + email = [ + "fede.informatique@ens-lyon.fr" + "fede.informatique@listes.ens-lyon.fr" + ]; + } + + { + folder = "Assos/Fédé/Juridique"; + folderEscaped = "Assos/F&AOk-d&AOk-/Juridique"; + email = [ + "fede.juridique@ens-lyon.fr" + "fede.juridique@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/Modération"; + folderEscaped = "Assos/Mod&AOk-ration"; + email = [ + "sympa@listes.ens-lyon.fr" + ]; + } + { + folder = "Assos/tous-spam"; + email = [ + "tous.ens@ens-lyon.fr" + "tous.ens@listes.ens-lyon.fr" + "tous.culture@ens-lyon.fr" + "tous.culture@listes.ens-lyon.fr" + "tous.manifestations.scientifiques@ens-lyon.fr" + "tous.manifestations.scientifiques@listes.ens-lyon.fr" + "tous.etudiants@ens-lyon.fr" + "tous.etudiants@listes.ens-lyon.fr" + "tous.normaliens-eleves@ens-lyon.fr" + "tous.normaliens-eleves@listes.ens-lyon.fr" + "culture@ens-lyon.fr" + "culture@listes.ens-lyon.fr" + "information.patrimoine@ens-lyon.fr" + "information.patrimoine@listes.ens-lyon.fr" + "tous.transition.ecologique@ens-lyon.fr" + "tous.transition.ecologique@listes.ens-lyon.fr" + "manifestations.ife@ens-lyon.fr" + "manifestations.ife@listes.ens-lyon.fr" + "cercc@ens-lyon.fr" + "cercc@listes.ens-lyon.fr" + "info.syndicat.cgt@ens-lyon.fr" + "info.syndicat.cgt@listes.ens-lyon.fr" + "info.syndicat.sud@ens-lyon.fr" + "info.syndicat.sud@listes.ens-lyon.fr" + "info.syndicat.cfdt@ens-lyon.fr" + "info.syndicat.cfdt@listes.ens-lyon.fr" + "info.syndicat.snesup-fsu@ens-lyon.fr" + "info.syndicat.snesup-fsu@listes.ens-lyon.fr" + "info.syndicat.sud@ens-lyon.fr" + "info.syndicat.sud@listes.ens-lyon.fr" + "newsletter@national.lescrous.fr" + "infos@national.lescrous.fr" + ]; + } + { + folder = "Notif"; + email = [ + "nepasrepondre@credit-cooperatif.coop" + "noreply@github.com" + "no-reply@twitch.tv" + "ne_pas_repondre@sfr.fr" + "expiry@letsencrypt.org" + "info@mail.sncfconnect.com" + "service@paypal.fr" + "purchase-noreply@twitch.tv" + "no-reply@doctolib.fr" + "no-reply@canva.com" + "notifications@transifex.com" + "ne-pas-repondre@inscriptionelectorale.service-public.fr" + "noreply@steampowered.com" + "noreply@connect.sncf" + "no-reply@spotify.com" + "messagerie.leboncoin.fr" + "no.reply@leboncoin.fr" + "nepasrepondre-filesender@renater.fr" + "gitlab@aliens-lyon.fr" + "postman@ulule.com" + "no-reply@accounts.google.com" + "notifications@discord.com" + "help@acct.epicgames.com" + ]; + } + { + folder = "Etudes"; + email = [ + "types-announce@lists.seas.upenn.edu" + "categories@mq.edu.au" + "ice@framalistes.org" + "cashreadinggroup@listes.ens-lyon.fr" + ]; + } + ]; + in { + home-manager.users.mysaa.accounts.email.accounts = { + personal.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "s@nc") ]; + ens.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "ENS-Lyon") ]; + junk.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "q@nc") ]; + google.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "Google") ]; + ecloud.thunderbird.messageFilters = convertFilters rules ++ [ (restFilter "ECloud") ]; + hadoly.thunderbird.messageFilters = [ (restFilter "Hadoly") ]; + }; +} diff --git a/profiles/basic/email.nix b/profiles/basic/email.nix index 96bb644..f8c7c58 100644 --- a/profiles/basic/email.nix +++ b/profiles/basic/email.nix @@ -29,6 +29,18 @@ ens = { address = "samy.avrillon@ens-lyon.fr"; + realName = "Samy Avrillon"; + imap = { + host = "imaps.ens-lyon.fr"; + port = 993; + tls.enable = true; + }; + smtp = { + host = "smtp.ens-lyon.fr"; + port = 587; + tls.enable = true; + }; + userName = "savrillo"; }; personal = { @@ -50,11 +62,82 @@ junk = { address = "qqnavrillon@netcourrier.com"; + realName = "Qqn Avrillon"; + imap = { + host = "mail.mailo.com"; + port = 993; + tls.enable = true; + }; + smtp = { + host = "mail.mailo.com"; + port = 465; + tls.enable = true; + }; + userName = "qqnavrillon@netcourrier.com"; }; google = { address = "samsouleavr@gmail.com"; + realName = "Samsoule Avr"; + imap = { + host = "imap.gmail.com"; + port = 993; + tls.enable = true; + }; + smtp = { + host = "smtp.gmail.com"; + port = 587; + tls.enable = true; + }; + userName = "samsouleavr@gmail.com"; }; + bernard = { + address = "bernard.lafayette63@gmail.com"; + realName = "Bernard Lafayette"; + imap = { + host = "imap.gmail.com"; + port = 993; + tls.enable = true; + }; + smtp = { + host = "imap.gmail.com"; + port = 465; + tls.enable = true; + }; + userName = "bernard.lafayette63@gmail.com"; + }; + dmesures = { + address = "samy.avrillon@dmesures.eu"; + realName = "Samy pour Démesures"; + imap = { + host = "mail.deady.space"; + port = 993; + tls.enable = true; + }; + smtp = { + host = "mail.deady.space"; + port = 465; + tls.enable = true; + }; + userName = "samy.avrillon@dmesures.eu"; + }; + ecloud = { + address = "mysaa@e.email"; + realName = "Mysaa Java"; + imap = { + host = "mail.ecloud.global"; + port = 993; + tls.enable = true; + }; + smtp = { + host = "mail.ecloud.global"; + port = 587; + tls.enable = true; + tls.useStartTls = true; + }; + userName = "mysaa@e.email"; + }; + }; diff --git a/profiles/basic/git.nix b/profiles/basic/git.nix index 6661edf..02ea668 100644 --- a/profiles/basic/git.nix +++ b/profiles/basic/git.nix @@ -16,6 +16,12 @@ aliases = { l = "log --oneline --graph"; }; + + extraConfig = { + init.defaultBranch = "main"; + # TODO remove that, as it is a fix of https://github.com/input-output-hk/haskell.nix/issues/2214 but for coq-nix-toolbox + safe.directory = "*"; + }; }; } diff --git a/profiles/basic/networks/eduroam.nix b/profiles/basic/networks/eduroam.nix index f6e81ef..adb5ebc 100644 --- a/profiles/basic/networks/eduroam.nix +++ b/profiles/basic/networks/eduroam.nix @@ -2,7 +2,7 @@ eduroam-IPv6only = { "802-1x" = { anonymous-identity = "anonymous@ens-lyon.fr"; - ca-cert = "/usr/share/ca-certificates/mozilla/USERTrust_RSA_Certification_Authority.crt"; + ca-cert = "/etc/ssl/certs/ca-certificates.crt"; domain-suffix-match = "ens-lyon.fr"; eap = "peap"; identity = "savrillo@ens-lyon.fr"; @@ -37,7 +37,7 @@ eduroam = { "802-1x" = { anonymous-identity = "anonymous@ens-lyon.fr"; - ca-cert = "/etc/ssl/certs/USERTrust_RSA_Certification_Authority.pem"; + ca-cert = "/etc/ssl/certs/ca-certificates.crt"; domain-suffix-match = "ens-lyon.fr"; eap = "peap"; identity = "savrillo@ens-lyon.fr"; diff --git a/profiles/basic/ssh.nix b/profiles/basic/ssh.nix index 86b460d..8a14d4a 100644 --- a/profiles/basic/ssh.nix +++ b/profiles/basic/ssh.nix @@ -31,6 +31,11 @@ Port 6962 ConnectTimeout 10 AddressFamily inet + + Host gitlab.aliens-lyon.fr + HostName gitlab.aliens-lyon.fr + User savrillo + IdentityFile /run/secrets/ssh/savrillo@gitlab.ens-lyon.fr ''; }; diff --git a/profiles/graphical/default.nix b/profiles/graphical/default.nix index 3b420dc..f5b9ea2 100644 --- a/profiles/graphical/default.nix +++ b/profiles/graphical/default.nix @@ -10,6 +10,7 @@ { imports = [ ../basic + ./kde.nix ./packages.nix ]; diff --git a/profiles/graphical/kde.nix b/profiles/graphical/kde.nix new file mode 100644 index 0000000..f1eaa1d --- /dev/null +++ b/profiles/graphical/kde.nix @@ -0,0 +1,31 @@ +{ + config, + lib, + pkgs, + ... +}: +{ + + environment.plasma6.excludePackages = with pkgs.kdePackages; [ + elisa + ]; + + home-manager.users.mysaa.home.file.".config/kdeglobals".text = lib.generators.toINI {} { + KDE = { + SingleClick = true; + }; + }; + + home-manager.users.mysaa.services.kdeconnect.enable = true; + # We open kdeconnect ports + networking.firewall = rec { + allowedTCPPortRanges = [ + { + from = 1714; + to = 1764; + } + ]; + allowedUDPPortRanges = allowedTCPPortRanges; + }; + +} diff --git a/profiles/graphical/packages.nix b/profiles/graphical/packages.nix index b271288..2186733 100644 --- a/profiles/graphical/packages.nix +++ b/profiles/graphical/packages.nix @@ -10,10 +10,6 @@ discord ]; - environment.plasma6.excludePackages = with pkgs.kdePackages; [ - elisa - ]; - home-manager.users.mysaa.home.packages = with pkgs; [ firefox vlc @@ -32,28 +28,37 @@ #hyphenDicts.fr_FR hyphenDicts.en_US hyphenDicts.de_DE + heroic + spotify + kdiff3 ]; programs.steam.enable = true; - home-manager.users.mysaa.services.kdeconnect.enable = true; - # We open kdeconnect ports - networking.firewall = rec { - allowedTCPPortRanges = [ - { - from = 1714; - to = 1764; - } - ]; - allowedUDPPortRanges = allowedTCPPortRanges; + home-manager.users.mysaa.accounts.email.accounts = { + "hadoly".thunderbird.enable = true; + "personal".thunderbird.enable = true; + "ens".thunderbird.enable = true; + "junk".thunderbird.enable = true; + "google".thunderbird.enable = true; + "bernard".thunderbird.enable = true; + "dmesures".thunderbird.enable = true; + "ecloud".thunderbird.enable = true; }; - - home-manager.users.mysaa.accounts.email.accounts."hadoly".thunderbird.enable = true; - home-manager.users.mysaa.accounts.email.accounts."personal".thunderbird.enable = true; home-manager.users.mysaa.programs.thunderbird = { enable = true; profiles.default = { isDefault = true; + accountsOrder = [ + "hadoly" + "dmesures" + "bernard" + "ens" + "personal" + "junk" + "ecloud" + "google" + ]; settings = { } // lib.attrsets.concatMapAttrs ( @@ -63,7 +68,8 @@ id = builtins.hashString "sha256" account.name; command = lib.concatStringsSep " " account.passwordCommand; passwordScript = pkgs.writeShellScript "get-password.sh" '' - ${command} | tr -d $'\n' | ${pkgs.netcat}/bin/nc -w 0 -U $1 + echo "Got command $1" >> /tmp/thunderpasswordget + ${command} | ${pkgs.netcat}/bin/nc -w 0 -U $1 ''; in lib.optionalAttrs (account.smtp != null) { @@ -77,14 +83,25 @@ }; }; - home-manager.users.mysaa.nixpkgs.overlays = [ - (final: prev: { - thunderbird-unwrapped = prev.thunderbird-unwrapped.overrideAttrs { - patches = (prev.thunderbird-unwrapped.patches or [ ]) ++ [ - ../../packages/add_passwordcommand_smtp.patch - ../../packages/add_passwordcommand_imap.patch - ]; - }; - }) - ]; +# home-manager.users.mysaa.nixpkgs.overlays = [ +# (final: prev: { +# thunderbird-unwrapped = prev.thunderbird-unwrapped.overrideAttrs { +# patches = (prev.thunderbird-unwrapped.patches or [ ]) ++ [ +# ../../packages/add_passwordcommand_smtp.patch +# ../../packages/add_passwordcommand_imap.patch +# ]; +# }; +# }) +# ]; + + home-manager.users.mysaa.programs.keepassxc.settings = { + General.NumberOfRememberedLastDatabases = 1; + General.UseAtomicSaves = false; + Browser.Enabled = true; + Browser.AlwaysAllowAccess = true; + Browser.MatchUrlScheme = false; + GUI.MinimizeOnStartup = true; + GUI.ShowExpiredEntriesOnDatabaseUnlock = false; + PasswordGenerator.Length = 24; + }; }