mirror of
https://github.com/JulienMalka/snowfield.git
synced 2025-03-27 06:10:53 +01:00
Merge branch 'main' of github.com:JulienMalka/nix-config
This commit is contained in:
commit
b0c575228b
26 changed files with 676 additions and 523 deletions
250
flake.lock
generated
250
flake.lock
generated
|
@ -95,6 +95,39 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"crane_2": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"lanzaboote",
|
||||
"flake-compat"
|
||||
],
|
||||
"flake-utils": [
|
||||
"lanzaboote",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": [
|
||||
"lanzaboote",
|
||||
"rust-overlay"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681177078,
|
||||
"narHash": "sha256-ZNIjBDou2GOabcpctiQykEQVkI8BDwk7TyvlWlI4myE=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "0c9f468ff00576577d83f5019a66c557ede5acf6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
@ -144,6 +177,22 @@
|
|||
}
|
||||
},
|
||||
"flake-compat_4": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1673956053,
|
||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_5": {
|
||||
"locked": {
|
||||
"lastModified": 1688025799,
|
||||
"narHash": "sha256-ktpB4dRtnksm9F5WawoIkEneh1nrEvuxb5lJFt1iOyw=",
|
||||
|
@ -159,6 +208,27 @@
|
|||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1680392223,
|
||||
"narHash": "sha256-n3g7QFr85lDODKt250rkZj2IFS3i4/8HBU2yKHO3tqw=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "dcc36e45d054d7bb554c9cdab69093debd91a0b5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
|
@ -209,6 +279,46 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681202837,
|
||||
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "cfacdce06f30d2b68473a46042957675eebb3401",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"lanzaboote",
|
||||
"pre-commit-hooks-nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1660459072,
|
||||
"narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -306,6 +416,33 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"lanzaboote": {
|
||||
"inputs": {
|
||||
"crane": "crane_2",
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-parts": "flake-parts",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
||||
"rust-overlay": "rust-overlay_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1682802423,
|
||||
"narHash": "sha256-Fb5TeRTdvUlo/5Yi2d+FC8a6KoRLk2h1VE0/peMhWPs=",
|
||||
"owner": "nix-community",
|
||||
"repo": "lanzaboote",
|
||||
"rev": "64b903ca87d18cef2752c19c098af275c6e51d63",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "v0.3.0",
|
||||
"repo": "lanzaboote",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"linkal": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
|
@ -346,6 +483,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"master": {
|
||||
"locked": {
|
||||
"lastModified": 1692352441,
|
||||
"narHash": "sha256-cRx7uE6BQSW27WvnHqfuR5PIUvRXBftwqCKvRRMQN0w=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0b1525114a2a9bc8eeee774fec9e7b0f1b1e543c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0b1525114a2a9bc8eeee774fec9e7b0f1b1e543c",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-index-database": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -368,7 +521,7 @@
|
|||
},
|
||||
"nix-rfc-92": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-compat": "flake-compat_4",
|
||||
"lowdown-src": "lowdown-src",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs-regression": "nixpkgs-regression"
|
||||
|
@ -390,7 +543,7 @@
|
|||
},
|
||||
"nixd": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": [
|
||||
"unstable"
|
||||
]
|
||||
|
@ -411,9 +564,9 @@
|
|||
},
|
||||
"nixos-apple-silicon": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-compat": "flake-compat_5",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"rust-overlay": "rust-overlay_2"
|
||||
"rust-overlay": "rust-overlay_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1690804017,
|
||||
|
@ -479,6 +632,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1678872516,
|
||||
"narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9b8e5abb18324c7fe9f07cb100c3cd4a29cda8b8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-22.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1690179384,
|
||||
|
@ -559,6 +728,37 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks-nix": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"lanzaboote",
|
||||
"flake-compat"
|
||||
],
|
||||
"flake-utils": [
|
||||
"lanzaboote",
|
||||
"flake-utils"
|
||||
],
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681413034,
|
||||
"narHash": "sha256-/t7OjNQcNkeWeSq/CFLYVBfm+IEnkjoSm9iKvArnUUI=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "d3de8f69ca88fb6f8b09e5b598be5ac98d28ede5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"attic": "attic",
|
||||
|
@ -568,7 +768,9 @@
|
|||
"homepage": "homepage",
|
||||
"hyprland": "hyprland",
|
||||
"hyprpaper": "hyprpaper",
|
||||
"lanzaboote": "lanzaboote",
|
||||
"linkal": "linkal",
|
||||
"master": "master",
|
||||
"nix-index-database": "nix-index-database",
|
||||
"nix-rfc-92": "nix-rfc-92",
|
||||
"nixd": "nixd",
|
||||
|
@ -607,6 +809,31 @@
|
|||
}
|
||||
},
|
||||
"rust-overlay_2": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"lanzaboote",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1682129965,
|
||||
"narHash": "sha256-1KRPIorEL6pLpJR04FwAqqnt4Tzcm4MqD84yhlD+XSk=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "2c417c0460b788328220120c698630947547ee83",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"rust-overlay_3": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1686795910,
|
||||
|
@ -704,6 +931,21 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1690640159,
|
||||
|
|
|
@ -17,6 +17,8 @@
|
|||
|
||||
unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
|
||||
master.url = "github:NixOS/nixpkgs/0b1525114a2a9bc8eeee774fec9e7b0f1b1e543c";
|
||||
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
|
||||
colmena.url = "github:zhaofengli/colmena";
|
||||
|
@ -65,6 +67,11 @@
|
|||
|
||||
nix-rfc-92.url = "github:obsidiansystems/nix/dynamic-drvs";
|
||||
|
||||
lanzaboote = {
|
||||
url = "github:nix-community/lanzaboote/v0.3.0";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, ... }@inputs:
|
||||
|
@ -137,7 +144,7 @@
|
|||
|
||||
hydraJobs = {
|
||||
packages = packages;
|
||||
machines = lib.filterAttrs (n: v: n != "macintosh") (lib.mapAttrs (_: v: v.config.system.build.toplevel) self.nixosConfigurations);
|
||||
machines = lib.mapAttrs (_: v: v.config.system.build.toplevel) self.nixosConfigurations;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -21,12 +21,6 @@ with lib;
|
|||
xdg.configFile."hypr/hyprland.conf".text = ''
|
||||
exec-once = waybar & hyprpaper
|
||||
exec-once=dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY
|
||||
exec swayidle -w \
|
||||
timeout 300 'swaylock -f -c 000000' \
|
||||
timeout 600 'swaymsg "output * dpms off"' \
|
||||
resume 'swaymsg "output * dpms on"' \
|
||||
before-sleep 'swaylock -f -c 000000'
|
||||
|
||||
exec-once = nm-applet --indicator
|
||||
# Monitors
|
||||
monitor = eDP-1, preferred, auto, auto
|
||||
|
@ -34,19 +28,14 @@ with lib;
|
|||
# Input
|
||||
input {
|
||||
kb_layout = fr
|
||||
kb_variant = mac
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
natural_scroll = true
|
||||
tap-to-click = false
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
# General
|
||||
general {
|
||||
gaps_in = 4
|
||||
gaps_out = 8
|
||||
gaps_in = 3
|
||||
gaps_out = 5
|
||||
border_size = 2
|
||||
col.active_border = rgb(11111b)
|
||||
col.inactive_border = rgb(11111b)
|
||||
|
@ -62,18 +51,13 @@ with lib;
|
|||
|
||||
# Decorations
|
||||
decoration {
|
||||
rounding = 5
|
||||
active_opacity = 0.9
|
||||
blur_new_optimizations = on
|
||||
blur_size = 8
|
||||
blur_passes = 10
|
||||
blur = false
|
||||
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
rounding = 4
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = false
|
||||
}
|
||||
|
||||
|
||||
# Gestures
|
||||
gestures {
|
||||
|
@ -84,13 +68,13 @@ with lib;
|
|||
|
||||
# Variables
|
||||
$term = ${terminal}
|
||||
$browser = firefox
|
||||
$browser = chromium
|
||||
$editor = nvim
|
||||
$files = nemo
|
||||
$launcher = ${menu}
|
||||
|
||||
# Apps
|
||||
bind = SUPER, RETURN, exec, alacritty
|
||||
bind = SUPER, RETURN, exec, kitty
|
||||
bind = SUPER SHIFT, E, exec, $editor
|
||||
bind = SUPER SHIFT, F, exec, $files
|
||||
bind = SUPER SHIFT, B, exec, $browser
|
||||
|
@ -98,8 +82,8 @@ with lib;
|
|||
bind = SUPER, X, exec, power-menu
|
||||
|
||||
# Function keys
|
||||
bind = ,XF86MonBrightnessUp, exec, brightnessctl s +10
|
||||
bind = ,XF86MonBrightnessDown, exec, brightnessctl s 10-
|
||||
bind = ,XF86MonBrightnessUp, exec, brightnessctl s +10%
|
||||
bind = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
|
||||
|
||||
# Screenshots
|
||||
bind = , Print, exec, $screenshotarea
|
||||
|
@ -164,13 +148,52 @@ with lib;
|
|||
|
||||
'';
|
||||
xdg.configFile."hypr/hyprpaper.conf".text = ''
|
||||
preload = ${../../machines/macintosh/wallpaper.jpg}
|
||||
wallpaper = ,${../../machines/macintosh/wallpaper.jpg}
|
||||
preload = ${../../machines/x2100/wallpaper.jpg}
|
||||
wallpaper = ,${../../machines/x2100/wallpaper.jpg}
|
||||
'';
|
||||
|
||||
services.swayidle = {
|
||||
enable = true;
|
||||
systemdTarget = "hyprland-session.target";
|
||||
events = [
|
||||
{ event = "before-sleep"; command = "${pkgs.swaylock-effects}/bin/swaylock --config /home/julien/.config/swaylock/config"; }
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
home.packages = with pkgs; [ qt6.qtwayland libsForQt5.qt5.qtwayland hyprpaper swaylock swayidle ];
|
||||
programs.swaylock =
|
||||
{
|
||||
enable = true;
|
||||
package = pkgs.swaylock-effects;
|
||||
settings = {
|
||||
screenshots = true;
|
||||
clock = true;
|
||||
indicator = true;
|
||||
indicator-radius = 200;
|
||||
indicator-thickness = 20;
|
||||
grace = 0;
|
||||
grace-no-mouse = true;
|
||||
grace-no-touch = true;
|
||||
line-uses-ring = false;
|
||||
ignore-empty-password = true;
|
||||
show-failed-attempts = false;
|
||||
|
||||
font = "Fira Code";
|
||||
timestr = "%H:%M";
|
||||
datestr = "";
|
||||
effect-blur = "8x5";
|
||||
effect-vignette = "0.5:0.5";
|
||||
color = "00000000";
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
home.packages = with pkgs;
|
||||
[ qt6.qtwayland libsForQt5.qt5.qtwayland hyprpaper ];
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,7 +13,8 @@ with lib;
|
|||
programs.kitty = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
font_family Noto Color Emoji Regular
|
||||
font_family Noto Color Emoji Regular
|
||||
confirm_os_window_close 0
|
||||
font_family Fira Code Regular
|
||||
bold_font Fira Code Retina
|
||||
font_features FiraCode-Regular +zero +ss01 +ss02 +ss03 +ss04 +ss05 +cv31
|
||||
|
@ -22,6 +23,7 @@ with lib;
|
|||
shell_integration no-cursor
|
||||
cursor_shape block
|
||||
cursor_blink_interval 0
|
||||
window_padding_width 4
|
||||
|
||||
# Tab Management
|
||||
tab_bar_edge top
|
||||
|
|
|
@ -1,101 +0,0 @@
|
|||
|
||||
|
||||
[Filter.1]
|
||||
query = subject:"Formulaire d'externement"
|
||||
tags = +externement
|
||||
message = Externement
|
||||
|
||||
|
||||
[Filter.2]
|
||||
query = subject:/\[DG\]/
|
||||
tags = +dg
|
||||
message = Mail pour la DG
|
||||
|
||||
[Filter.3]
|
||||
query = subject:"Demande de malle"
|
||||
tags = +malle
|
||||
message = Malle
|
||||
|
||||
[Filter.4]
|
||||
query = subject:"Demande d'inscription de"
|
||||
tags = +thurnage
|
||||
message = Thurnage
|
||||
|
||||
[Filter.5]
|
||||
query = subject:"Formulaire situation de"
|
||||
tags = +situation
|
||||
message = Situation
|
||||
|
||||
[Filter.6]
|
||||
query = subject:"Inscription au thurnage général de"
|
||||
tags = +thurnage
|
||||
message = TG
|
||||
|
||||
[Filter.7]
|
||||
query = subject:"Prévision d'externement de"
|
||||
tags = +externement
|
||||
message = previsionext
|
||||
|
||||
[Filter.8]
|
||||
query = subject:"Demande d'accès"
|
||||
tags = +malle
|
||||
message = acces
|
||||
|
||||
[Filter.9]
|
||||
query = subject:"Rendu de malle"
|
||||
tags = +malle
|
||||
message = rendu
|
||||
|
||||
[Filter.10]
|
||||
query = subject:"Prolongation de la malle"
|
||||
tags = +malle
|
||||
message = prolong
|
||||
|
||||
[Filter.11]
|
||||
query = subject:"Fermeture de l'internat"
|
||||
tags = +fermeture
|
||||
message = fermeture
|
||||
|
||||
[Filter.12]
|
||||
query = subject:/\[COF\]/
|
||||
tags = +cof
|
||||
message = COF
|
||||
|
||||
[Filter.13]
|
||||
query = subject:"Modification inscription TG"
|
||||
tags= +thurnage
|
||||
|
||||
[Filter.14]
|
||||
query = subject:/\[Pouët-Pouêt\]/
|
||||
tags = +fanfare
|
||||
message = fanfare
|
||||
|
||||
[Filter.15]
|
||||
query = subject:/\[K-Fêt\]/
|
||||
tags = +kfet
|
||||
message = kfet
|
||||
|
||||
[Filter.16]
|
||||
query = subject:/\[Chef.fe.s\]/
|
||||
tags = +chefs
|
||||
message = chefs
|
||||
|
||||
[Filter.17]
|
||||
query = subject:/\[BC\]/
|
||||
tags = +bc
|
||||
message = bc
|
||||
|
||||
[Filter.18]
|
||||
query = subject:/\[>Pouët-Pouêt<\]/
|
||||
tags = +fanfare
|
||||
message = fanfare
|
||||
|
||||
|
||||
|
||||
[InboxFilter]
|
||||
|
||||
[MailMover]
|
||||
folders = ens/Inbox ens/DG
|
||||
rename = True
|
||||
ens/Inbox = 'tag:bc':ens/Bilan-Carbone 'tag:dg':ens/DG 'tag:COF':ens/COF 'tag:fanfare':ens/Fanfare 'tag:kfet':ens/K-Fet 'tag:chefs':ens/K-Fet/Chefs
|
||||
ens/DG = 'tag:externement':ens/DG/Externements 'tag:malle':ens/DG/Malles 'tag:thurnage':ens/DG/Thurnages 'tag:situation':ens/DG/Situations 'tag:fermeture':ens/DG/Fermeture
|
|
@ -6,68 +6,153 @@ with lib;
|
|||
{
|
||||
options.luj.emails = {
|
||||
enable = mkEnableOption "enable mail management";
|
||||
backend.enable = mkEnableOption "enable filtering backend";
|
||||
};
|
||||
|
||||
|
||||
config = mkMerge [
|
||||
(mkIf cfg.enable {
|
||||
programs.mbsync.enable = true;
|
||||
programs.neomutt.enable = true;
|
||||
programs.msmtp.enable = true;
|
||||
accounts.email = {
|
||||
accounts.ens = {
|
||||
address = "julien.malka@ens.fr";
|
||||
imap.host = "clipper.ens.fr";
|
||||
mbsync = {
|
||||
enable = true;
|
||||
create = "maildir";
|
||||
extraConfig.channel = {
|
||||
"CopyArrivalDate" = "yes";
|
||||
};
|
||||
config = mkIf cfg.enable {
|
||||
programs.mbsync.enable = true;
|
||||
programs.neomutt.enable = true;
|
||||
programs.msmtp.enable = true;
|
||||
accounts.email = {
|
||||
accounts.ens = {
|
||||
notmuch.enable = true;
|
||||
address = "julien.malka@ens.fr";
|
||||
imap.host = "clipper.ens.fr";
|
||||
mbsync = {
|
||||
enable = true;
|
||||
create = "maildir";
|
||||
extraConfig.channel = {
|
||||
"CopyArrivalDate" = "yes";
|
||||
};
|
||||
msmtp.enable = true;
|
||||
primary = true;
|
||||
realName = "Julien Malka";
|
||||
passwordCommand = "${pkgs.coreutils}/bin/cat /home/julien/.config/ens-mail-passwd";
|
||||
smtp = {
|
||||
host = "clipper.ens.fr";
|
||||
};
|
||||
userName = "jmalka";
|
||||
};
|
||||
msmtp.enable = true;
|
||||
primary = true;
|
||||
realName = "Julien Malka";
|
||||
passwordCommand = "${pkgs.coreutils}/bin/cat /home/julien/.config/ens-mail-pw";
|
||||
smtp = {
|
||||
host = "clipper.ens.fr";
|
||||
};
|
||||
userName = "jmalka";
|
||||
};
|
||||
services.mbsync = {
|
||||
enable = true;
|
||||
frequency = "minutely";
|
||||
verbose = true;
|
||||
accounts.work = {
|
||||
notmuch.enable = true;
|
||||
address = "julien@malka.sh";
|
||||
imap.host = "mail.julienmalka.me";
|
||||
mbsync = {
|
||||
enable = true;
|
||||
create = "maildir";
|
||||
extraConfig.channel = {
|
||||
"CopyArrivalDate" = "yes";
|
||||
};
|
||||
};
|
||||
msmtp.enable = true;
|
||||
primary = false;
|
||||
realName = "Julien Malka";
|
||||
passwordCommand = "${pkgs.coreutils}/bin/cat /home/julien/.config/work-mail-pw";
|
||||
smtp = {
|
||||
host = "mail.julienmalka.me";
|
||||
};
|
||||
userName = "julien@malka.sh";
|
||||
};
|
||||
xdg.configFile = {
|
||||
"neomutt/neomuttrc".source = lib.mkForce ./neomuttrc;
|
||||
|
||||
accounts.telecom = {
|
||||
notmuch.enable = true;
|
||||
address = "julien.malka@telecom-paris.fr";
|
||||
imap.host = "z.imt.fr";
|
||||
mbsync = {
|
||||
enable = true;
|
||||
create = "maildir";
|
||||
extraConfig.channel = {
|
||||
"CopyArrivalDate" = "yes";
|
||||
};
|
||||
};
|
||||
msmtp.enable = true;
|
||||
primary = false;
|
||||
realName = "Julien Malka";
|
||||
passwordCommand = "${pkgs.coreutils}/bin/cat /home/julien/.config/telecom-mail-pw";
|
||||
smtp = {
|
||||
host = "z.imt.fr";
|
||||
};
|
||||
userName = "julien.malka@telecom-paris.fr";
|
||||
};
|
||||
|
||||
accounts.dgnum = {
|
||||
notmuch.enable = true;
|
||||
address = "luj@dgnum.eu";
|
||||
imap.host = "kurisu.lahfa.xyz";
|
||||
mbsync = {
|
||||
enable = true;
|
||||
create = "maildir";
|
||||
extraConfig.channel = {
|
||||
"CopyArrivalDate" = "yes";
|
||||
};
|
||||
};
|
||||
msmtp.enable = true;
|
||||
primary = false;
|
||||
realName = "Julien Malka";
|
||||
passwordCommand = "${pkgs.coreutils}/bin/cat /home/julien/.config/dgnum-mail-pw";
|
||||
smtp = {
|
||||
host = "kurisu.lahfa.xyz";
|
||||
};
|
||||
userName = "luj@dgnum.eu";
|
||||
};
|
||||
|
||||
|
||||
})
|
||||
};
|
||||
|
||||
(mkIf (cfg.enable && cfg.backend.enable) {
|
||||
programs.afew.enable = true;
|
||||
accounts.email.accounts.ens.notmuch.enable = true;
|
||||
services.mbsync.postExec = "${pkgs.notmuch}/bin/notmuch new";
|
||||
programs.notmuch = {
|
||||
enable = true;
|
||||
new.tags = [ "new" ];
|
||||
hooks.postNew = ''
|
||||
${pkgs.afew}/bin/afew --tag --new
|
||||
${pkgs.afew}/bin/afew --move-mails
|
||||
'';
|
||||
};
|
||||
xdg.configFile = {
|
||||
"afew/config".source = lib.mkForce ./afewconfig;
|
||||
};
|
||||
services.mbsync = {
|
||||
enable = true;
|
||||
frequency = "minutely";
|
||||
verbose = true;
|
||||
};
|
||||
services.mbsync.postExec = "${pkgs.notmuch}/bin/notmuch new";
|
||||
programs.notmuch = {
|
||||
enable = true;
|
||||
new.tags = [ ];
|
||||
hooks.postNew = ''
|
||||
# julien@malka.sh
|
||||
notmuch tag +work-inbox -- folder:work/Inbox
|
||||
notmuch tag +work-lobsters -- folder:work/Inbox/lobsters
|
||||
notmuch tag +work-dn42 -- folder:work/Inbox/dn42
|
||||
notmuch tag +work-fosdem -- folder:work/Inbox/fosdem
|
||||
notmuch tag +work-frnog -- folder:work/Inbox/frnog
|
||||
notmuch tag +work-github -- folder:work/Inbox/github
|
||||
notmuch tag +work-netdata -- folder:work/Inbox/netdata
|
||||
notmuch tag +work-nixos-discourse -- folder:work/Inbox/nixos-discourse
|
||||
notmuch tag +work-proxmox -- folder:work/Inbox/proxmox
|
||||
|
||||
#julien.malka@ens.fr
|
||||
notmuch tag +ens-inbox path:ens/Inbox/**
|
||||
notmuch tag +ens-bilan-carbone -ens-inbox -- path:ens/Bilan-Carbone/**
|
||||
notmuch tag +ens-dg -ens-inbox -- path:ens/DG/**
|
||||
notmuch tag +ens-cof -ens-inbox -- path:ens/COF/**
|
||||
notmuch tag +ens-fanfare -ens-inbox -- path:ens/Fanfare/**
|
||||
notmuch tag +ens-kfet -ens-inbox -- path:ens/K-Fet/**
|
||||
|
||||
|
||||
})
|
||||
#julien.malka@telecom-paris.fr
|
||||
notmuch tag +telecom-inbox path:telecom/Inbox/**
|
||||
|
||||
#luj@dgnum.eu
|
||||
notmuch tag +dgnum-inbox path:dgnum/Inbox/**
|
||||
notmuch tag +dgnum-bureau -dgnum-inbox -- path:dgnum/Inbox/Bureau/**
|
||||
notmuch tag +dgnum-nixcon -dgnum-inbox -- path:dgnum/Inbox/NixCon/**
|
||||
|
||||
'';
|
||||
};
|
||||
|
||||
xdg.configFile = {
|
||||
"neomutt/neomuttrc".source = lib.mkForce ./neomuttrc;
|
||||
"neomutt/dracula.muttrc".source = lib.mkForce ./dracula.muttrc;
|
||||
"neomutt/ens.profile".source = lib.mkForce ./ens.profile;
|
||||
"neomutt/telecom.profile".source = lib.mkForce ./telecom.profile;
|
||||
"neomutt/work.profile".source = lib.mkForce ./work.profile;
|
||||
"neomutt/discourse.profile".source = lib.mkForce ./discourse.profile;
|
||||
"neomutt/dgnum.profile".source = lib.mkForce ./dgnum.profile;
|
||||
};
|
||||
|
||||
|
||||
];
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
|
3
home-manager-modules/mails/dgnum.profile
Normal file
3
home-manager-modules/mails/dgnum.profile
Normal file
|
@ -0,0 +1,3 @@
|
|||
set from = "julien.malka@dgnum.eu"
|
||||
set record=+dgnum/Sent
|
||||
set collapse_unread = no
|
4
home-manager-modules/mails/discourse.profile
Normal file
4
home-manager-modules/mails/discourse.profile
Normal file
|
@ -0,0 +1,4 @@
|
|||
set collapse_unread = yes
|
||||
set from = "julien@malka.sh"
|
||||
set record= +work/Sent
|
||||
|
42
home-manager-modules/mails/dracula.muttrc
Normal file
42
home-manager-modules/mails/dracula.muttrc
Normal file
|
@ -0,0 +1,42 @@
|
|||
###############################################################################
|
||||
# Dracula Theme for Mutt: https://draculatheme.com/
|
||||
#
|
||||
# @author Paul Townsend <paul@caprica.org>
|
||||
|
||||
# general ------------ foreground ---- background -----------------------------
|
||||
color error color231 color212
|
||||
color indicator color231 color241
|
||||
color markers color210 default
|
||||
color message default default
|
||||
color normal default default
|
||||
color prompt default default
|
||||
color search color84 default
|
||||
color status color141 color236
|
||||
color tilde color231 default
|
||||
color tree color141 default
|
||||
|
||||
# message index ------ foreground ---- background -----------------------------
|
||||
color index color210 default ~D # deleted messages
|
||||
color index color84 default ~F # flagged messages
|
||||
color index color117 default ~N # new messages
|
||||
color index color212 default ~Q # messages which have been replied to
|
||||
color index color215 default ~T # tagged messages
|
||||
color index color141 default ~v # messages part of a collapsed thread
|
||||
|
||||
# message headers ---- foreground ---- background -----------------------------
|
||||
color hdrdefault color117 default
|
||||
color header color231 default ^Subject:.*
|
||||
|
||||
# message body ------- foreground ---- background -----------------------------
|
||||
color attachment color228 default
|
||||
color body color231 default [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+ # email addresses
|
||||
color body color228 default (https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+ # URLs
|
||||
color body color231 default (^|[[:space:]])\\*[^[:space:]]+\\*([[:space:]]|$) # *bold* text
|
||||
color body color231 default (^|[[:space:]])_[^[:space:]]+_([[:space:]]|$) # _underlined_ text
|
||||
color body color231 default (^|[[:space:]])/[^[:space:]]+/([[:space:]]|$) # /italic/ text
|
||||
color quoted color61 default
|
||||
color quoted1 color117 default
|
||||
color quoted2 color84 default
|
||||
color quoted3 color215 default
|
||||
color quoted4 color212 default
|
||||
color signature color212 default
|
4
home-manager-modules/mails/ens.profile
Normal file
4
home-manager-modules/mails/ens.profile
Normal file
|
@ -0,0 +1,4 @@
|
|||
set from = "julien.malka@ens.fr"
|
||||
set record="+ens/Sent\ Messages"
|
||||
set collapse_unread = no
|
||||
|
|
@ -1,8 +1,6 @@
|
|||
set from = "julien.malka@ens.fr"
|
||||
|
||||
set from = "julien@malka.sh"
|
||||
# Nom complet de l'expéditeur
|
||||
set realname = "Julien Malka"
|
||||
|
||||
# Génération du champs from
|
||||
set use_from = yes
|
||||
|
||||
|
@ -12,20 +10,14 @@ set mark_old=no
|
|||
set editor = "nvim -c 'set tw=72' -c 'set wrap'"
|
||||
#set editor="vim +':set textwidth=0' +':set wrapmargin=0' +':set wrap'"
|
||||
#set wrap="72"
|
||||
set folder = ~/Maildir/ens
|
||||
set folder = ~/Maildir
|
||||
|
||||
#set spoolfile=/home/julien/Maildir/ens/Inbox
|
||||
set mbox_type=Maildir
|
||||
set virtual_spoolfile=yes
|
||||
set header_cache=~/.cache/mutt
|
||||
set sidebar_visible = yes
|
||||
set record = "+Sent\ Messages"
|
||||
#mailboxes =Inbox =DG =DG/Malles =DG/Externements =DG/Thurnages =DG/Situations =DG/Fermeture =Sent\ Messages
|
||||
#named-mailboxes "Malles" =DG/Malles
|
||||
#named-mailboxes "Externements" =DG/Externements
|
||||
#named-mailboxes "Thurnages" =DG/Thurnages
|
||||
#named-mailboxes "Situations" =DG/Situations
|
||||
#named-mailboxes "Fermeture" =DG/Fermeture
|
||||
#named-mailboxes "Sent" =Sent\ Messages
|
||||
#set record = "+Sent\ Messages"
|
||||
set nm_unread_tag = unread
|
||||
set mail_check_stats=yes
|
||||
set sidebar_short_path = yes
|
||||
|
@ -33,17 +25,32 @@ set sidebar_short_path = yes
|
|||
|
||||
set timeout=10
|
||||
set mail_check=10
|
||||
virtual-mailboxes "Inbox" "notmuch://?query=tag:inbox and NOT tag:dg and NOT tag:cof and NOT tag:fanfare and NOT tag:kfet and NOT tag:chefs and NOT tag:bc"
|
||||
virtual-mailboxes "K-Fêt" "notmuch://?query=tag:kfet"
|
||||
virtual-mailboxes "Chefs" "notmuch://?query=tag:chefs"
|
||||
virtual-mailboxes "Bilan Carbone" "notmuch://?query=tag:bc"
|
||||
virtual-mailboxes "DG" "notmuch://?query=tag:dg and NOT tag:externement and NOT tag:fermeture and NOT tag:malle and NOT tag:situation and NOT tag:thurnage"
|
||||
virtual-mailboxes "Externements" "notmuch://?query=tag:externement"
|
||||
virtual-mailboxes "Fermeture" "notmuch://?query=tag:fermeture"
|
||||
virtual-mailboxes "Malles" "notmuch://?query=tag:malle"
|
||||
virtual-mailboxes "Situations" "notmuch://?query=tag:situation"
|
||||
virtual-mailboxes "Thurnages" "notmuch://?query=tag:thurnage"
|
||||
virtual-mailboxes "Fanfare" "notmuch://?query=tag:fanfare"
|
||||
named-mailboxes "-----work-----" =sep1
|
||||
virtual-mailboxes "inbox" "notmuch://?query=tag:work-inbox
|
||||
virtual-mailboxes "dn42" "notmuch://?query=tag:work-dn42
|
||||
virtual-mailboxes "fosdem" "notmuch://?query=tag:work-fosdem
|
||||
virtual-mailboxes "frnog" "notmuch://?query=tag:work-frnog
|
||||
virtual-mailboxes "github" "notmuch://?query=tag:work-github
|
||||
virtual-mailboxes "lobsters" "notmuch://?query=tag:work-lobsters
|
||||
virtual-mailboxes "netdata" "notmuch://?query=tag:work-netdata
|
||||
virtual-mailboxes "nixos-discourse" "notmuch://?query=tag:work-nixos-discourse
|
||||
virtual-mailboxes "proxmox" "notmuch://?query=tag:work-proxmox
|
||||
|
||||
named-mailboxes "-----ens-----" =sep2
|
||||
virtual-mailboxes "inbox" "notmuch://?query=tag:ens-inbox
|
||||
virtual-mailboxes "bilan-carbone" "notmuch://?query=tag:ens-bilan-carbone
|
||||
virtual-mailboxes "cof" "notmuch://?query=tag:ens-cof
|
||||
virtual-mailboxes "dg" "notmuch://?query=tag:ens-dg
|
||||
virtual-mailboxes "kfet" "notmuch://?query=tag:ens-kfet
|
||||
|
||||
named-mailboxes "---telecom---" =sep3
|
||||
virtual-mailboxes "inbox" "notmuch://?query=tag:telecom-inbox
|
||||
|
||||
named-mailboxes "----dgnum----" =sep4
|
||||
virtual-mailboxes "inbox" "notmuch://?query=tag:dgnum-inbox
|
||||
virtual-mailboxes "bureau" "notmuch://?query=tag:dgnum-bureau
|
||||
virtual-mailboxes "nixcon" "notmuch://?query=tag:dgnum-nixcon
|
||||
|
||||
|
||||
set sidebar_width=15
|
||||
set sidebar_divider_char='|'
|
||||
|
@ -61,6 +68,7 @@ set nm_default_url = "notmuch:///home/julien/Maildir"
|
|||
macro index \\ "<vfolder-from-query>"
|
||||
set metoo=yes
|
||||
|
||||
set query_command="notmuch-addrlookup --format=mutt '%s'"
|
||||
set text_flowed
|
||||
|
||||
set collapse_unread = no
|
||||
|
@ -68,17 +76,39 @@ set collapse_all = yes
|
|||
|
||||
bind index - collapse-thread
|
||||
|
||||
bind editor <Tab> complete-query
|
||||
bind editor ^T complete
|
||||
|
||||
|
||||
|
||||
set sort = threads
|
||||
set sort_aux = reverse-last-date-received
|
||||
|
||||
folder-hook . 'source /home/julien/dotfiles/profile.default'
|
||||
folder-hook "DG" 'source /home/julien/dotfiles/profile.dg'
|
||||
folder-hook "K-Fêt" 'source /home/julien/dotfiles/profile.kfet'
|
||||
folder-hook "Chefs" 'source /home/julien/dotfiles/profile.chefs'
|
||||
|
||||
folder-hook "ens-inbox" 'source ~/.config/neomutt/ens.profile'
|
||||
folder-hook "ens-bilan-carbone" 'source ~/.config/neomutt/ens.profile'
|
||||
folder-hook "ens-cof" 'source ~/.config/neomutt/ens.profile'
|
||||
folder-hook "ens-dg" 'source ~/.config/neomutt/ens.profile'
|
||||
folder-hook "ens-kfet" 'source ~/.config/neomutt/ens.profile'
|
||||
|
||||
folder-hook "telecom-inbox" 'source ~/.config/neomutt/telecom.profile'
|
||||
|
||||
folder-hook "work-nixos-discourse" 'source ~/.config/neomutt/discourse.profile'
|
||||
folder-hook "work-dn42" 'source ~/.config/neomutt/work.profile'
|
||||
folder-hook "work-frnog" 'source ~/.config/neomutt/work.profile'
|
||||
folder-hook "work-inbox" 'source ~/.config/neomutt/work.profile'
|
||||
folder-hook "work-github" 'source ~/.config/neomutt/work.profile'
|
||||
folder-hook "work-fosdem" 'source ~/.config/neomutt/work.profile'
|
||||
folder-hook "work-proxmox" 'source ~/.config/neomutt/work.profile'
|
||||
folder-hook "work-netdata" 'source ~/.config/neomutt/work.profile'
|
||||
folder-hook "work-lobsters" 'source ~/.config/neomutt/work.profile'
|
||||
|
||||
folder-hook "dgnum-inbox" 'source ~/.config/neomutt/dgnum.profile'
|
||||
folder-hook "dgnum-bureau" 'source ~/.config/neomutt/dgnum.profile'
|
||||
folder-hook "dgnum-nixcon" 'source ~/.config/neomutt/dgnum.profile'
|
||||
|
||||
set sidebar_format = '%D%* %?N?(%N)?%*'
|
||||
color sidebar_unread yellow default
|
||||
|
||||
source ~/dotfiles/dracula.muttrc
|
||||
source dracula.muttrc
|
||||
set sendmail = "msmtp"
|
||||
|
|
3
home-manager-modules/mails/telecom.profile
Normal file
3
home-manager-modules/mails/telecom.profile
Normal file
|
@ -0,0 +1,3 @@
|
|||
set from = "julien.malka@telecom-paris.fr"
|
||||
set record=+telecom/Sent
|
||||
set collapse_unread = no
|
4
home-manager-modules/mails/work.profile
Normal file
4
home-manager-modules/mails/work.profile
Normal file
|
@ -0,0 +1,4 @@
|
|||
set from = "julien@malka.sh"
|
||||
set record= +work/Sent
|
||||
set collapse_unread = no
|
||||
|
|
@ -50,7 +50,7 @@ with lib;
|
|||
tooltip-format-enumerate-connected = "{device_alias} {device_address}";
|
||||
};
|
||||
"network" = {
|
||||
interface = "wlp1s0f0";
|
||||
interface = "wlp3s0";
|
||||
format = "{ifname}";
|
||||
format-wifi = "<span color='#cba6f7'> </span>{essid}";
|
||||
format-ethernet = "{ipaddr}/{cidr} ";
|
||||
|
@ -59,8 +59,8 @@ with lib;
|
|||
};
|
||||
"battery" = {
|
||||
format = "<span color='#cba6f7'>{icon}</span> {capacity}%";
|
||||
format-icons = [ "" "" "" "" "" "" "" "" "" "" ];
|
||||
format-charging = "<span color='#cba6f7'></span> {capacity}%";
|
||||
format-icons = [ "" "" "" "" "" ];
|
||||
format-charging = "<span color='#cba6f7'></span> {capacity}%";
|
||||
tooltip = false;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -3,10 +3,19 @@ inputs: final: prev:
|
|||
with builtins;
|
||||
|
||||
let
|
||||
overlay-unstable = arch: final: prev: {
|
||||
unstable = inputs.unstable.legacyPackages."${arch}";
|
||||
stable = inputs.nixpkgs.legacyPackages."${arch}";
|
||||
};
|
||||
overlay-unstable = arch: final: prev:
|
||||
let
|
||||
master-patched-src = (import inputs.master { system = arch; }).applyPatches {
|
||||
name = "nixpkgs-patches";
|
||||
src = inputs.master;
|
||||
patches = [ ../patches/signal.patch ];
|
||||
};
|
||||
in
|
||||
{
|
||||
unstable = inputs.unstable.legacyPackages."${arch}";
|
||||
master-patched = import master-patched-src { system = arch; };
|
||||
stable = inputs.nixpkgs.legacyPackages."${arch}";
|
||||
};
|
||||
in
|
||||
{
|
||||
|
||||
|
@ -24,6 +33,7 @@ in
|
|||
inputs.simple-nixos-mailserver.nixosModule
|
||||
inputs.hyprland.nixosModules.default
|
||||
inputs.attic.nixosModules.atticd
|
||||
inputs.lanzaboote.nixosModules.lanzaboote
|
||||
inputs.nix-index-database.nixosModules.nix-index
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
|
|
|
@ -42,11 +42,6 @@ inputs: lib: with lib; let
|
|||
ipv4 = { public = "212.129.40.11"; vpn = "100.100.45.12"; };
|
||||
ipv6 = { public = "2a01:e0a:5f9:9681:5880:c9ff:fe9f:3dfb"; vpn = "fd7a:115c:a1e0::c"; };
|
||||
};
|
||||
macintosh = {
|
||||
arch = "aarch64-linux";
|
||||
nixpkgs_version = inputs.nixos-apple-silicon.inputs.nixpkgs;
|
||||
hm_version = inputs.home-manager;
|
||||
};
|
||||
x2100 = {
|
||||
arch = "x86_64-linux";
|
||||
nixpkgs_version = inputs.nixpkgs;
|
||||
|
|
|
@ -1,113 +0,0 @@
|
|||
{ config, pkgs, lib, inputs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[
|
||||
# Include the results of the hardware scan.
|
||||
./hardware.nix
|
||||
./home-julien.nix
|
||||
../../users/julien.nix
|
||||
../../users/default.nix
|
||||
inputs.nixos-apple-silicon.nixosModules.apple-silicon-support
|
||||
];
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = false;
|
||||
nixpkgs.config.allowUnsupportedSystem = false;
|
||||
networking.hostName = "macintosh"; # Define your hostname.
|
||||
|
||||
networking.wireless.enable = false;
|
||||
|
||||
hardware.asahi.addEdgeKernelConfig = true;
|
||||
hardware.asahi.useExperimentalGPUDriver = true;
|
||||
hardware.asahi.pkgs = lib.mkDefault pkgs;
|
||||
hardware.asahi.experimentalGPUInstallMode = "replace";
|
||||
|
||||
|
||||
programs.hyprland.enable = true;
|
||||
programs.hyprland.package = pkgs.hyprland;
|
||||
environment.sessionVariables = {
|
||||
LIBSEAT_BACKEND = "logind";
|
||||
};
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
layout = "fr";
|
||||
displayManager.gdm.enable = true;
|
||||
libinput = {
|
||||
enable = true;
|
||||
touchpad.naturalScrolling = true;
|
||||
};
|
||||
};
|
||||
|
||||
services.tailscale.enable = true;
|
||||
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
|
||||
|
||||
networking.networkmanager.dns = "systemd-resolved";
|
||||
services.resolved.enable = true;
|
||||
|
||||
|
||||
time.timeZone = "Europe/Paris";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
useXkbConfig = true; # use xkbOptions in tty.
|
||||
};
|
||||
|
||||
hardware.asahi.peripheralFirmwareDirectory = ./firmware;
|
||||
|
||||
hardware.opengl.enable = true;
|
||||
hardware.opengl.driSupport = true;
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
security.polkit.enable = true;
|
||||
|
||||
services.tlp.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
tailscale
|
||||
brightnessctl
|
||||
];
|
||||
|
||||
services.printing.enable = true;
|
||||
services.avahi.enable = true;
|
||||
services.avahi.nssmdns = true;
|
||||
# for a WiFi printer
|
||||
services.avahi.openFirewall = true;
|
||||
|
||||
services.davfs2 = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
security.pam.services.swaylock = { };
|
||||
|
||||
programs.ssh.startAgent = true;
|
||||
|
||||
programs.adb.enable = true;
|
||||
services.udev.packages = [
|
||||
pkgs.android-udev-rules
|
||||
];
|
||||
|
||||
services.autofs = {
|
||||
enable = true;
|
||||
debug = true;
|
||||
autoMaster =
|
||||
let
|
||||
mapConf = pkgs.writeText "auto" ''
|
||||
nuage -fstype=davfs,uid=1000,file_mode=600,dir_mode=700,conf=/home/julien/.davfs2/davfs2.conf,rw :https\://nuage.malka.family/remote.php/webdav/
|
||||
'';
|
||||
in
|
||||
''
|
||||
/home/julien/clouds file:${mapConf}
|
||||
'';
|
||||
};
|
||||
|
||||
system.stateVersion = "23.05"; # Did you read the comment?
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
|
@ -1,40 +0,0 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "usb_storage" "sdhci_pci" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/d01369d1-b6ad-4fef-b73e-d1d56ec249ca";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/1070-1613";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp1s0f0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand";
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
{
|
||||
|
||||
sops.secrets.ssh-macintosh-pub = {
|
||||
owner = "julien";
|
||||
path = "/home/julien/.ssh/id_ed25519.pub";
|
||||
mode = "0644";
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/ssh-macintosh-pub;
|
||||
};
|
||||
|
||||
sops.secrets.ssh-macintosh-priv = {
|
||||
owner = "julien";
|
||||
path = "/home/julien/.ssh/id_ed25519";
|
||||
mode = "0600";
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/ssh-macintosh-priv;
|
||||
};
|
||||
|
||||
luj.hmgr.julien =
|
||||
{
|
||||
home.stateVersion = "22.11";
|
||||
luj.programs.neovim.enable = true;
|
||||
luj.programs.ssh-client.enable = true;
|
||||
luj.programs.git.enable = true;
|
||||
luj.programs.gtk.enable = true;
|
||||
luj.programs.alacritty.enable = true;
|
||||
luj.programs.hyprland.enable = true;
|
||||
luj.programs.waybar.enable = true;
|
||||
luj.programs.kitty.enable = true;
|
||||
|
||||
programs.rofi = {
|
||||
enable = true;
|
||||
package = pkgs.rofi-wayland;
|
||||
font = "Fira Font";
|
||||
theme = "DarkBlue";
|
||||
};
|
||||
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
enableFishIntegration = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
|
||||
home.pointerCursor = {
|
||||
name = "Adwaita";
|
||||
package = pkgs.gnome.adwaita-icon-theme;
|
||||
size = 15;
|
||||
x11 = {
|
||||
enable = true;
|
||||
defaultCursor = "Adwaita";
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs;
|
||||
[
|
||||
du-dust
|
||||
kitty
|
||||
jq
|
||||
lazygit
|
||||
fira-code
|
||||
unstable.firefox
|
||||
feh
|
||||
meld
|
||||
vlc
|
||||
stable.nerdfonts
|
||||
libreoffice
|
||||
font-awesome
|
||||
nodejs
|
||||
neomutt
|
||||
htop
|
||||
evince
|
||||
mosh
|
||||
obsidian
|
||||
zotero
|
||||
flameshot
|
||||
kitty
|
||||
networkmanagerapplet
|
||||
element-desktop
|
||||
xdg-utils
|
||||
sops
|
||||
coq
|
||||
cvc5
|
||||
coqPackages.coqide
|
||||
(why3.withProvers
|
||||
[
|
||||
unstable.cvc4
|
||||
alt-ergo
|
||||
z3
|
||||
])
|
||||
];
|
||||
|
||||
fonts.fontconfig.enable = true;
|
||||
|
||||
home.keyboard = {
|
||||
layout = "fr";
|
||||
};
|
||||
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
}
|
Binary file not shown.
Before Width: | Height: | Size: 467 KiB |
|
@ -10,8 +10,12 @@
|
|||
../../users/default.nix
|
||||
];
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = false;
|
||||
boot.loader.systemd-boot.enable = lib.mkForce false;
|
||||
boot.lanzaboote = {
|
||||
enable = true;
|
||||
pkiBundle = "/etc/secureboot";
|
||||
};
|
||||
|
||||
networking.hostName = "x2100";
|
||||
|
||||
networking.wireless.enable = false;
|
||||
|
@ -22,14 +26,12 @@
|
|||
LIBSEAT_BACKEND = "logind";
|
||||
};
|
||||
|
||||
services.logind.lidSwitch = "suspend";
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
layout = "fr";
|
||||
displayManager.gdm.enable = true;
|
||||
libinput = {
|
||||
enable = true;
|
||||
touchpad.naturalScrolling = true;
|
||||
};
|
||||
};
|
||||
|
||||
services.tailscale.enable = true;
|
||||
|
@ -60,6 +62,7 @@
|
|||
environment.systemPackages = with pkgs; [
|
||||
tailscale
|
||||
brightnessctl
|
||||
sbctl
|
||||
];
|
||||
|
||||
services.printing.enable = true;
|
||||
|
@ -80,6 +83,7 @@
|
|||
services.udev.packages = [
|
||||
pkgs.android-udev-rules
|
||||
];
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
|
||||
services.autofs = {
|
||||
enable = true;
|
||||
|
|
|
@ -5,36 +5,37 @@
|
|||
|
||||
{
|
||||
imports =
|
||||
[
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "usb_storage" "sdhci_pci" ];
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/d01369d1-b6ad-4fef-b73e-d1d56ec249ca";
|
||||
fsType = "ext4";
|
||||
{ device = "/dev/nvme0n1p1";
|
||||
fsType = "bcachefs";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/1070-1613";
|
||||
{ device = "/dev/disk/by-uuid/72EA-E988";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/2c19cb7a-bf8d-4bd3-ad61-ee3c27d57998"; }
|
||||
];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp1s0f0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand";
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
@ -1,22 +1,6 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
{
|
||||
|
||||
sops.secrets.ssh-macintosh-pub = {
|
||||
owner = "julien";
|
||||
path = "/home/julien/.ssh/id_ed25519.pub";
|
||||
mode = "0644";
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/ssh-macintosh-pub;
|
||||
};
|
||||
|
||||
sops.secrets.ssh-macintosh-priv = {
|
||||
owner = "julien";
|
||||
path = "/home/julien/.ssh/id_ed25519";
|
||||
mode = "0600";
|
||||
format = "binary";
|
||||
sopsFile = ../../secrets/ssh-macintosh-priv;
|
||||
};
|
||||
|
||||
luj.hmgr.julien =
|
||||
{
|
||||
home.stateVersion = "22.11";
|
||||
|
@ -28,6 +12,7 @@
|
|||
luj.programs.hyprland.enable = true;
|
||||
luj.programs.waybar.enable = true;
|
||||
luj.programs.kitty.enable = true;
|
||||
luj.emails.enable = true;
|
||||
|
||||
programs.rofi = {
|
||||
enable = true;
|
||||
|
@ -59,7 +44,6 @@
|
|||
jq
|
||||
lazygit
|
||||
fira-code
|
||||
unstable.firefox
|
||||
feh
|
||||
meld
|
||||
vlc
|
||||
|
@ -79,8 +63,10 @@
|
|||
element-desktop
|
||||
xdg-utils
|
||||
sops
|
||||
step-cli
|
||||
coq
|
||||
cvc5
|
||||
master-patched.signal-desktop-beta
|
||||
coqPackages.coqide
|
||||
(why3.withProvers
|
||||
[
|
||||
|
@ -88,6 +74,9 @@
|
|||
alt-ergo
|
||||
z3
|
||||
])
|
||||
libsForQt5.neochat
|
||||
scli
|
||||
texlive.combined.scheme-full
|
||||
];
|
||||
|
||||
fonts.fontconfig.enable = true;
|
||||
|
@ -100,6 +89,24 @@
|
|||
enable = true;
|
||||
};
|
||||
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
commandLineArgs = [
|
||||
"--ozone-platform-hint=wayland"
|
||||
"--load-media-router-component-extension=1"
|
||||
];
|
||||
extensions = [
|
||||
{ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # uBlock Origin
|
||||
{ id = "ldlghkoiihaelfnggonhjnfiabmaficg"; } # Alt+Q switcher
|
||||
{ id = "enjjhajnmggdgofagbokhmifgnaophmh"; } # Resolution Zoom for HiDPI
|
||||
{ id = "fihnjjcciajhdojfnbdddfaoknhalnja"; } # I don't care about cookies
|
||||
{ id = "ekhagklcjbdpajgpjgmbionohlpdbjgc"; } # Zotero Connector
|
||||
{ id = "hlepfoohegkhhmjieoechaddaejaokhf"; } # Refined GitHub
|
||||
{ id = "nngceckbapebfimnlniiiahkandclblb"; } # Bitwarden
|
||||
{ id = "dcpihecpambacapedldabdbpakmachpb"; updateUrl = "https://raw.githubusercontent.com/iamadamdev/bypass-paywalls-chrome/master/src/updates/updates.xml"; }
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
|
48
patches/signal.patch
Normal file
48
patches/signal.patch
Normal file
|
@ -0,0 +1,48 @@
|
|||
From 08715717912f84e2b17b191c2e8f23151c7df877 Mon Sep 17 00:00:00 2001
|
||||
From: Morantoine <71721545+Morantoine@users.noreply.github.com>
|
||||
Date: Tue, 15 Aug 2023 11:23:23 +0200
|
||||
Subject: [PATCH 1/2] signal-desktop: 6.27.1 -> 6.28.0
|
||||
|
||||
---
|
||||
.../networking/instant-messengers/signal-desktop/default.nix | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
|
||||
index ea1ab235fc466..5e9119b08f7d2 100644
|
||||
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
|
||||
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
|
||||
@@ -1,8 +1,8 @@
|
||||
{ callPackage }: builtins.mapAttrs (pname: attrs: callPackage ./generic.nix (attrs // { inherit pname; })) {
|
||||
signal-desktop = {
|
||||
dir = "Signal";
|
||||
- version = "6.27.1";
|
||||
- hash = "sha256-nEOt6bep6SqhAab8yD9NlRrDGU2IvZeOxSqPj2u1bio=";
|
||||
+ version = "6.28.0";
|
||||
+ hash = "sha256-zJURX5VygBvW+0v29xqOx9HmQgFgfAbxoacd7ex3iec";
|
||||
};
|
||||
signal-desktop-beta = {
|
||||
dir = "Signal Beta";
|
||||
|
||||
From 49118d1f8435e33c13487bc2d8bd7528b46e7eb3 Mon Sep 17 00:00:00 2001
|
||||
From: Morantoine <71721545+Morantoine@users.noreply.github.com>
|
||||
Date: Tue, 15 Aug 2023 11:24:01 +0200
|
||||
Subject: [PATCH 2/2] signal-desktop-beta: 6.24.0-beta.1 -> 6.29.0-beta.1
|
||||
|
||||
---
|
||||
.../networking/instant-messengers/signal-desktop/default.nix | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
|
||||
index 5e9119b08f7d2..311ff26693275 100644
|
||||
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
|
||||
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
|
||||
@@ -6,7 +6,7 @@
|
||||
};
|
||||
signal-desktop-beta = {
|
||||
dir = "Signal Beta";
|
||||
- version = "6.24.0-beta.1";
|
||||
- hash = "sha256-tA1xsgtAeOn0c0HcZutj+Pqrsr0JV5bQOnknH4t/QkY=";
|
||||
+ version = "6.29.0-beta.1";
|
||||
+ hash = "sha256-ZUM2tVZbWtiatpI0ogo0MC6q8DIoPEBocIHuszx3Mv0";
|
||||
};
|
||||
}
|
Loading…
Add table
Reference in a new issue