change btrbk snapshot preserve and xdg.portal

This commit is contained in:
cy 2024-12-06 01:54:12 -05:00
parent 7e433309b6
commit 0fc512c3c6
6 changed files with 86 additions and 9 deletions

View file

@ -140,6 +140,11 @@
unzip
obsidian
lm_sensors
obs-studio
activitywatch
aw-watcher-window-wayland
aw-qt
aw-watcher-afk
(callPackage ./anki-bin.nix {})
];
@ -199,7 +204,7 @@
allowUnfree = true;
chromium = {
enableWideVine = true;
commandLineArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland --force-dark-mode --enable-features=WebUIDarkMode";
commandLineArgs = "--ozone-platform-hint=wayland --enable-features=WebUIDarkMode";
};
};
@ -290,7 +295,7 @@
services.btrbk.instances.local = {
onCalendar = "hourly";
settings = {
snapshot_preserve = "8w 12m";
snapshot_preserve = "2w";
snapshot_preserve_min = "2d";
snapshot_dir = "/snapshots";
subvolume = {
@ -370,4 +375,9 @@
enable = true;
enableZshIntegration = true;
};
xdg.portal = {
enable = true;
wlr.enable = true;
};
}

6
nix/flake.lock generated
View file

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1733354384,
"narHash": "sha256-foZG2PLwumxYZkpXq7ajHDhuQlXaUeKfOpFfQpMviLM=",
"lastModified": 1733389730,
"narHash": "sha256-KZMu4ddMll5khS0rYkJsVD0hVqjMNHlhTM3PCQar0Ag=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "0daaded612b0e6eaed0a63fc9d0778d8f05940fe",
"rev": "65912bc6841cf420eb8c0a20e03df7cbbff5963f",
"type": "github"
},
"original": {

View file

@ -28,4 +28,8 @@
name = "Adwaita";
};
};
home.sessionVariables = {
ANKI_WAYLAND = "1";
};
}

54
nix/singlefile.nix Normal file
View file

@ -0,0 +1,54 @@
{
lib,
stdenv,
buildNpmPackage,
fetchFromGitHub,
chromium,
python3,
}:
buildNpmPackage {
pname = "single-file-cli";
version = "2.0.73";
src = fetchFromGitHub {
owner = "gildas-lormeau";
repo = "single-file-cli";
rev = "0b87ca9167f6cb2b036770d38e9b6bbfaf47abc5";
hash = "sha256-fMedP+wp1crHUj9/MVyG8XSsl1PA5bp7/HL4k+X0TRg=";
};
npmDepsHash = "sha256-nnOMBb9mHNhDejE3+Kl26jsrTRxSSg500q1iwwVUqP8=";
nativeCheckInputs = [chromium];
doCheck = stdenv.hostPlatform.isLinux;
postBuild = ''
patchShebangs ./single-file
'';
checkPhase = ''
runHook preCheck
${python3}/bin/python -m http.server --bind 127.0.0.1 &
pid=$!
./single-file \
--browser-headless \
--browser-executable-path chromium-browser\
http://127.0.0.1:8000
grep -F 'Page saved with SingleFile' 'Directory listing for'*.html
kill $pid
wait
runHook postCheck
'';
meta = {
description = "CLI tool for saving a faithful copy of a complete web page in a single HTML file";
homepage = "https://github.com/gildas-lormeau/single-file-cli";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [n8henrie];
mainProgram = "single-file";
};
}

View file

@ -6,9 +6,9 @@ set $up k
set $right l
set $term $HOME/.config/sway/scripts/terminal.sh
set $menu rofi -show drun | xargs swaymsg exec --
set $menu rofi -show run
set $screenshot grim -g "$(slurp)" - | wl-copy
set $browser librewolf
set $browser chromium
set $clipboard rofi -show clipboard -show-icons
set $emoji rofi -show emoji
@ -25,7 +25,8 @@ output * bg $wallpaper fill
floating_modifier $mod normal
default_border pixel
smart_borders on
focus_follows_mouse yes
focus_follows_mouse always
mouse_warping container
bindsym $mod+Return exec $term
bindsym $mod+Ctrl+q kill
@ -38,11 +39,12 @@ bindsym $mod+period exec $emoji
bindsym $mod+$alt+b exec $browser
bindsym $mod+$alt+a exec anki
bindsym $mod+$alt+f exec dolphin
bindsym $mod+$alt+f exec thunar
bindsym $mod+$alt+p exec pomatez
bindsym $mod+$alt+e exec evolution
bindsym $mod+$alt+c exec korganizer
bindsym $mod+p exec bitwarden
bindsym $mod+$alt+m exec element-desktop
bindsym $mod+$left focus left
bindsym $mod+$down focus down
@ -156,6 +158,9 @@ exec swayidle -w \
resume 'swaymsg "output * power on"' \
before-sleep 'playerctl pause; swaylock -f'
exec aw-server
exec aw-watcher-window-wayland
include /etc/sway/config.d/*
exec system-dnotify --ready

View file

@ -7,15 +7,19 @@ if [ "$1" = "btn1" ]; then
wtype " "
elif [ "$active_window" = "foot" ]; then
wtype -M ctrl -M shift -k c
wtype -m ctrl
else
wtype -M ctrl -k c
wtype -m ctrl
fi
else
if [ "$active_window" = "anki" ]; then
wtype "1"
elif [ "$active_window" = "foot" ]; then
wtype -M ctrl -M shift -k v
wtype -m ctrl
else
wtype -M ctrl -k v
wtype -m ctrl
fi
fi