Compare commits
18 commits
2b0e8a8669
...
8444c21eb3
| Author | SHA1 | Date | |
|---|---|---|---|
| 8444c21eb3 | |||
| e2d0b5461b | |||
| f22c0776b5 | |||
| 51651c6f1d | |||
| 5c3d8fa773 | |||
| 450974b97c | |||
| 7da795c53f | |||
| be8f7e6299 | |||
| a46a68a8b0 | |||
| f9821001ab | |||
| a0531b75ac | |||
| cc3657e753 | |||
| 4d77f320a6 | |||
| 15c81b97d5 | |||
| 029db9ae08 | |||
| fb848d40d7 | |||
| 786a8cb186 | |||
| 3c6a5f3ee2 |
11 changed files with 1155 additions and 76 deletions
364
afew.config
Normal file
364
afew.config
Normal file
|
|
@ -0,0 +1,364 @@
|
||||||
|
[SpamFilter]
|
||||||
|
|
||||||
|
[KillThreadsFilter]
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.1]
|
||||||
|
header = List-Id
|
||||||
|
pattern = main.agoranomic.groups.io
|
||||||
|
tags = +lists;+lists/agora-main-backup
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.2]
|
||||||
|
header = From
|
||||||
|
pattern = .*@noreply-pole-emploi.fr
|
||||||
|
tags = +lists;+lists/france-travail
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.3]
|
||||||
|
header = From
|
||||||
|
pattern = .*@stopkillinggames.com
|
||||||
|
tags = +lists;+lists/stop-killing-games
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.4]
|
||||||
|
header = From
|
||||||
|
pattern = newsletter@factorio.com
|
||||||
|
tags = +lists;+lists/factorio
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.5]
|
||||||
|
header = From
|
||||||
|
pattern = .*change.org
|
||||||
|
tags = +lists;+lists/change.org
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.6]
|
||||||
|
header = From
|
||||||
|
pattern = .*ea.com
|
||||||
|
tags = +lists;+lists/ea.com
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.7]
|
||||||
|
header = From
|
||||||
|
pattern = .*@roleplayingtips.com
|
||||||
|
tags = +lists;+lists/role-playing-tips
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.8]
|
||||||
|
header = From
|
||||||
|
pattern = .*@noreply.openstreetmap.org
|
||||||
|
tags = +lists;+lists/openstreetmap
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.9]
|
||||||
|
header = From
|
||||||
|
pattern = no-reply@(?P<section>.*).google.com
|
||||||
|
tags = +lists;+lists/google/{section}
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.10]
|
||||||
|
header = From
|
||||||
|
pattern = .*@welcometothejungle.com
|
||||||
|
tags = +lists;+lists/welcometothejungle
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.11]
|
||||||
|
header = From
|
||||||
|
pattern = .*@.*edenred.fr
|
||||||
|
tags = +lists;+lists/edenred
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.12]
|
||||||
|
header = From
|
||||||
|
pattern = .*@cnam-auvergnerhonealpes.com
|
||||||
|
tags = +lists;+lists/cnam;+lists/cnam/auvergnerhonealpes
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.13]
|
||||||
|
header = From
|
||||||
|
pattern = .*@.*.sncf.com
|
||||||
|
tags = +lists;+lists/sncf
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.14]
|
||||||
|
header = From
|
||||||
|
pattern = newsletters@trainzportal.com
|
||||||
|
tags = +lists;+lists/trainz
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.15]
|
||||||
|
header = From
|
||||||
|
pattern = .*@.*.xbox.com
|
||||||
|
tags = +lists;+lists/xbox
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.16]
|
||||||
|
header = From
|
||||||
|
pattern = jlfwong
|
||||||
|
tags = +lists;+lists/jlfwong
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.17]
|
||||||
|
header = From
|
||||||
|
pattern = noreply@webforce.life
|
||||||
|
tags = +lists;+lists/webforce3;+project/webforce3
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.18]
|
||||||
|
header = From
|
||||||
|
pattern = infoemploi@wf3.fr
|
||||||
|
tags = +lists;+lists/webforce3;+project/webforce3
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.19]
|
||||||
|
header = From
|
||||||
|
pattern = informatique@bm-grenoble.fr
|
||||||
|
tags = +lists;+lists/bibliotheques;+lists/bibliotheques/grenoble
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.20]
|
||||||
|
header = List-Id
|
||||||
|
pattern = public.listes.alolise.org
|
||||||
|
tags = +lists;+lists/alolise
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.21]
|
||||||
|
header = From
|
||||||
|
pattern = mail@typst.app
|
||||||
|
tags = +lists;+lists/typst
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.22]
|
||||||
|
header = From
|
||||||
|
pattern = noreply@discourse.doomemacs.org
|
||||||
|
tags = +lists;+lists/discourse;+lists/discours/doomemacs;+lists/doomemacs
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.23]
|
||||||
|
header = From
|
||||||
|
pattern = comic@mailing.xkcd.com
|
||||||
|
tags = +lists;+lists/comic;+lists/comic/xkcd
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.24]
|
||||||
|
header = From
|
||||||
|
pattern = info@info.alternatives-economiques.fr
|
||||||
|
tags = +lists;+lists/alternatives-economiques
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.25]
|
||||||
|
header = From
|
||||||
|
pattern = Email@CGPGrey.com
|
||||||
|
tags = +lists;+lists/cgp-grey
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.26]
|
||||||
|
header = From
|
||||||
|
pattern = roguelikecelebration@gmail.com
|
||||||
|
tags = +lists;+lists/roguelikecelebration
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.27]
|
||||||
|
header = From
|
||||||
|
pattern = googlealerts-noreply@google.com
|
||||||
|
tags = +lists;+lists/google/alerts
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.28]
|
||||||
|
header = List-Id
|
||||||
|
pattern = pmpc.community-emails.fsfe.org
|
||||||
|
tags = +lists;+lists/fsfe
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.29]
|
||||||
|
header = List-ID
|
||||||
|
pattern = logins.wakatime.com
|
||||||
|
tags = +lists;+lists/wakatime
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.30]
|
||||||
|
header = List-ID
|
||||||
|
pattern = end.of.year.report.wakatime.com
|
||||||
|
tags = +lists;+lists/wakatime
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.31]
|
||||||
|
header = List-Id
|
||||||
|
pattern = updates.wakatime.com
|
||||||
|
tags = +lists;+lists/wakatime
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.32]
|
||||||
|
header = From
|
||||||
|
pattern = do-no-reply@thangs.com
|
||||||
|
tags = +lists;+lists/thangs
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.33]
|
||||||
|
header = From
|
||||||
|
pattern = tinyprojectsdev@gmail.com
|
||||||
|
tags = +lists;+lists/tinyprojectsdev
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.34]
|
||||||
|
header = Subject
|
||||||
|
pattern = yearly.*report
|
||||||
|
tags = +report/yearly
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.35]
|
||||||
|
header = From
|
||||||
|
pattern = notifications@artstation.com
|
||||||
|
tags = +lists;+lists/artstation
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.36]
|
||||||
|
header = List-Id
|
||||||
|
pattern = troll.breizh-entropy.org
|
||||||
|
tags = +lists;+lists/breizh-entropy;+lists/breizh-entropy/troll
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.37]
|
||||||
|
header = From
|
||||||
|
pattern = robert@stuffwithstuff.com
|
||||||
|
tags = +lists;+lists/stuffwithstuff
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.38]
|
||||||
|
header = From
|
||||||
|
pattern = email@engage.windows.com
|
||||||
|
tags = +lists;+lists/microsoft
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.39]
|
||||||
|
header = From
|
||||||
|
pattern = support@worldbrain.io
|
||||||
|
tags = +lists;+lists/worldbrain;+lists/memex
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.40]
|
||||||
|
header = From
|
||||||
|
pattern = .*@.*mozilla.org
|
||||||
|
tags = +lists;+lists/mozilla
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.41]
|
||||||
|
header = From
|
||||||
|
pattern = googleaccount-noreply@google.com
|
||||||
|
tags = +lists;+lists/google/accounts
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.42]
|
||||||
|
header = From
|
||||||
|
pattern = .*@augobelinfarci.com
|
||||||
|
tags = +lists;+lists/gobelin-farci
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.43]
|
||||||
|
header = From
|
||||||
|
pattern = .*@pragmaticengineer.com
|
||||||
|
tags = +lists;+lists/pragmatic-engineer
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.44]
|
||||||
|
header = From
|
||||||
|
pattern = no-reply@youtube.com
|
||||||
|
tags = +lists;+lists/google/youtube
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.45]
|
||||||
|
header = From
|
||||||
|
pattern = .*@.*.cned.fr
|
||||||
|
tags = +lists;+lists/cned
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.46]
|
||||||
|
header = From
|
||||||
|
pattern = robert@lord.io
|
||||||
|
tags = +lists;+lists/lord
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.47]
|
||||||
|
header = From
|
||||||
|
pattern = crowdsource-noreply@google.com
|
||||||
|
tags = +lists;+lists/google/crowdsource
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.48]
|
||||||
|
header = From
|
||||||
|
pattern = .*@actux.eu.org
|
||||||
|
tags = +lists;+lists/actux
|
||||||
|
|
||||||
|
[HeaderMatchingFilter.49]
|
||||||
|
header = List-Id
|
||||||
|
pattern = annonces.breizh-entropy.org
|
||||||
|
tags = +lists;+lists/breizh-entropy;+lists/breizh-entropy/annonces
|
||||||
|
|
||||||
|
[ListMailsFilter]
|
||||||
|
|
||||||
|
[ArchiveSentMailsFilter]
|
||||||
|
|
||||||
|
[Filter.0]
|
||||||
|
message = Confirmation Codes
|
||||||
|
query = subject:"confirmation code"
|
||||||
|
tags = +confirmation-code
|
||||||
|
|
||||||
|
[Filter.1]
|
||||||
|
message = Agora mail does not belong in the inbox
|
||||||
|
query = tag:(lists/agora-business lists/agora-official lists/agora-discussion)
|
||||||
|
tags = -new
|
||||||
|
|
||||||
|
[Filter.2]
|
||||||
|
message = Someone signed in to your account
|
||||||
|
query = body:"Quelqu'un s'est connecté à votre compte"
|
||||||
|
tags = +notification;+notification/signin
|
||||||
|
|
||||||
|
[Filter.3]
|
||||||
|
message = Roguelike Celebration
|
||||||
|
query = from:"Roguelike Celebration"
|
||||||
|
tags = +lists;+lists/roguelikecelebration
|
||||||
|
|
||||||
|
[Filter.4]
|
||||||
|
message = Doctolib
|
||||||
|
query = from:no-reply@doctolib.fr
|
||||||
|
tags = +lists;+lists/doctolib;+medical
|
||||||
|
|
||||||
|
[Filter.5]
|
||||||
|
message = Appointment Confirmed
|
||||||
|
query = subject:"RDV confirme"
|
||||||
|
tags = +appointment;+notification/appointment;+notification
|
||||||
|
|
||||||
|
[Filter.6]
|
||||||
|
message = Linkedin
|
||||||
|
query = from:.*@linkedin.com
|
||||||
|
tags = +lists;+lists/linkedin;+subject:jobsearch
|
||||||
|
|
||||||
|
[Filter.7]
|
||||||
|
message = Linkedin Invitation
|
||||||
|
query = from:invitations@linkedin.com
|
||||||
|
tags = +notification/linkedin/connection-request;+notification
|
||||||
|
|
||||||
|
[Filter.8]
|
||||||
|
message = Bandcamp
|
||||||
|
query = from:noreply@bandcamp.com AND subject:"New release from"
|
||||||
|
tags = +notification/bandcamp/new-release;+notification;+lists;+lists/bandcamp
|
||||||
|
|
||||||
|
[Filter.9]
|
||||||
|
message = BorgBase
|
||||||
|
query = from:support@borgbase.com
|
||||||
|
tags = +lists;+lists/borgbase
|
||||||
|
|
||||||
|
[Filter.10]
|
||||||
|
message = BorgBase Monthly Report
|
||||||
|
query = from:support@borgbase.com AND subject:"Your monthly backup report"
|
||||||
|
tags = +report/borgbase/monthly
|
||||||
|
|
||||||
|
[Filter.11]
|
||||||
|
message = Derin Edala
|
||||||
|
query = to:khais.colin+ttou@gmail.com
|
||||||
|
tags = +lists;+lists/derin-edala
|
||||||
|
|
||||||
|
[Filter.12]
|
||||||
|
message = Charlie MacNamera
|
||||||
|
query = body:https://derinstories.com/2024/05/26/1-fuck-photography/ AND to:khais.colin+ttou@gmail.com AND tag:lists/derin-edala
|
||||||
|
tags = +stories;+stories/charlie-macnamera
|
||||||
|
|
||||||
|
[Filter.13]
|
||||||
|
message = Amazon
|
||||||
|
query = from:.*@amazon.fr
|
||||||
|
tags = +lists;+lists/amazon
|
||||||
|
|
||||||
|
[Filter.14]
|
||||||
|
message = Amazon Confirmation commande
|
||||||
|
tags = +notification;+notification/amazon;+notification/amazon/command-confirmation
|
||||||
|
query = from:confirmation-commande@amazon.fr
|
||||||
|
|
||||||
|
[Filter.15]
|
||||||
|
message = New documents
|
||||||
|
tags = +task;+task/archive-document
|
||||||
|
query = subject:"Nouveaux documents partagés" subject:"Un document a été ajouté dans votre espace"
|
||||||
|
|
||||||
|
[Filter.16]
|
||||||
|
message = From me
|
||||||
|
tags = +me
|
||||||
|
query = from:khais.colin@gmail.com from:kh.col@orange.fr from:logistic-bot@protonmail.com from:khais.colin@alolise.org
|
||||||
|
|
||||||
|
[Filter.17]
|
||||||
|
message = 42 Le Havre
|
||||||
|
tags = +lists;+lists/42lehavre
|
||||||
|
query = from:no-reply@42lehavre.fr from:login@42lehavre.fr
|
||||||
|
|
||||||
|
[Filter.18]
|
||||||
|
message = 42 event registration
|
||||||
|
tags = +notification;+notification/42lehavre;+notification/42lehavre/event/registration
|
||||||
|
query = from:no-reply@42lehavre.fr AND subject:"/^Inscription to.*/"
|
||||||
|
|
||||||
|
[Filter.19]
|
||||||
|
message = 42 intra login
|
||||||
|
tags = +notification;+notification/42lehavre;+notification/42lehavre/intra/login
|
||||||
|
query = from:login@42lehavre.fr AND subject:"/^\[INTRA\]\[Sign In\] You signed in from.*/"
|
||||||
|
|
||||||
|
[Filter.1000]
|
||||||
|
message = new tasks are todo
|
||||||
|
query = tag:task AND tag:new
|
||||||
|
tags = +todo
|
||||||
|
|
||||||
|
[Filter.2000]
|
||||||
|
message = TEMP: Currently not reading derin edala stories
|
||||||
|
query = tag:lists/derin-edala
|
||||||
|
tags = -new
|
||||||
|
|
||||||
|
[InboxFilter]
|
||||||
11
common.nix
11
common.nix
|
|
@ -43,6 +43,9 @@
|
||||||
# You can disable this if you're only using the Wayland session.
|
# You can disable this if you're only using the Wayland session.
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
|
|
||||||
|
# emable xmonad
|
||||||
|
services.xserver.windowManager.xmonad.enable = true;
|
||||||
|
|
||||||
# Enable the KDE Plasma Desktop Environment.
|
# Enable the KDE Plasma Desktop Environment.
|
||||||
services.displayManager.sddm.enable = true;
|
services.displayManager.sddm.enable = true;
|
||||||
services.desktopManager.plasma6.enable = true;
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
|
@ -91,7 +94,7 @@
|
||||||
initialPassword = "asunarovow";
|
initialPassword = "asunarovow";
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "Khaïs COLIN";
|
description = "Khaïs COLIN";
|
||||||
extraGroups = ["networkmanager" "wheel" "podman" "libvirtd" "music" "cdrom"];
|
extraGroups = ["networkmanager" "wheel" "podman" "libvirtd" "music" "cdrom" "scanner" "lp"];
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
};
|
};
|
||||||
# access to /pile/Music
|
# access to /pile/Music
|
||||||
|
|
@ -263,6 +266,7 @@
|
||||||
# enable hardware acceleration for qemu
|
# enable hardware acceleration for qemu
|
||||||
virtualisation.libvirtd.enable = true;
|
virtualisation.libvirtd.enable = true;
|
||||||
programs.virt-manager.enable = true;
|
programs.virt-manager.enable = true;
|
||||||
|
virtualisation.spiceUSBRedirection.enable = true;
|
||||||
|
|
||||||
services.syncthing = {
|
services.syncthing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -325,5 +329,10 @@
|
||||||
serviceConfig.ExecStart = "${pkgs.bluez}/bin/mpris-proxy";
|
serviceConfig.ExecStart = "${pkgs.bluez}/bin/mpris-proxy";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# scanner
|
||||||
|
# https://nixos.wiki/wiki/Scanners
|
||||||
|
hardware.sane.enable = true;
|
||||||
|
hardware.sane.drivers.scanSnap.enable = true;
|
||||||
|
|
||||||
home-manager.backupFileExtension = "backup";
|
home-manager.backupFileExtension = "backup";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -136,7 +136,7 @@
|
||||||
;;gdscript ; the language you waited for
|
;;gdscript ; the language you waited for
|
||||||
;;(go +lsp) ; the hipster dialect
|
;;(go +lsp) ; the hipster dialect
|
||||||
;;(graphql +lsp) ; Give queries a REST
|
;;(graphql +lsp) ; Give queries a REST
|
||||||
;;(haskell +lsp) ; a language that's lazier than I am
|
(haskell +lsp) ; a language that's lazier than I am
|
||||||
;;hy ; readability of scheme w/ speed of python
|
;;hy ; readability of scheme w/ speed of python
|
||||||
;;idris ; a language you can depend on
|
;;idris ; a language you can depend on
|
||||||
;;json ; At least it ain't XML
|
;;json ; At least it ain't XML
|
||||||
|
|
@ -178,7 +178,7 @@
|
||||||
|
|
||||||
:email
|
:email
|
||||||
;;(mu4e +org +gmail)
|
;;(mu4e +org +gmail)
|
||||||
;;notmuch
|
(notmuch +org +afew)
|
||||||
;;(wanderlust +gmail)
|
;;(wanderlust +gmail)
|
||||||
|
|
||||||
:app
|
:app
|
||||||
|
|
|
||||||
77
filters.notmuch
Normal file
77
filters.notmuch
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
## lists
|
||||||
|
|
||||||
|
# agora
|
||||||
|
+lists +lists/agora-main-backup -- tag:new to:main@agoranomic.groups.io
|
||||||
|
|
||||||
|
# france travail
|
||||||
|
+lists +lists/france-travail -- tag:new from:.*@noreply-pole-emploi.fr
|
||||||
|
|
||||||
|
# stop killing games
|
||||||
|
+lists +lists/stop-killing-games -- tag:new from:.*@stopkillinggames.com
|
||||||
|
|
||||||
|
# factorio
|
||||||
|
+lists +lists/factorio -- tag:new from:newsletter@factorio.com
|
||||||
|
|
||||||
|
# change.org
|
||||||
|
+lists +lists/change.org -- tag:new from:.*@change.org
|
||||||
|
|
||||||
|
# ea.com
|
||||||
|
+lists +lists/ea.com -- tag:new from:.*@ea.com
|
||||||
|
|
||||||
|
# ea.com
|
||||||
|
+lists +lists/ea.com -- tag:new from:.*@ea.com
|
||||||
|
|
||||||
|
# roleplayingtips
|
||||||
|
+lists +lists/role-playing-tips -- tag:new from:.*@roleplayingtips.com
|
||||||
|
|
||||||
|
# openstreetmap
|
||||||
|
+lists +lists/openstreetmap -- tag:new from:.*@noreply.openstreetmap.org
|
||||||
|
|
||||||
|
# google
|
||||||
|
+lists +lists/google -- tag:new from:.*@.*google.com
|
||||||
|
+lists/google/gmail -- tag:new from:gmail-noreply@.*google.com
|
||||||
|
+lists/google/ads-support -- tag:new from:ads-support@google.com
|
||||||
|
+lists/google/crowdsource -- tag:new from:crowdsource-noreply@google.com
|
||||||
|
+lists/google/account -- tag:new from:googleaccount-noreply@google.com
|
||||||
|
+lists/google/account -- tag:new from:no-reply@accounts.google.com
|
||||||
|
+lists/google/calendar -- tag:new from:calendar-noreply@google.com
|
||||||
|
+lists/google/calendar +notification/calender -- tag:new from:calendar-notification@google.com
|
||||||
|
+lists/google/alerts -- tag:new from:googlealerts-noreply@google.com
|
||||||
|
+lists/google/cloud -- tag:new from:cloudplatform-noreply@google.com
|
||||||
|
+lists/google/docs -- tag:new from:.*@docs.google.com
|
||||||
|
+notifcation/google/docs/comment -- tag:new from:comment-noreply@docs.google.com
|
||||||
|
+lists/google/gemini -- tag:new from:google-gemini-noreply@google.com
|
||||||
|
+lists/google/location-history -- tag:new from:location-history-noreply@google.com
|
||||||
|
+lists/google/maps-timeline -- tag:new from:noreply-maps-timeline@google.com
|
||||||
|
+lists/google/photos -- tag:new from:noreply-photos@google.com
|
||||||
|
+lists/google/find-my-device -- tag:new from:noreply-findmydevice@google.com
|
||||||
|
+lists/google/play -- tag:new from:googleplay-noreply@google.com
|
||||||
|
+lists/google/store -- tag:new from:googlestore-noreply@google.com
|
||||||
|
+lists/google/meet -- tag:new from:googlemeet-noreply@google.com
|
||||||
|
+lists/google/meet -- tag:new from:meetings-noreply@google.com
|
||||||
|
+lists/google/nest -- tag:new from:googlenest@google.com
|
||||||
|
+lists/google/one -- tag:new from:googleone-noreply@google.com
|
||||||
|
+lists/google/takeout -- tag:new from:"Google Takeout"
|
||||||
|
+lists/google/community -- tag:new from:googlecommunityteam-noreply@google.com
|
||||||
|
|
||||||
|
# welcome to the jungle
|
||||||
|
+lists +lists/welcometothejungle -- tag:new from:.*@welcometothejungle.com
|
||||||
|
|
||||||
|
+lists +lists/edenred -- tag:new from:.*@.*edenred.fr
|
||||||
|
|
||||||
|
+lists +lists/cnam +lists/cnam/auvergnerhonealpes -- tag:new from:.*@cnam-auvergnerhonealpes.com
|
||||||
|
|
||||||
|
+lists +lists/sncf -- tag:new from:.*@.*sncf.com
|
||||||
|
|
||||||
|
+lists +lists/trainz -- tag:new from:newsletters@trainzportal.com from:feedback@n3vgames.com
|
||||||
|
|
||||||
|
+lists +lists/xbox -- tag:new from:*@*xbox.com
|
||||||
|
|
||||||
|
+lists +lists/jlfwong -- tag:new from:"jlfwong <phleet@gmail.com>"
|
||||||
|
|
||||||
|
+project/webforce3 -- tag:new from:noreply@webforce.life from:*@wf3.fr
|
||||||
|
+lists +lists/webforce3 -- tag:new from:noreply@webforce.life from:be.the.change@wf3.fr from:info@wf3.fr from:infoemploi@wf3.fr OR from:"WF3 WEBINAIRE"
|
||||||
|
|
||||||
|
+lists +lists/bibliotheques +lists/bibliotheques/grenoble -- tag:new from:informatique@bm-grenoble.fr from:bm.informatique@grenoble.fr
|
||||||
|
|
||||||
|
+lists +lists/alolise -- tag:new to:*@listes.alolise.org
|
||||||
266
flake.lock
generated
266
flake.lock
generated
|
|
@ -37,11 +37,11 @@
|
||||||
"base16-helix": {
|
"base16-helix": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725860795,
|
"lastModified": 1736852337,
|
||||||
"narHash": "sha256-Z2o8VBPW3I+KKTSfe25kskz0EUj7MpUh8u355Z1nVsU=",
|
"narHash": "sha256-esD42YdgLlEh7koBrSqcT7p2fsMctPAcGl/+2sYJa2o=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-helix",
|
"repo": "base16-helix",
|
||||||
"rev": "7f795bf75d38e0eea9fed287264067ca187b88a9",
|
"rev": "03860521c40b0b9c04818f2218d9cc9efc21e7a5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -53,16 +53,17 @@
|
||||||
"base16-vim": {
|
"base16-vim": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731949548,
|
"lastModified": 1732806396,
|
||||||
"narHash": "sha256-XIDexXM66sSh5j/x70e054BnUsviibUShW7XhbDGhYo=",
|
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-vim",
|
"repo": "base16-vim",
|
||||||
"rev": "61165b1632409bd55e530f3dbdd4477f011cadc6",
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-vim",
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -131,11 +132,11 @@
|
||||||
"doomemacs": {
|
"doomemacs": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736881038,
|
"lastModified": 1741842488,
|
||||||
"narHash": "sha256-i0GVHWoIqDcFB9JmEdd9T+qxrEx3ckBlPfTD/yLoNyg=",
|
"narHash": "sha256-bqqnkoXND8Sfc2MnTIKBRQSYed0fjgMn481wiIhwyz4=",
|
||||||
"owner": "doomemacs",
|
"owner": "doomemacs",
|
||||||
"repo": "doomemacs",
|
"repo": "doomemacs",
|
||||||
"rev": "2bc052425ca45a41532be0648ebd976d1bd2e6c1",
|
"rev": "c95015d7066476d32784c6f0ed7463b92b931bec",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -154,11 +155,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737162568,
|
"lastModified": 1741831953,
|
||||||
"narHash": "sha256-cwgeBqXtMKHoK+627GEGGkbIILxhP/OrqNMQhUp/6dQ=",
|
"narHash": "sha256-ZJgTnduyZzNPPCEKxzKa0x1FhWLxlMgJzVdE89s+LWs=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "ac3dfdca835c5b8f7c27d5dcec2b9c4580299a7c",
|
"rev": "34c2a5d93606f6f952c34a85e5346029869bd8f0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -170,11 +171,11 @@
|
||||||
"firefox-gnome-theme": {
|
"firefox-gnome-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734969791,
|
"lastModified": 1741628778,
|
||||||
"narHash": "sha256-A9PxLienMYJ/WUvqFie9qXrNC2MeRRYw7TG/q7DRjZg=",
|
"narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
|
||||||
"owner": "rafaelmardojai",
|
"owner": "rafaelmardojai",
|
||||||
"repo": "firefox-gnome-theme",
|
"repo": "firefox-gnome-theme",
|
||||||
"rev": "92f4890bd150fc9d97b61b3583680c0524a8cafe",
|
"rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -184,6 +185,22 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1668681692,
|
||||||
|
"narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "009399224d5e398d03b22badca40a37ac85412a1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
|
@ -197,14 +214,14 @@
|
||||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_2": {
|
"flake-compat_3": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1733328505,
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -254,6 +271,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1667395993,
|
||||||
|
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
|
|
@ -271,7 +303,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_3"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
|
|
@ -289,7 +321,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_4": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": [
|
"systems": [
|
||||||
"stylix",
|
"stylix",
|
||||||
|
|
@ -369,19 +401,14 @@
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"stylix",
|
"stylix",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
|
||||||
"nixpkgs-stable": [
|
|
||||||
"stylix",
|
|
||||||
"git-hooks",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731363552,
|
"lastModified": 1741379162,
|
||||||
"narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=",
|
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0",
|
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -459,11 +486,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736373539,
|
"lastModified": 1739757849,
|
||||||
"narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=",
|
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "bd65bc3cde04c16755955630b344bc9e35272c56",
|
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -503,11 +530,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733572789,
|
"lastModified": 1739757849,
|
||||||
"narHash": "sha256-zjO6m5BqxXIyjrnUziAzk4+T4VleqjstNudSqWcpsHI=",
|
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "c7ffc9727d115e433fd884a62dc164b587ff651d",
|
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -517,6 +544,63 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"lowdown-src": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1633514407,
|
||||||
|
"narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=",
|
||||||
|
"owner": "kristapsdz",
|
||||||
|
"repo": "lowdown",
|
||||||
|
"rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "kristapsdz",
|
||||||
|
"repo": "lowdown",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mms": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nix": "nix",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1669478601,
|
||||||
|
"narHash": "sha256-IQcS8IPeXvSoIrQRPgtnLxAs0Pkh8wmglDAtqE4ivNo=",
|
||||||
|
"owner": "mkaito",
|
||||||
|
"repo": "nixos-modded-minecraft-servers",
|
||||||
|
"rev": "68f2066499c035fd81c9dacfea2f512d6b0b62e5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "mkaito",
|
||||||
|
"repo": "nixos-modded-minecraft-servers",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix": {
|
||||||
|
"inputs": {
|
||||||
|
"lowdown-src": "lowdown-src",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-regression": "nixpkgs-regression"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1669449054,
|
||||||
|
"narHash": "sha256-aCpXrNpyFH6b1NFYGj2i/HecUvz2vZ88aEyDs1Xj8yM=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nix",
|
||||||
|
"rev": "534332c8a03b64161ec795d1deb2ba3d48f27be1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nix-darwin": {
|
"nix-darwin": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -549,11 +633,11 @@
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737189134,
|
"lastModified": 1741855244,
|
||||||
"narHash": "sha256-On00k8gk76kiK+LEOq1/+6VaxLuPn4b7kOHtQPI4cRQ=",
|
"narHash": "sha256-2HXXGM67yr4zZ0/d9ut51CUhizZrbzlIxNSsebtfQZ8=",
|
||||||
"owner": "marienz",
|
"owner": "marienz",
|
||||||
"repo": "nix-doom-emacs-unstraightened",
|
"repo": "nix-doom-emacs-unstraightened",
|
||||||
"rev": "e9f07ad62a068771c8854afb2bc0408fcc17ce39",
|
"rev": "605020bea4a461c9faafaece5274dcb3dbf105a3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -564,7 +648,7 @@
|
||||||
},
|
},
|
||||||
"nixos-06cb-009a-fingerprint-sensor": {
|
"nixos-06cb-009a-fingerprint-sensor": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734692513,
|
"lastModified": 1734692513,
|
||||||
|
|
@ -582,17 +666,18 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734323986,
|
"lastModified": 1657693803,
|
||||||
"narHash": "sha256-m/lh6hYMIWDYHCAsn81CDAiXoT3gmxXI9J987W5tZrE=",
|
"narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "394571358ce82dff7411395829aa6a3aad45b907",
|
"rev": "365e1b3a859281cf11b94f87231adeabbdd878a2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"id": "nixpkgs",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-24.11",
|
"ref": "nixos-22.05-small",
|
||||||
"type": "indirect"
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
|
|
@ -607,28 +692,76 @@
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz"
|
"url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-regression": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737062831,
|
"lastModified": 1643052045,
|
||||||
"narHash": "sha256-Tbk1MZbtV2s5aG+iM99U8FqwxU/YNArMcWAv6clcsBc=",
|
"narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5df43628fdf08d642be8ba5b3625a6c70731c19c",
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-unstable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741513245,
|
||||||
|
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741724370,
|
||||||
|
"narHash": "sha256-WsD+8uodhl58jzKKcPH4jH9dLTLFWZpVmGq4W1XDVF4=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "0faaf0a9bb6dedb69bfd43ac06fb27fadc476c51",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-22.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1734323986,
|
||||||
|
"narHash": "sha256-m/lh6hYMIWDYHCAsn81CDAiXoT3gmxXI9J987W5tZrE=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "394571358ce82dff7411395829aa6a3aad45b907",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"id": "nixpkgs",
|
"id": "nixpkgs",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-24.11",
|
||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736916166,
|
"lastModified": 1736916166,
|
||||||
"narHash": "sha256-puPDoVKxkuNmYIGMpMQiK8bEjaACcCksolsG36gdaNQ=",
|
"narHash": "sha256-puPDoVKxkuNmYIGMpMQiK8bEjaACcCksolsG36gdaNQ=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e24b4c09e963677b1beea49d411cd315a024ad3a",
|
"rev": "95600680c021743fd87b3e2fe13be7c290e1cac4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -638,7 +771,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1721924956,
|
"lastModified": 1721924956,
|
||||||
"narHash": "sha256-Sb1jlyRO+N8jBXEX9Pg9Z1Qb8Bw9QyOgLDNMEpmjZ2M=",
|
"narHash": "sha256-Sb1jlyRO+N8jBXEX9Pg9Z1Qb8Bw9QyOgLDNMEpmjZ2M=",
|
||||||
|
|
@ -657,7 +790,7 @@
|
||||||
"nixvim": {
|
"nixvim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_5",
|
||||||
"nixvim": "nixvim_2"
|
"nixvim": "nixvim_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
|
|
@ -677,7 +810,7 @@
|
||||||
"nixvim_2": {
|
"nixvim_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"devshell": "devshell",
|
"devshell": "devshell",
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat_2",
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_2",
|
||||||
"git-hooks": "git-hooks",
|
"git-hooks": "git-hooks",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
|
|
@ -705,7 +838,7 @@
|
||||||
},
|
},
|
||||||
"nuschtosSearch": {
|
"nuschtosSearch": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils_2",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
"nixvim",
|
"nixvim",
|
||||||
|
|
@ -728,7 +861,7 @@
|
||||||
},
|
},
|
||||||
"other-transcode": {
|
"other-transcode": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils_3",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
|
|
@ -772,9 +905,10 @@
|
||||||
"breezex-cursor": "breezex-cursor",
|
"breezex-cursor": "breezex-cursor",
|
||||||
"cassowary": "cassowary",
|
"cassowary": "cassowary",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
|
"mms": "mms",
|
||||||
"nix-doom-emacs-unstraightened": "nix-doom-emacs-unstraightened",
|
"nix-doom-emacs-unstraightened": "nix-doom-emacs-unstraightened",
|
||||||
"nixos-06cb-009a-fingerprint-sensor": "nixos-06cb-009a-fingerprint-sensor",
|
"nixos-06cb-009a-fingerprint-sensor": "nixos-06cb-009a-fingerprint-sensor",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"nixvim": "nixvim",
|
"nixvim": "nixvim",
|
||||||
"other-transcode": "other-transcode",
|
"other-transcode": "other-transcode",
|
||||||
|
|
@ -789,8 +923,8 @@
|
||||||
"base16-helix": "base16-helix",
|
"base16-helix": "base16-helix",
|
||||||
"base16-vim": "base16-vim",
|
"base16-vim": "base16-vim",
|
||||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_3",
|
||||||
"flake-utils": "flake-utils_3",
|
"flake-utils": "flake-utils_4",
|
||||||
"git-hooks": "git-hooks_2",
|
"git-hooks": "git-hooks_2",
|
||||||
"gnome-shell": "gnome-shell",
|
"gnome-shell": "gnome-shell",
|
||||||
"home-manager": "home-manager_3",
|
"home-manager": "home-manager_3",
|
||||||
|
|
@ -803,11 +937,11 @@
|
||||||
"tinted-tmux": "tinted-tmux"
|
"tinted-tmux": "tinted-tmux"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736955352,
|
"lastModified": 1741703235,
|
||||||
"narHash": "sha256-VujiBKJYM32b7HZEVO3Txla989lE7HMNGhVomLtguB0=",
|
"narHash": "sha256-3efck7239JPh6IHnqhETaoQejfxh4RBU16bE8IHOkto=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "ef93972237a82cc340e804a1d2d4140ad65fe81d",
|
"rev": "4a3ac9e30cd15b25a8b2e6cf0a7a047f454408bd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -914,11 +1048,11 @@
|
||||||
"tinted-tmux": {
|
"tinted-tmux": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729501581,
|
"lastModified": 1740877430,
|
||||||
"narHash": "sha256-1ohEFMC23elnl39kxWnjzH1l2DFWWx4DhFNNYDTYt54=",
|
"narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "tinted-tmux",
|
"repo": "tinted-tmux",
|
||||||
"rev": "f0e7f7974a6441033eb0a172a0342e96722b4f14",
|
"rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
||||||
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
|
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager/release-24.11";
|
url = "github:nix-community/home-manager/release-24.11";
|
||||||
|
|
@ -45,6 +45,8 @@
|
||||||
nixos-06cb-009a-fingerprint-sensor = {
|
nixos-06cb-009a-fingerprint-sensor = {
|
||||||
url = "github:ahbnr/nixos-06cb-009a-fingerprint-sensor";
|
url = "github:ahbnr/nixos-06cb-009a-fingerprint-sensor";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
mms.url = "github:mkaito/nixos-modded-minecraft-servers";
|
||||||
};
|
};
|
||||||
outputs = {
|
outputs = {
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
|
|
@ -58,6 +60,7 @@
|
||||||
nix-doom-emacs-unstraightened,
|
nix-doom-emacs-unstraightened,
|
||||||
nixos-06cb-009a-fingerprint-sensor,
|
nixos-06cb-009a-fingerprint-sensor,
|
||||||
cassowary,
|
cassowary,
|
||||||
|
mms,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
|
|
@ -91,6 +94,7 @@
|
||||||
];
|
];
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
pkgs-unstable = nixpkgs-unstable.legacyPackages.${system};
|
pkgs-unstable = nixpkgs-unstable.legacyPackages.${system};
|
||||||
|
inherit mms;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
nixosConfigurations.t470 = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.t470 = nixpkgs.lib.nixosSystem {
|
||||||
|
|
|
||||||
128
home.nix
128
home.nix
|
|
@ -29,12 +29,17 @@ in {
|
||||||
trashy
|
trashy
|
||||||
unzip
|
unzip
|
||||||
parallel
|
parallel
|
||||||
|
tcpdump
|
||||||
|
libqalculate
|
||||||
|
ouch
|
||||||
|
inetutils
|
||||||
# remote working
|
# remote working
|
||||||
remmina
|
remmina
|
||||||
# communication
|
# communication
|
||||||
discord
|
discord
|
||||||
# passwords
|
# passwords
|
||||||
bitwarden-desktop
|
bitwarden-desktop
|
||||||
|
bitwarden-cli
|
||||||
# editors
|
# editors
|
||||||
nixvim
|
nixvim
|
||||||
# make clipboard yanking work in neovim
|
# make clipboard yanking work in neovim
|
||||||
|
|
@ -78,10 +83,20 @@ in {
|
||||||
# games
|
# games
|
||||||
lutris
|
lutris
|
||||||
wine
|
wine
|
||||||
|
prismlauncher
|
||||||
# ai
|
# ai
|
||||||
ollama
|
ollama
|
||||||
# windows
|
# windows
|
||||||
cassowary
|
cassowary
|
||||||
|
# xmonad
|
||||||
|
# apparently this is needed for the haskell lsp
|
||||||
|
ghc
|
||||||
|
i3lock
|
||||||
|
xmobar
|
||||||
|
# show volume in xmobar
|
||||||
|
alsa-utils
|
||||||
|
# remote
|
||||||
|
rustdesk
|
||||||
];
|
];
|
||||||
|
|
||||||
file = {
|
file = {
|
||||||
|
|
@ -118,21 +133,33 @@ in {
|
||||||
|
|
||||||
programs.jujutsu = {
|
programs.jujutsu = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
ediff = true;
|
||||||
settings = {
|
settings = {
|
||||||
user = {
|
user = {
|
||||||
email = "khais.colin@gmail.com";
|
email = "khais.colin@gmail.com";
|
||||||
name = "Khaïs COLIN";
|
name = "Khaïs COLIN";
|
||||||
};
|
};
|
||||||
|
signing = {
|
||||||
|
sign-all = true;
|
||||||
|
backend = "ssh";
|
||||||
|
key = "/home/khais/.ssh/id_ed25519.pub";
|
||||||
|
};
|
||||||
ui = {
|
ui = {
|
||||||
editor = "emacsclient";
|
editor = "emacsclient -a ''";
|
||||||
default-command = "log";
|
default-command = "log";
|
||||||
movement.edit = true;
|
movement.edit = true;
|
||||||
# do not page if output fits on one screen
|
# do not page if output fits on one screen
|
||||||
pager = "less -FRX";
|
pager = "less -FRX";
|
||||||
};
|
};
|
||||||
merge-tools.ediff = {
|
fix.tools = {
|
||||||
program = "sh";
|
clang-format = {
|
||||||
merge-args = ["-c" "emacsclient -c --eval (ediff-merge-files-with-anscestor \"$0\" \"$1\" \"$2\" nil \"$3\")" "$left" "$right" "$base" "$output"];
|
command = ["${pkgs.clang-tools}/bin/clang-format" "--assume-filename=$path"];
|
||||||
|
patterns = ["glob:'**/*.cpp'" "glob:'**/*.hpp'"];
|
||||||
|
};
|
||||||
|
whitespace = {
|
||||||
|
command = ["${pkgs.perl}/bin/perl" "-p" "-e" "s/ +$//" "$path"];
|
||||||
|
patterns = ["glob:'**/*'"];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -238,10 +265,101 @@ in {
|
||||||
programs.doom-emacs = {
|
programs.doom-emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
doomDir = ./doom.d;
|
doomDir = ./doom.d;
|
||||||
extraBinPackages = with pkgs; [clang-tools nil nixd];
|
extraBinPackages = with pkgs; [clang-tools nil nixd haskell-language-server ghc];
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.yazi = {
|
programs.yazi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
xsession.windowManager.xmonad = {
|
||||||
|
enable = true;
|
||||||
|
config = ./xmonad.hs;
|
||||||
|
enableContribAndExtras = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.xmobar = {
|
||||||
|
enable = true;
|
||||||
|
extraConfig = builtins.readFile ./xmobarrc;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.rofi.enable = true;
|
||||||
|
|
||||||
|
# email
|
||||||
|
programs.mbsync.enable = true;
|
||||||
|
programs.msmtp.enable = true;
|
||||||
|
programs.offlineimap.enable = true;
|
||||||
|
|
||||||
|
programs.lieer = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
accounts.email.accounts.gmail = {
|
||||||
|
address = "khais.colin@gmail.com";
|
||||||
|
lieer = {
|
||||||
|
enable = true;
|
||||||
|
settings.local_trash_tag = "killed";
|
||||||
|
sync.enable = true;
|
||||||
|
};
|
||||||
|
msmtp.enable = true;
|
||||||
|
notmuch.enable = true;
|
||||||
|
primary = true;
|
||||||
|
realName = "Khaïs COLIN";
|
||||||
|
signature = {
|
||||||
|
text = ''
|
||||||
|
Cordialement,
|
||||||
|
-- Khaïs COLIN
|
||||||
|
'';
|
||||||
|
showSignature = "append";
|
||||||
|
};
|
||||||
|
passwordCommand = "cat /home/khais/.home-manager-gmail-password";
|
||||||
|
userName = "khais.colin@gmail.com";
|
||||||
|
flavor = "gmail.com";
|
||||||
|
};
|
||||||
|
|
||||||
|
accounts.email.accounts.orange = {
|
||||||
|
address = "kh.col@orange.fr";
|
||||||
|
offlineimap = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
msmtp.enable = true;
|
||||||
|
notmuch.enable = true;
|
||||||
|
realName = "Khaïs COLIN";
|
||||||
|
signature = {
|
||||||
|
text = ''
|
||||||
|
Cordialement,
|
||||||
|
-- Khaïs COLIN
|
||||||
|
'';
|
||||||
|
showSignature = "append";
|
||||||
|
};
|
||||||
|
passwordCommand = "cat /home/khais/.home-manager-orange-password";
|
||||||
|
userName = "kh.col@orange.fr";
|
||||||
|
imap = {
|
||||||
|
host = "imap.orange.fr";
|
||||||
|
port = 993;
|
||||||
|
};
|
||||||
|
smtp = {
|
||||||
|
host = "smtp.orange.fr";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.notmuch = {
|
||||||
|
enable = true;
|
||||||
|
new = {
|
||||||
|
tags = ["new" "unread"];
|
||||||
|
};
|
||||||
|
hooks = {
|
||||||
|
preNew = "gmi sync --path ~/Maildir/gmail; offlineimap";
|
||||||
|
postNew = "afew --verbose --tag --new";
|
||||||
|
};
|
||||||
|
search.excludeTags = [
|
||||||
|
"killed"
|
||||||
|
"spam"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.afew = {
|
||||||
|
enable = true;
|
||||||
|
extraConfig = builtins.readFile ./afew.config;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
111
void.nix
111
void.nix
|
|
@ -1,11 +1,16 @@
|
||||||
# Edit this configuration file to define what should be installed on
|
# Edit this configuration file to define what should be installed on
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
{ config, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
mms,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration-void.nix
|
./hardware-configuration-void.nix
|
||||||
./common.nix
|
./common.nix
|
||||||
|
mms.module
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "void"; # Define your hostname.
|
networking.hostName = "void"; # Define your hostname.
|
||||||
|
|
@ -54,6 +59,7 @@
|
||||||
|
|
||||||
# mount external drive
|
# mount external drive
|
||||||
fileSystems."/external".label = "external";
|
fileSystems."/external".label = "external";
|
||||||
|
fileSystems."/external".options = ["nofail" "x-systemd.automount"];
|
||||||
|
|
||||||
# backup
|
# backup
|
||||||
services.borgbackup.jobs."external" = {
|
services.borgbackup.jobs."external" = {
|
||||||
|
|
@ -72,6 +78,7 @@
|
||||||
"/home/*/GOG Games"
|
"/home/*/GOG Games"
|
||||||
"**/target"
|
"**/target"
|
||||||
"**/result"
|
"**/result"
|
||||||
|
"/var/log"
|
||||||
];
|
];
|
||||||
repo = "/external/voidbackup";
|
repo = "/external/voidbackup";
|
||||||
encryption = {
|
encryption = {
|
||||||
|
|
@ -81,6 +88,8 @@
|
||||||
compression = "auto,lzma";
|
compression = "auto,lzma";
|
||||||
startAt = "daily";
|
startAt = "daily";
|
||||||
persistentTimer = true;
|
persistentTimer = true;
|
||||||
|
extraCreateArgs = ["--stats" "--info" "--list" "--filter=AMEC"];
|
||||||
|
removableDevice = true;
|
||||||
};
|
};
|
||||||
systemd.services."borgbackup-job-external" = {
|
systemd.services."borgbackup-job-external" = {
|
||||||
unitConfig = {
|
unitConfig = {
|
||||||
|
|
@ -88,4 +97,104 @@
|
||||||
Requires = "external.mount";
|
Requires = "external.mount";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# postgresql backup
|
||||||
|
services.postgresqlBackup = {
|
||||||
|
enable = true;
|
||||||
|
backupAll = true;
|
||||||
|
location = "/var/backup/postgresql";
|
||||||
|
};
|
||||||
|
systemd.timers."postgresqlBackup".unitConfig.Persistent = true;
|
||||||
|
|
||||||
|
# minecraft TerraFirmaGreg server
|
||||||
|
services.modded-minecraft-servers = {
|
||||||
|
eula = true;
|
||||||
|
instances.terrafirmagreg = {
|
||||||
|
enable = true;
|
||||||
|
rsyncSSHKeys = [""];
|
||||||
|
serverConfig = {
|
||||||
|
server-port = 25565;
|
||||||
|
motd = "Welcome to logistic-bot's TerraFirmaGreg server";
|
||||||
|
allow-flight = true;
|
||||||
|
allow-nether = false;
|
||||||
|
difficulty = 0;
|
||||||
|
enable-rcon = false;
|
||||||
|
level-type = "tfc\:overworld";
|
||||||
|
view-distance = 24;
|
||||||
|
};
|
||||||
|
|
||||||
|
jvmPackage = pkgs.jdk17;
|
||||||
|
jvmMaxAllocation = "8196M";
|
||||||
|
jvmInitialAllocation = "2048M";
|
||||||
|
|
||||||
|
# "Borrowed" from AllTheMods Discord
|
||||||
|
jvmOpts = builtins.concatStringsSep " " [
|
||||||
|
"-XX:+UseG1GC"
|
||||||
|
"-XX:+ParallelRefProcEnabled"
|
||||||
|
"-XX:MaxGCPauseMillis=200"
|
||||||
|
"-XX:+UnlockExperimentalVMOptions"
|
||||||
|
"-XX:+DisableExplicitGC"
|
||||||
|
"-XX:+AlwaysPreTouch"
|
||||||
|
"-XX:G1NewSizePercent=40"
|
||||||
|
"-XX:G1MaxNewSizePercent=50"
|
||||||
|
"-XX:G1HeapRegionSize=16M"
|
||||||
|
"-XX:G1ReservePercent=15"
|
||||||
|
"-XX:G1HeapWastePercent=5"
|
||||||
|
"-XX:G1MixedGCCountTarget=4"
|
||||||
|
"-XX:InitiatingHeapOccupancyPercent=20"
|
||||||
|
"-XX:G1MixedGCLiveThresholdPercent=90"
|
||||||
|
"-XX:G1RSetUpdatingPauseTimePercent=5"
|
||||||
|
"-XX:SurvivorRatio=32"
|
||||||
|
"-XX:+PerfDisableSharedMem"
|
||||||
|
"-XX:MaxTenuringThreshold=1"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.jellyfin = {
|
||||||
|
enable = true;
|
||||||
|
openFirewall = true;
|
||||||
|
user = "khais";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.forgejo = {
|
||||||
|
enable = true;
|
||||||
|
database.type = "postgres";
|
||||||
|
# Enable support for Git Large File Storage
|
||||||
|
lfs.enable = true;
|
||||||
|
settings = {
|
||||||
|
server = {
|
||||||
|
DOMAIN = "forgejo.005540.xyz";
|
||||||
|
# You need to specify this to remove the port from URLs in the web UI.
|
||||||
|
ROOT_URL = "https://forgejo.005540.xyz/";
|
||||||
|
HTTP_PORT = 3000;
|
||||||
|
};
|
||||||
|
# You can temporarily allow registration to create an admin user.
|
||||||
|
service.DISABLE_REGISTRATION = false;
|
||||||
|
# Add support for actions, based on act: https://github.com/nektos/act
|
||||||
|
actions = {
|
||||||
|
ENABLED = true;
|
||||||
|
DEFAULT_ACTIONS_URL = "github";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.nginx = {
|
||||||
|
enable = true;
|
||||||
|
recommendedTlsSettings = true;
|
||||||
|
recommendedOptimisation = true;
|
||||||
|
recommendedGzipSettings = true;
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
virtualHosts = {
|
||||||
|
"void.hummingbird-stork.ts.net" = {
|
||||||
|
locations."/".proxyPass = "http://localhost:8096";
|
||||||
|
};
|
||||||
|
"jellyfin.005540.xyz" = {
|
||||||
|
locations."/".proxyPass = "http://localhost:8096";
|
||||||
|
};
|
||||||
|
"forgejo.005540.xyz" = {
|
||||||
|
locations."/".proxyPass = "http://localhost:3000";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -165,10 +165,12 @@ in {
|
||||||
"None Scroll_Lock" = "spawn 'playerctl previous'";
|
"None Scroll_Lock" = "spawn 'playerctl previous'";
|
||||||
"None XF86AudioNext" = "spawn 'playerctl next'";
|
"None XF86AudioNext" = "spawn 'playerctl next'";
|
||||||
"None Pause" = "spawn 'cmus-remote -C player-next-album'";
|
"None Pause" = "spawn 'cmus-remote -C player-next-album'";
|
||||||
|
|
||||||
"None XF86Bluetooth" = "spawn 'playerctl play-pause'";
|
"None XF86Bluetooth" = "spawn 'playerctl play-pause'";
|
||||||
"None XF86Tools" = "spawn 'playerctl previous'";
|
"None XF86Tools" = "spawn 'playerctl previous'";
|
||||||
"None XF86Keyboard" = "spawn 'playerctl next'";
|
"None XF86Keyboard" = "spawn 'playerctl next'";
|
||||||
"None XF86Favorites" = "spawn 'cmus-remote -C player-next-album'";
|
"None XF86Favorites" = "spawn 'cmus-remote -C player-next-album'";
|
||||||
|
|
||||||
"None XF86AudioMute" = "spawn 'wpctl set-mute @DEFAULT_SINK@ toggle'";
|
"None XF86AudioMute" = "spawn 'wpctl set-mute @DEFAULT_SINK@ toggle'";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
63
xmobarrc
Normal file
63
xmobarrc
Normal file
|
|
@ -0,0 +1,63 @@
|
||||||
|
Config { overrideRedirect = False
|
||||||
|
, font = "xft:Victor Mono NerdFont-8"
|
||||||
|
, bgColor = "#07080d"
|
||||||
|
, fgColor = "#e0e2ea"
|
||||||
|
, position = TopW L 100
|
||||||
|
, commands = [ Run MultiCoreTemp
|
||||||
|
[ "-t", "Temp:<avg>°C"
|
||||||
|
, "-L", "50"
|
||||||
|
, "-H", "80"
|
||||||
|
, "--low" , "#b6f0ff"
|
||||||
|
, "--normal", "#b3f6c0"
|
||||||
|
, "--high" , "#fcbeb7"
|
||||||
|
] 50
|
||||||
|
, Run Cpu
|
||||||
|
[ "-L", "3"
|
||||||
|
, "-H", "50"
|
||||||
|
, "--ppad", "3"
|
||||||
|
, "--low" , "#b6f0ff"
|
||||||
|
, "--normal", "#b3f6c0"
|
||||||
|
, "--high" , "#fcbeb7"
|
||||||
|
] 10
|
||||||
|
, Run Battery
|
||||||
|
[ "-L", "15"
|
||||||
|
, "-H", "80"
|
||||||
|
, "--ppad", "3"
|
||||||
|
, "--low", "#fcbeb7"
|
||||||
|
, "--normal", "#b6f0ff"
|
||||||
|
, "--high", "#b3f6c0"
|
||||||
|
] 10
|
||||||
|
, Run Alsa "default" "Master"
|
||||||
|
[ "--template", "<volumestatus>"
|
||||||
|
, "--suffix" , "True"
|
||||||
|
, "--"
|
||||||
|
, "--on", ""
|
||||||
|
]
|
||||||
|
, Run Memory
|
||||||
|
[ "--template", "Mem: <usedratio>%"
|
||||||
|
, "-L", "20"
|
||||||
|
, "-H", "50"
|
||||||
|
, "--ppad", "3"
|
||||||
|
, "--low" , "#b6f0ff"
|
||||||
|
, "--normal", "#b3f6c0"
|
||||||
|
, "--high" , "#fcbeb7"
|
||||||
|
] 10
|
||||||
|
, Run DateZone "<fc=#b3f6c0>%a %d %b</fc> %Y-%m-%d <fc=#b3f6c0>%H:%M:%S</fc>"
|
||||||
|
"fr_FR.UTF-8"
|
||||||
|
"Europe/Paris"
|
||||||
|
"date" 10
|
||||||
|
, Run DiskIO [ ("/", "r:<read> w:<write>") ]
|
||||||
|
[ "-L", "300"
|
||||||
|
, "-H", "1000"
|
||||||
|
, "--ppad", "3"
|
||||||
|
, "--low" , "#b6f0ff"
|
||||||
|
, "--normal", "#b3f6c0"
|
||||||
|
, "--high" , "#fcbeb7"
|
||||||
|
] 10
|
||||||
|
, Run Mpris2 "cmus" [] 10
|
||||||
|
, Run XMonadLog
|
||||||
|
]
|
||||||
|
, sepChar = "%"
|
||||||
|
, alignSep = "}{"
|
||||||
|
, template = "%XMonadLog%}%mpris2%{%diskio% • %alsa:default:Master% • %battery% • %cpu% • %memory% • %multicoretemp% • %date%"
|
||||||
|
}
|
||||||
199
xmonad.hs
Normal file
199
xmonad.hs
Normal file
|
|
@ -0,0 +1,199 @@
|
||||||
|
import XMonad
|
||||||
|
import XMonad.Util.EZConfig
|
||||||
|
import XMonad.Layout.ThreeColumns
|
||||||
|
import XMonad.Layout.WindowNavigation
|
||||||
|
import XMonad.Layout.MultiToggle.Instances
|
||||||
|
import XMonad.Layout.MultiToggle
|
||||||
|
import XMonad.Layout.NoBorders
|
||||||
|
import XMonad.Layout.IndependentScreens
|
||||||
|
import XMonad.Actions.CopyWindow
|
||||||
|
import XMonad.Actions.CycleWS
|
||||||
|
import XMonad.Actions.EasyMotion (selectWindow)
|
||||||
|
import XMonad.Hooks.EwmhDesktops
|
||||||
|
import XMonad.Hooks.DynamicLog
|
||||||
|
import XMonad.Hooks.StatusBar
|
||||||
|
import XMonad.Hooks.StatusBar.PP
|
||||||
|
import qualified XMonad.Layout.Magnifier as Mag
|
||||||
|
import qualified Data.Map as M
|
||||||
|
import qualified XMonad.StackSet as W
|
||||||
|
import System.Exit
|
||||||
|
import XMonad.Util.Loggers
|
||||||
|
|
||||||
|
-- TODO: xmobar
|
||||||
|
|
||||||
|
myWorkspaceNames = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
|
||||||
|
myScreens = 2
|
||||||
|
conf = def { layoutHook = myLayout
|
||||||
|
, workspaces = withScreens myScreens myWorkspaceNames
|
||||||
|
, modMask = mod4Mask
|
||||||
|
}
|
||||||
|
`additionalKeysP`
|
||||||
|
myKeys
|
||||||
|
|
||||||
|
-- main :: IO ()
|
||||||
|
main =
|
||||||
|
xmonad $ ewmh $ withEasySB (statusBarProp "xmobar" (pure myXmobarPP)) defToggleStrutsKey conf
|
||||||
|
|
||||||
|
-- Define the status bars for each screen
|
||||||
|
-- myStatusBars :: [StatusBarConfig]
|
||||||
|
-- myStatusBars = [ statusBarProp ("xmobar -x " ++ show sc) (pure myXmobarPP) | sc <- [0..myScreens - 1] ]
|
||||||
|
|
||||||
|
-- main :: IO ()
|
||||||
|
-- main = xmonad . ewmh $ dynamicSBs myStatusBars conf
|
||||||
|
|
||||||
|
myXmobarPP :: PP
|
||||||
|
myXmobarPP = def
|
||||||
|
{ ppSep = magenta " • "
|
||||||
|
, ppTitleSanitize = xmobarStrip
|
||||||
|
, ppCurrent = xmobarBorder "Top" borderColor 2 . xmobarBorder "Bottom" borderColor 2
|
||||||
|
, ppUrgent = red . wrap (yellow "!") (yellow "!")
|
||||||
|
, ppOrder = \[ws, l, _, wins] -> [ws, l, wins]
|
||||||
|
, ppExtras = [logTitles formatFocused formatUnfocused]
|
||||||
|
}
|
||||||
|
where
|
||||||
|
formatFocused = wrap (white "[") (white "]") . magenta . ppWindow
|
||||||
|
formatUnfocused = wrap (lowWhite "[") (lowWhite "]") . blue . ppWindow
|
||||||
|
|
||||||
|
-- | Windows should have *some* title, which should not not exceed a
|
||||||
|
-- sane length.
|
||||||
|
ppWindow :: String -> String
|
||||||
|
ppWindow = xmobarRaw . (\w -> if null w then "untitled" else w) . shorten 30
|
||||||
|
|
||||||
|
blue, lowWhite, magenta, red, white, yellow :: String -> String
|
||||||
|
magenta = xmobarColor "#ff79c6" ""
|
||||||
|
blue = xmobarColor "#bd93f9" ""
|
||||||
|
white = xmobarColor "#f8f8f2" ""
|
||||||
|
yellow = xmobarColor "#f1fa8c" ""
|
||||||
|
red = xmobarColor "#ff5555" ""
|
||||||
|
lowWhite = xmobarColor "#bbbbbb" ""
|
||||||
|
borderColor = "#8be9fd"
|
||||||
|
|
||||||
|
myKeys :: [(String, X ())]
|
||||||
|
myKeys = [
|
||||||
|
-- Screen lock & suspend
|
||||||
|
("C-M1-l" , spawn "i3lock" )
|
||||||
|
, ("C-M1-S-l" , spawn "i3lock" *> spawn "systemctl suspend")
|
||||||
|
-- Terminal
|
||||||
|
, ("M4-<Return>", spawn "kitty -1")
|
||||||
|
-- Frequent programs
|
||||||
|
, ("M4-q", spawn "firefox" )
|
||||||
|
, ("M4-a", runOrCopy "emacs" (className =? "Emacs"))
|
||||||
|
, ("M4-d", spawn "discord" )
|
||||||
|
, ("M4-g", spawn "dolphin" )
|
||||||
|
-- Program launcher
|
||||||
|
, ("M4-r", spawn "rofi -show drun -theme Paper" )
|
||||||
|
-- Exit
|
||||||
|
, ("M4-M1-C-q", io (exitWith ExitSuccess) )
|
||||||
|
-- Manipulate current client
|
||||||
|
, ("M4-w", kill1 )
|
||||||
|
, ("M4-s", toggleFloat )
|
||||||
|
-- focus client
|
||||||
|
, ("M4-h", sendMessage (Go L) )
|
||||||
|
, ("M4-j", sendMessage (Go D) )
|
||||||
|
, ("M4-k", sendMessage (Go U) )
|
||||||
|
, ("M4-l", sendMessage (Go R) )
|
||||||
|
-- focus client (easymotion)
|
||||||
|
, ("M4-;", selectWindow def >>= (`whenJust` windows . W.focusWindow))
|
||||||
|
-- Swap client
|
||||||
|
, ("M4-S-h", sendMessage $ Swap L)
|
||||||
|
, ("M4-S-j", sendMessage $ Swap D)
|
||||||
|
, ("M4-S-k", sendMessage $ Swap U)
|
||||||
|
, ("M4-S-l", sendMessage $ Swap R)
|
||||||
|
, ("M4-S-<Return>", windows $ W.swapMaster)
|
||||||
|
-- Move client
|
||||||
|
, ("M4-M1-S-h", sendMessage (Move L) )
|
||||||
|
, ("M4-M1-S-j", sendMessage (Move D) )
|
||||||
|
, ("M4-M1-S-k", sendMessage (Move U) )
|
||||||
|
, ("M4-M1-S-l", sendMessage (Move R) )
|
||||||
|
-- Fullscreen
|
||||||
|
, ("M4-f", sendMessage (Toggle FULL) )
|
||||||
|
-- Magnification
|
||||||
|
, ("M4-m", sendMessage (Mag.Toggle) )
|
||||||
|
, ("M4-[", sendMessage (Mag.MagnifyLess) )
|
||||||
|
, ("M4-]", sendMessage (Mag.MagnifyMore) )
|
||||||
|
-- Modify number of master windows
|
||||||
|
, ("M4-M1-j", sendMessage (IncMasterN (-1)))
|
||||||
|
, ("M4-M1-k", sendMessage (IncMasterN 1 ))
|
||||||
|
-- Resize master area
|
||||||
|
, ("M4-C-h", sendMessage Shrink)
|
||||||
|
, ("M4-C-l", sendMessage Expand)
|
||||||
|
-- Cycle through workspaces
|
||||||
|
, ("M4-<Left>", moveTo Prev spacesOnCurrentScreen )
|
||||||
|
, ("M4-<Right>", moveTo Next spacesOnCurrentScreen )
|
||||||
|
-- Cycle through empty workspaces
|
||||||
|
, ("M4-M1-<Left>", moveTo Prev emptySpacesOnCurrentScreen)
|
||||||
|
, ("M4-M1-<Right>", moveTo Next emptySpacesOnCurrentScreen)
|
||||||
|
-- Send window through workspaces
|
||||||
|
, ("M4-S-<Left>", shiftTo Prev spacesOnCurrentScreen )
|
||||||
|
, ("M4-S-<Right>", shiftTo Next spacesOnCurrentScreen )
|
||||||
|
-- Music player control (void)
|
||||||
|
, ("<XF86AudioPlay>", spawn "playerctl play-pause" )
|
||||||
|
, ("<Scroll_Lock>", spawn "playerctl previous" )
|
||||||
|
, ("<XF86AudioNext>", spawn "playerctl next" )
|
||||||
|
, ("<Pause>", spawn "cmus-remote -C player-next-album")
|
||||||
|
-- Music player control (t470)
|
||||||
|
, ("<XF86Bluetooth>", spawn "playerctl play-pause")
|
||||||
|
, ("<XF86Tools>", spawn "playerctl previous")
|
||||||
|
, ("<XF86Keyboard>", spawn "playerctl next") -- Potentially broken key
|
||||||
|
, ("<XF86Favorites>", spawn "cmus-remote -C player-next-album")
|
||||||
|
-- Audio control
|
||||||
|
, ("<XF86AudioMute>", spawn "wpctl set-mute @DEFAULT_SINK@ toggle")
|
||||||
|
, ("<XF86AudioLowerVolume>", spawn "wpctl set-volume @DEFAULT_SINK@ 1%-")
|
||||||
|
, ("<XF86AudioRaiseVolume>", spawn "wpctl set-volume @DEFAULT_SINK@ 1%+")
|
||||||
|
-- Mic control
|
||||||
|
, ("<XF86AudioMicMute>", spawn "wpctl set-mute @DEFAULT_SOURCE@ toggle")
|
||||||
|
, ("M1-<XF86AudioLowerVolume>", spawn "wpctl set-volume @DEFAULT_SOURCE@ 1%-")
|
||||||
|
, ("M1-<XF86AudioRaiseVolume>", spawn "wpctl set-volume @DEFAULT_SOURCE@ 1%+")
|
||||||
|
-- backlight control (t470)
|
||||||
|
, ("<XF86MonBrightnessDown>", spawn "brightnessctl set 1%-")
|
||||||
|
, ("<XF86MonBrightnessUp>", spawn "brightnessctl set 1%+")
|
||||||
|
-- backlight control (void)
|
||||||
|
, ("M4-<Prior>", spawn "ddcutil setvcp 10 + 10")
|
||||||
|
, ("M4-<Next>", spawn "ddcutil setvcp 10 - 10")
|
||||||
|
-- Reload configuration
|
||||||
|
, ("M4-<Escape>", spawn "xmonad --recompile; xmonad --restart")
|
||||||
|
] ++ concat [
|
||||||
|
-- Workspace switching
|
||||||
|
[ ("M4-" ++ i, windows $ onCurrentScreen W.view $ i)
|
||||||
|
-- Move window to workspace
|
||||||
|
, ("M4-S-" ++ i, windows $ onCurrentScreen W.shift $ i)
|
||||||
|
-- Copy window to workspace
|
||||||
|
, ("M4-M1-S-" ++ i, windows $ onCurrentScreen copy $ i) ]
|
||||||
|
| i <- myWorkspaceNames
|
||||||
|
]
|
||||||
|
|
||||||
|
-- https://stackoverflow.com/questions/33547168/xmonad-combine-dwm-style-workspaces-per-physical-screen-with-cycling-function
|
||||||
|
isOnScreen :: ScreenId -> WindowSpace -> Bool
|
||||||
|
isOnScreen s ws = s == unmarshallS (W.tag ws)
|
||||||
|
|
||||||
|
currentScreen :: X ScreenId
|
||||||
|
currentScreen = gets (W.screen . W.current . windowset)
|
||||||
|
|
||||||
|
spacesOnCurrentScreen :: WSType
|
||||||
|
spacesOnCurrentScreen = WSIs (isOnScreen <$> currentScreen)
|
||||||
|
|
||||||
|
emptySpacesOnCurrentScreen :: WSType
|
||||||
|
emptySpacesOnCurrentScreen = spacesOnCurrentScreen :&: emptyWS
|
||||||
|
|
||||||
|
myLayout = smartBorders
|
||||||
|
$ windowNavigation
|
||||||
|
$ mkToggle (single FULL)
|
||||||
|
$ (Mag.magnifiercz' 1.3 $ ThreeColMid 1 (3/100) (2/3))
|
||||||
|
||| Tall 1 (3/100) (2/3)
|
||||||
|
|
||||||
|
-- https://www.reddit.com/r/xmonad/comments/hm2tg0/how_to_toggle_floating_state_on_a_window/
|
||||||
|
-- Centre and float a window (retain size)
|
||||||
|
centreFloat win = do
|
||||||
|
(_, W.RationalRect x y w h) <- floatLocation win
|
||||||
|
windows $ W.float win (W.RationalRect ((1 - w) / 2) ((1 - h) / 2) w h)
|
||||||
|
return ()
|
||||||
|
|
||||||
|
-- If the window is floating then (f), if tiled then (n)
|
||||||
|
floatOrNot f n = withFocused $ \windowId -> do
|
||||||
|
floats <- gets (W.floating . windowset)
|
||||||
|
if windowId `M.member` floats -- if the current window is floating...
|
||||||
|
then f
|
||||||
|
else n
|
||||||
|
|
||||||
|
-- Float and centre a tiled window, sink a floating window
|
||||||
|
toggleFloat = floatOrNot (withFocused $ windows . W.sink) (withFocused float)
|
||||||
Loading…
Add table
Add a link
Reference in a new issue