refactor: nixify / clean dots config
This commit is contained in:
1 parent
c2bb81ec7c
commit
9030f33842
35 files changed
+83
-4366
No files matched your search
@@ -1,19 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Backup existing password databases and
|
|
||||||
# database keys (using date in filename date -u
|
|
||||||
# +%Y-%m-%d_%H-%M-%S)
|
|
||||||
|
|
||||||
RCLONE_REMOTE="proton-drive"
|
|
||||||
|
|
||||||
for f in "$HOME/doc"/*.{kdbx,kdbx.key}; do
|
|
||||||
[ -e "$f" ] || continue
|
|
||||||
echo "Backing up $f to $f-$(date -u +%Y-%m-%d_%H-%M-%S)"
|
|
||||||
cp "$f" "$f-$(date -u +%Y-%m-%d_%H-%M-%S)"
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "Restoring KeePassXC databases and database keys"
|
|
||||||
rclone copyto \
|
|
||||||
"$RCLONE_REMOTE:doc"/ "$HOME/doc/" \
|
|
||||||
--progress \
|
|
||||||
--include "/*.{kdbx,kdbx.key}"
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Save (encrypted) password database to cloud storage
|
|
||||||
#
|
|
||||||
# Usage:
|
|
||||||
# save-passwddb - Save databases to cloud
|
|
||||||
# save-passwddb init - Restore databases from cloud (with single backup archive)
|
|
||||||
|
|
||||||
RCLONE_REMOTE="proton"
|
|
||||||
SOURCE_DIR="$HOME/doc"
|
|
||||||
TARGET_DIR="$RCLONE_REMOTE:doc"
|
|
||||||
BACKUP_DIR="$HOME/doc/bak"
|
|
||||||
|
|
||||||
function save_databases() {
|
|
||||||
if [ 0 -lt "$(ls $SOURCE_DIR/*.kdbx 2>/dev/null | wc -w)" ]; then
|
|
||||||
echo "[save] Saving KeePassXC databases and database keys"
|
|
||||||
rclone copy "$SOURCE_DIR" "$TARGET_DIR" \
|
|
||||||
--include "/*.{kdbx,kdbx.key}" \
|
|
||||||
--progress
|
|
||||||
echo "[save] Done"
|
|
||||||
else
|
|
||||||
echo "[save] No password database found, restore with:"
|
|
||||||
echo ""
|
|
||||||
echo " $0 init"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function backup_existing() {
|
|
||||||
mkdir -p "$BACKUP_DIR"
|
|
||||||
local timestamp=$(date +%Y%m%d-%H%M%S)
|
|
||||||
local backup_file="$BACKUP_DIR/passwddb_backup_${timestamp}.tar.gz"
|
|
||||||
|
|
||||||
echo "[backup] Creating backup archive: ${backup_file}"
|
|
||||||
tar -czf "$backup_file" -C "$SOURCE_DIR" $(find "$SOURCE_DIR" -maxdepth 1 -type f \( -name "*.kdbx" -o -name "*.kdbx.key" \) -printf "%f ")
|
|
||||||
echo "[backup] Backup complete"
|
|
||||||
}
|
|
||||||
|
|
||||||
function restore_databases() {
|
|
||||||
echo "[init] Checking for existing files..."
|
|
||||||
|
|
||||||
local existing_files=$(find "$SOURCE_DIR" -maxdepth 1 -type f \( -name "*.kdbx" -o -name "*.kdbx.key" \) -print)
|
|
||||||
|
|
||||||
if [ -n "$existing_files" ]; then
|
|
||||||
echo "[init] Found existing database files:"
|
|
||||||
echo "$existing_files" | while read -r file; do
|
|
||||||
echo " - $file"
|
|
||||||
done
|
|
||||||
read -p "[init] Create backup archive of existing files? [y/N] " -n 1 -r
|
|
||||||
echo
|
|
||||||
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
|
||||||
backup_existing
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "[init] Restoring KeePassXC databases and database keys"
|
|
||||||
mkdir -p "$SOURCE_DIR"
|
|
||||||
rclone copy "$TARGET_DIR" "$SOURCE_DIR" \
|
|
||||||
--include "*.{kdbx,kdbx.key}" \
|
|
||||||
--progress
|
|
||||||
echo "[init] Done"
|
|
||||||
}
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
""|save)
|
|
||||||
save_databases
|
|
||||||
;;
|
|
||||||
init)
|
|
||||||
restore_databases
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Usage: $0 [init|save]"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
[{ "key": "ctrl+b", "command": "workbench.action.toggleSidebarVisibility" }]
|
|
||||||
@@ -1,114 +0,0 @@
|
|||||||
{
|
|
||||||
/* view */
|
|
||||||
"workbench.statusBar.visible": true,
|
|
||||||
"workbench.activityBar.visible": false,
|
|
||||||
"breadcrumbs.enabled": false,
|
|
||||||
"editor.minimap.enabled": false,
|
|
||||||
"window.menuBarVisibility": "hidden",
|
|
||||||
"workbench.editor.showTabs": false,
|
|
||||||
"workbench.editor.showIcons": false,
|
|
||||||
|
|
||||||
/* font */
|
|
||||||
"editor.fontSize": 20,
|
|
||||||
"editor.fontLigatures": true,
|
|
||||||
"editor.fontFamily": "Iosevka",
|
|
||||||
"terminal.integrated.fontSize": 20,
|
|
||||||
|
|
||||||
/* editor */
|
|
||||||
"editor.lineNumbers": "relative",
|
|
||||||
"editor.glyphMargin": false,
|
|
||||||
"terminal.integrated.allowMnemonics": false,
|
|
||||||
"workbench.colorCustomizations": {
|
|
||||||
"editorGroup.emptyBackground": "#0c0c0c",
|
|
||||||
"scrollbar.shadow": "#000",
|
|
||||||
"widget.shadow": "#000",
|
|
||||||
"editorWidget.background": "#0c0c0c",
|
|
||||||
"editor.background": "#0c0c0c",
|
|
||||||
"sideBar.background": "#0c0c0c",
|
|
||||||
"editorGroupHeader.noTabsBackground": "#0c0c0c",
|
|
||||||
"scrollbarSlider.background": "#222",
|
|
||||||
"scrollbarSlider.activeBackground": "#222",
|
|
||||||
"scrollbarSlider.hoverBackground": "#333",
|
|
||||||
"statusBar.noFolderBackground": "#0c0c0c",
|
|
||||||
"statusBar.border": "#0c0c0c",
|
|
||||||
"statusBar.background": "#0c0c0c",
|
|
||||||
"statusBar.foreground": "#555"
|
|
||||||
},
|
|
||||||
|
|
||||||
"editor.tokenColorCustomizations": {
|
|
||||||
"comments": "#555",
|
|
||||||
"functions": "#aaa",
|
|
||||||
"numbers": "#fff",
|
|
||||||
"strings": "#fff",
|
|
||||||
"types": "#aaa",
|
|
||||||
"variables": "#aaa",
|
|
||||||
"keywords": "#aaa"
|
|
||||||
},
|
|
||||||
|
|
||||||
/* vim keybindings */
|
|
||||||
"vim.incsearch": true,
|
|
||||||
"vim.hlsearch": true,
|
|
||||||
"vim.leader": "<space>",
|
|
||||||
"vim.normalModeKeyBindingsNonRecursive": [
|
|
||||||
/* quick quit */
|
|
||||||
{
|
|
||||||
"before": ["<leader>", "q"],
|
|
||||||
"commands": [":q"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"before": ["<leader>", "w"],
|
|
||||||
"commands": [":w"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"before": ["<leader>", "Q"],
|
|
||||||
"commands": [":q!"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"before": ["<leader>", "W"],
|
|
||||||
"commands": [":w!"]
|
|
||||||
},
|
|
||||||
/* split */
|
|
||||||
{
|
|
||||||
"before": ["<leader>", "s", "s"],
|
|
||||||
"commands": [":sp"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"before": ["<leader>", "s", "v"],
|
|
||||||
"commands": [":vs"]
|
|
||||||
},
|
|
||||||
/* clear search highlight */
|
|
||||||
{
|
|
||||||
"before": ["<leader>", "<leader>"],
|
|
||||||
"commands": [":nohl"]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
|
|
||||||
"vim.insertModeKeyBindings": [
|
|
||||||
/* quick exit insert */
|
|
||||||
{
|
|
||||||
"before": ["j", "j"],
|
|
||||||
"after": ["<Esc>"]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
|
|
||||||
"vim.handleKeys": {
|
|
||||||
"<C-a>": false,
|
|
||||||
"<C-f>": false
|
|
||||||
},
|
|
||||||
|
|
||||||
/* eslint & prettier */
|
|
||||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
||||||
"editor.formatOnSave": true,
|
|
||||||
"[javascript]": {
|
|
||||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
||||||
"editor.formatOnSave": true
|
|
||||||
},
|
|
||||||
|
|
||||||
"editor.codeActionsOnSave": {
|
|
||||||
"source.fixAll": true
|
|
||||||
},
|
|
||||||
|
|
||||||
"workbench.colorTheme": "Absolute Black",
|
|
||||||
"window.zoomLevel": 1,
|
|
||||||
"javascript.updateImportsOnFileMove.enabled": "always"
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
prev_img h
|
|
||||||
next_img l
|
|
||||||
scroll_left L
|
|
||||||
scroll_right H
|
|
||||||
scroll_up J
|
|
||||||
scroll_down K
|
|
||||||
zoom_in j
|
|
||||||
zoom_out k
|
|
||||||
zoom_fit z
|
|
||||||
zoom_default =
|
|
||||||
mirror bar
|
|
||||||
close q Q
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
feh \
|
|
||||||
-B black \
|
|
||||||
--auto-zoom
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
[General]
|
|
||||||
checkForUpdates=false
|
|
||||||
disabledTrayIcon=true
|
|
||||||
uiColor=#cccccc
|
|
||||||
fontFamily=Inter
|
|
||||||
drawColor=#ffffff
|
|
||||||
savePath=/home/h/doc/clips
|
|
||||||
copyPathAfterSave=true
|
|
||||||
saveLastRegion=true
|
|
||||||
saveAsFileExtension=png
|
|
||||||
userColors=picker, #800000, #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ffffff, #000000
|
|
||||||
|
|
||||||
[Shortcuts]
|
|
||||||
TYPE_ARROW=a
|
|
||||||
TYPE_CIRCLE=o
|
|
||||||
TYPE_CIRCLECOUNT=Shift+o
|
|
||||||
TYPE_COMMIT_CURRENT_TOOL=Ctrl+Return
|
|
||||||
TYPE_COPY=y
|
|
||||||
TYPE_DELETE_CURRENT_TOOL=
|
|
||||||
TYPE_DRAWER=l
|
|
||||||
TYPE_EXIT=q
|
|
||||||
TYPE_IMAGEUPLOADER=
|
|
||||||
TYPE_MARKER=m
|
|
||||||
TYPE_MOVESELECTION=Ctrl+M
|
|
||||||
TYPE_MOVE_DOWN=j
|
|
||||||
TYPE_MOVE_LEFT=h
|
|
||||||
TYPE_MOVE_RIGHT=l
|
|
||||||
TYPE_MOVE_UP=k
|
|
||||||
TYPE_OPEN_APP=o
|
|
||||||
TYPE_PENCIL=d
|
|
||||||
TYPE_PIN=Enter
|
|
||||||
TYPE_PIXELATE=p
|
|
||||||
TYPE_RECTANGLE=r
|
|
||||||
TYPE_REDO=Ctrl+r
|
|
||||||
TYPE_RESIZE_DOWN=Shift+j
|
|
||||||
TYPE_RESIZE_LEFT=Shift+h
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
git_protocol: ssh
|
|
||||||
prompt: enabled
|
|
||||||
aliases:
|
|
||||||
co: pr checkout
|
|
||||||
c: repo clone
|
|
||||||
f: repo fork
|
|
||||||
rc: repo create
|
|
||||||
rv: repo view
|
|
||||||
re: repo edit
|
|
||||||
rm: repo remove
|
|
||||||
rn: repo rename
|
|
||||||
lr: repo list
|
|
||||||
li: issue list
|
|
||||||
al: alias
|
|
||||||
al-: alias delete
|
|
||||||
version: "1"
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
[Settings]
|
|
||||||
gtk-font-name=Inter 12
|
|
||||||
gtk-application-prefer-dark-theme=true
|
|
||||||
gtk-icon-theme-name=Adwaita
|
|
||||||
gtk-theme-name=Adwaita
|
|
||||||
File diff suppressed because it is too large.
Load diff
@@ -1,32 +0,0 @@
|
|||||||
[General]
|
|
||||||
ConfigVersion=2
|
|
||||||
|
|
||||||
[Browser]
|
|
||||||
CustomProxyLocation=
|
|
||||||
Enabled=true
|
|
||||||
|
|
||||||
[GUI]
|
|
||||||
ApplicationTheme=dark
|
|
||||||
CompactMode=false
|
|
||||||
HidePreviewPanel=false
|
|
||||||
HideToolbar=false
|
|
||||||
MinimizeOnClose=true
|
|
||||||
MinimizeToTray=true
|
|
||||||
ShowTrayIcon=true
|
|
||||||
TrayIconAppearance=colorful
|
|
||||||
|
|
||||||
[KeeShare]
|
|
||||||
Active="<?xml version=\"1.0\"?><KeeShare><Active/></KeeShare>\n"
|
|
||||||
Foreign="<?xml version=\"1.0\"?>\n<KeeShare xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n <Foreign/>\n</KeeShare>\n"
|
|
||||||
Own="<?xml version=\"1.0\"?><KeeShare><PrivateKey>MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC9Ji74dnjo0qzbUFKEoNnMHsdX7mBXuJcu8zsl7vfkKLiAGIQiP9BQc/JnFr28W92fQz8uXVtm7NgnKJQkT7wzFyBdspmNDzosS58EIQVKe5p+uMaaGZ5z6j1DtLCFo7PLCnhasBluC0W1+37s7NtRD6bFo1r6QHupY63mBsSvJhAcmS+6bM7xS7PcK0WTVTsK1MWYZLOkYMWQ0AW/t4PZfqeKvalqheiR8oUIDeY7+7fqvQr5SAhL0yinbtaqWmPqcd5QWyPqVkbKclw4Uecw+JW+yR9uEOP9butP74r36LUUfsTJHE2/sB2KJFRN/aUm2ZEYhzexMYSfgnrq0KCLAgMBAAECggEACV8N7rN39BkUBV2qaPXLNKjFuZ6O2WnE28ejQ5LeZ0h5M6eDTGsa+BF2jhL7XYyzo0NiqvpnH+dWIkKJbG8i5OkdamcB4pJBkJZCj6LPL0yGcAbZmCLyzc1qMaOPJ1/f9YxUQDH/YItgbc7DEBwAFbkPyzT3ufRd7BuLLx1gu0iypHhBok9kXA4WgkUihLNXXVvSIGcVy+q9wpgOiw5jLC79qwqIp39Tlt6PKryODulqWIeoeSIgAu5tgUy4O3He6AZwqBprIfJSiJOwfdBd8FchQJQDgl0fyDR10VIUNbjgm+kxWssq4oNJ7+2n14Gdfwpy2K7oO9DYeqjBrv2p4QKBgQDqY8/5ufsJ9hKhQRX3vju+FEDLKvjjKH7/6puDwcvC1GgvshQSvCo9ZVIajwSmEoWq2LTDiPlUPFINKnALQiHCbRfNeS1Tws4cK4AAZnR+CGKkox9J5MWCDVzI2/82R9/9ZX4OO+As5+Od503Grmy+Zi0Redm+r4aK04gm3LfqGwKBgQDOlpOXFyYbb473TFkf9ZfyETZGkjlCzf4uPwPuJ3njWZfwPE2Gb+quZDLSmYp9JhzIFoapnQrjSFCVyzBYIIuz3jipb5MbQxc6FPSjw0pPowWdPkEL1CT5mpZFojop+I/TnEEG+Lv039O3cGlL2zagiBHRw0ediD6z0vnoOBeKUQKBgQDjlJBuKC9gp6XFHp4G05XMZHvZCNtqLHrLX28qSjPe80BJ9z1YR4032bYThYP9AAT7MripFskICh2dHPR3afm/fw9aeWsSZhab8XyyZsh7SwcEVkJeDBvdv720ZS9y8+y/bBkuFuL+lxVBz0GMRPXfFPRzgH10kZcwGl2bZjnIuwKBgQCVabQu95AZEbM9yps/ERom+ineGo2Ncnyep/bIvQZb1wWbu5F6ZOE/5boYNPJDl1gDor8cVzdzsG6QGBfL9SX1HgivCsJDWl+nI1bYRjsto8NAubDDxFhFqnd6v1z/1AT50C37w9P0xBlUt9mAAnjc2+y/YFQgbFSlLDaQrFjiMQKBgFJrLF21Uk6ALZa4R0eOyLKhuagw3uxmNvccNG8VL5DwYVCUS7/8SkPhO5yvbcA87Y1VnM20tUr047K4U83uFNxBnPMmxlhMsxtqjw+VV6Us6uh2ASaLZ9iP9iwkn5e37WLWX+XsewoGrW/YsONwIT0dnZDPRbxhPdJn8azSJqQr</PrivateKey><PublicKey><Signer>h</Signer><Key>MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC9Ji74dnjo0qzbUFKEoNnMHsdX7mBXuJcu8zsl7vfkKLiAGIQiP9BQc/JnFr28W92fQz8uXVtm7NgnKJQkT7wzFyBdspmNDzosS58EIQVKe5p+uMaaGZ5z6j1DtLCFo7PLCnhasBluC0W1+37s7NtRD6bFo1r6QHupY63mBsSvJhAcmS+6bM7xS7PcK0WTVTsK1MWYZLOkYMWQ0AW/t4PZfqeKvalqheiR8oUIDeY7+7fqvQr5SAhL0yinbtaqWmPqcd5QWyPqVkbKclw4Uecw+JW+yR9uEOP9butP74r36LUUfsTJHE2/sB2KJFRN/aUm2ZEYhzexMYSfgnrq0KCLAgMBAAECggEACV8N7rN39BkUBV2qaPXLNKjFuZ6O2WnE28ejQ5LeZ0h5M6eDTGsa+BF2jhL7XYyzo0NiqvpnH+dWIkKJbG8i5OkdamcB4pJBkJZCj6LPL0yGcAbZmCLyzc1qMaOPJ1/f9YxUQDH/YItgbc7DEBwAFbkPyzT3ufRd7BuLLx1gu0iypHhBok9kXA4WgkUihLNXXVvSIGcVy+q9wpgOiw5jLC79qwqIp39Tlt6PKryODulqWIeoeSIgAu5tgUy4O3He6AZwqBprIfJSiJOwfdBd8FchQJQDgl0fyDR10VIUNbjgm+kxWssq4oNJ7+2n14Gdfwpy2K7oO9DYeqjBrv2p4QKBgQDqY8/5ufsJ9hKhQRX3vju+FEDLKvjjKH7/6puDwcvC1GgvshQSvCo9ZVIajwSmEoWq2LTDiPlUPFINKnALQiHCbRfNeS1Tws4cK4AAZnR+CGKkox9J5MWCDVzI2/82R9/9ZX4OO+As5+Od503Grmy+Zi0Redm+r4aK04gm3LfqGwKBgQDOlpOXFyYbb473TFkf9ZfyETZGkjlCzf4uPwPuJ3njWZfwPE2Gb+quZDLSmYp9JhzIFoapnQrjSFCVyzBYIIuz3jipb5MbQxc6FPSjw0pPowWdPkEL1CT5mpZFojop+I/TnEEG+Lv039O3cGlL2zagiBHRw0ediD6z0vnoOBeKUQKBgQDjlJBuKC9gp6XFHp4G05XMZHvZCNtqLHrLX28qSjPe80BJ9z1YR4032bYThYP9AAT7MripFskICh2dHPR3afm/fw9aeWsSZhab8XyyZsh7SwcEVkJeDBvdv720ZS9y8+y/bBkuFuL+lxVBz0GMRPXfFPRzgH10kZcwGl2bZjnIuwKBgQCVabQu95AZEbM9yps/ERom+ineGo2Ncnyep/bIvQZb1wWbu5F6ZOE/5boYNPJDl1gDor8cVzdzsG6QGBfL9SX1HgivCsJDWl+nI1bYRjsto8NAubDDxFhFqnd6v1z/1AT50C37w9P0xBlUt9mAAnjc2+y/YFQgbFSlLDaQrFjiMQKBgFJrLF21Uk6ALZa4R0eOyLKhuagw3uxmNvccNG8VL5DwYVCUS7/8SkPhO5yvbcA87Y1VnM20tUr047K4U83uFNxBnPMmxlhMsxtqjw+VV6Us6uh2ASaLZ9iP9iwkn5e37WLWX+XsewoGrW/YsONwIT0dnZDPRbxhPdJn8azSJqQr</Key></PublicKey></KeeShare>\n"
|
|
||||||
QuietSuccess=true
|
|
||||||
|
|
||||||
[PasswordGenerator]
|
|
||||||
AdditionalChars=
|
|
||||||
ExcludedChars=
|
|
||||||
Length=40
|
|
||||||
Logograms=true
|
|
||||||
WordCount=9
|
|
||||||
|
|
||||||
[SSHAgent]
|
|
||||||
Enabled=true
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
[Default Applications]
|
|
||||||
inode/x-empty=nvim.desktop
|
|
||||||
inode/directory=nvim.desktop
|
|
||||||
text/plain=nvim.desktop
|
|
||||||
text/html=firefoxdeveloperedition.desktop
|
|
||||||
image/gif=feh.desktop
|
|
||||||
image/jpeg=feh.desktop
|
|
||||||
image/png=feh.desktop
|
|
||||||
video/mp4=mpv.desktop
|
|
||||||
video/webm=mpv.desktop
|
|
||||||
model/stl=com.ultimaker.cura.desktop
|
|
||||||
application/pdf=org.pwmt.zathura.desktop
|
|
||||||
x-scheme-handler/msteams=teams-for-linux.desktop
|
|
||||||
x-scheme-handler/web+stremio=firefox.desktop
|
|
||||||
x-scheme-handler/http=firefoxdeveloperedition.desktop
|
|
||||||
x-scheme-handler/https=firefoxdeveloperedition.desktop
|
|
||||||
x-scheme-handler/chrome=firefoxdeveloperedition.desktop
|
|
||||||
x-scheme-handler/sidequest=SideQuest.desktop
|
|
||||||
x-scheme-handler/mailto=firefox.desktop
|
|
||||||
x-scheme-handler/webcal=firefox.desktop
|
|
||||||
Binary file not shown.
@@ -1,15 +0,0 @@
|
|||||||
l seek +5
|
|
||||||
h seek -5
|
|
||||||
k seek +30
|
|
||||||
j seek -30
|
|
||||||
|
|
||||||
+ add video-zoom 0.1
|
|
||||||
- add video-zoom -0.1
|
|
||||||
= set video-zoom 0; set video-pan-x 0; set video-pan-y 0
|
|
||||||
|
|
||||||
H add video-pan-x 0.01
|
|
||||||
L add video-pan-x -0.01
|
|
||||||
K add video-pan-y 0.01
|
|
||||||
J add video-pan-y -0.01
|
|
||||||
|
|
||||||
m cycle mute
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
vo=gpu
|
|
||||||
profile=gpu-hq
|
|
||||||
hwdec=auto
|
|
||||||
|
|
||||||
msg-color=yes
|
|
||||||
|
|
||||||
cursor-autohide=300
|
|
||||||
cursor-autohide-fs-only=yes
|
|
||||||
save-position-on-quit=yes
|
|
||||||
keep-open=yes
|
|
||||||
|
|
||||||
# Custom osc
|
|
||||||
osc=no
|
|
||||||
cursor-autohide=3500
|
|
||||||
osd-bar=no
|
|
||||||
osc-vidscale=no
|
|
||||||
File diff suppressed because it is too large.
Load diff
@@ -1,60 +0,0 @@
|
|||||||
context.properties = {}
|
|
||||||
context.spa-libs = {
|
|
||||||
audio.convert.* = audioconvert/libspa-audioconvert
|
|
||||||
support.* = support/libspa-support
|
|
||||||
}
|
|
||||||
context.modules = [
|
|
||||||
{ name = libpipewire-module-rt
|
|
||||||
args = { nice.level = -11 }
|
|
||||||
flags = [ ifexists nofail ]
|
|
||||||
}
|
|
||||||
{ name = libpipewire-module-protocol-native }
|
|
||||||
{ name = libpipewire-module-client-node }
|
|
||||||
{ name = libpipewire-module-adapter }
|
|
||||||
{ name = libpipewire-module-metadata }
|
|
||||||
|
|
||||||
{ name = libpipewire-module-protocol-pulse
|
|
||||||
args = { }
|
|
||||||
}
|
|
||||||
]
|
|
||||||
|
|
||||||
context.exec = [
|
|
||||||
{ path = "pactl" args = "load-module module-always-sink" }
|
|
||||||
# Automatically switch to (bluetooth) headphones
|
|
||||||
{ path = "pactl" args = "load-module module-switch-on-connect" }
|
|
||||||
]
|
|
||||||
|
|
||||||
stream.properties = { }
|
|
||||||
|
|
||||||
pulse.properties = {
|
|
||||||
server.address = [ "unix:native" ]
|
|
||||||
vm.overrides = { pulse.min.quantum = 1024/48000 }
|
|
||||||
}
|
|
||||||
|
|
||||||
pulse.rules = [
|
|
||||||
{
|
|
||||||
matches = [ { } ]
|
|
||||||
actions = { update-props = { } }
|
|
||||||
}
|
|
||||||
{
|
|
||||||
matches = [
|
|
||||||
{ application.process.binary = "teams" }
|
|
||||||
{ application.process.binary = "teams-insiders" }
|
|
||||||
{ application.process.binary = "skypeforlinux" }
|
|
||||||
]
|
|
||||||
actions = { quirks = [ force-s16-info ] }
|
|
||||||
}
|
|
||||||
{
|
|
||||||
matches = [ { application.process.binary = "firefox" } ]
|
|
||||||
actions = { quirks = [ remove-capture-dont-move ] }
|
|
||||||
}
|
|
||||||
{
|
|
||||||
matches = [ { application.name = "~speech-dispatcher*" } ]
|
|
||||||
actions = {
|
|
||||||
update-props = {
|
|
||||||
pulse.min.req = 1024/48000 # 21ms
|
|
||||||
pulse.min.quantum = 1024/48000 # 21ms
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
[google-drive]
|
|
||||||
type = drive
|
|
||||||
scope = drive
|
|
||||||
token =
|
|
||||||
|
|
||||||
[onedrive-vub]
|
|
||||||
type = webdav
|
|
||||||
url =
|
|
||||||
vendor = sharepoint
|
|
||||||
user =
|
|
||||||
pass =
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
{
|
|
||||||
"101B:E2D1E989": {
|
|
||||||
"_name": "Marathon Mouse M705 (M-R0009)",
|
|
||||||
"side-scroll": true,
|
|
||||||
"smooth-scroll": true
|
|
||||||
},
|
|
||||||
"405E:C347528E": {
|
|
||||||
"_absent": [
|
|
||||||
"hi-res-scroll",
|
|
||||||
"lowres-smooth-scroll",
|
|
||||||
"smart-shift",
|
|
||||||
"thumb-scroll-mode",
|
|
||||||
"thumb-scroll-invert",
|
|
||||||
"onboard_profiles",
|
|
||||||
"report_rate",
|
|
||||||
"dpi",
|
|
||||||
"dpi-sliding",
|
|
||||||
"speed-change",
|
|
||||||
"backlight",
|
|
||||||
"backlight-timed",
|
|
||||||
"fn-swap",
|
|
||||||
"disable-keyboard-keys",
|
|
||||||
"divert-crown",
|
|
||||||
"crown-smooth",
|
|
||||||
"divert-gkeys",
|
|
||||||
"m-key-leds",
|
|
||||||
"mr-key-led",
|
|
||||||
"multiplatform",
|
|
||||||
"gesture2-gestures",
|
|
||||||
"gesture2-divert",
|
|
||||||
"gesture2-params"
|
|
||||||
],
|
|
||||||
"_modelId": "B015405E0000",
|
|
||||||
"_name": "M720 Triathlon Multi-Device Mouse",
|
|
||||||
"_sensitive": {
|
|
||||||
"change-host": true,
|
|
||||||
"divert-keys": true,
|
|
||||||
"hires-smooth-invert": false,
|
|
||||||
"hires-smooth-resolution": false,
|
|
||||||
"mouse-gestures": false,
|
|
||||||
"pointer_speed": false,
|
|
||||||
"reprogrammable-keys": true
|
|
||||||
},
|
|
||||||
"_serial": "C347528E",
|
|
||||||
"_unitId": "F204EB17",
|
|
||||||
"divert-keys": {
|
|
||||||
"208": 0,
|
|
||||||
"215": 0,
|
|
||||||
"82": 0,
|
|
||||||
"83": 0,
|
|
||||||
"86": 0,
|
|
||||||
"91": 0,
|
|
||||||
"93": 0
|
|
||||||
},
|
|
||||||
"hires-smooth-invert": false,
|
|
||||||
"hires-smooth-resolution": false,
|
|
||||||
"mouse-gestures": 0,
|
|
||||||
"pointer_speed": 195,
|
|
||||||
"reprogrammable-keys": {
|
|
||||||
"208": 208,
|
|
||||||
"80": 80,
|
|
||||||
"81": 81,
|
|
||||||
"82": 82,
|
|
||||||
"83": 83,
|
|
||||||
"86": 86,
|
|
||||||
"91": 91,
|
|
||||||
"93": 93
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"_version": "1.1.2"
|
|
||||||
}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
# Spotify cache size
|
|
||||||
|
|
||||||
The contents of `prefs.example` can be added to the `prefs` file in this
|
|
||||||
directory to change the cache size to 1GB.
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
storage.size=1024
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=Save KeypassXC password database to cloud
|
|
||||||
Wants=network-online.target
|
|
||||||
After=network-online.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
Type=oneshot
|
|
||||||
ExecStart=/home/h/.bin/save-passwddb
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=Save Keepass password database to cloud daily
|
|
||||||
|
|
||||||
[Timer]
|
|
||||||
OnCalendar=daily
|
|
||||||
RandomizedDelaySec=12h
|
|
||||||
Persistent=true
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=timers.target
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
enabled=False
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
# This file is written by xdg-user-dirs-update
|
|
||||||
# If you want to change or add directories, just edit the line you're
|
|
||||||
# interested in. All local changes will be retained on the next run.
|
|
||||||
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
|
|
||||||
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
|
|
||||||
# absolute path. No other format is supported.
|
|
||||||
#
|
|
||||||
XDG_DESKTOP_DIR="$HOME/"
|
|
||||||
XDG_DOWNLOAD_DIR="$HOME/dl"
|
|
||||||
XDG_DOCUMENTS_DIR="$HOME/doc"
|
|
||||||
XDG_PUBLICSHARE_DIR="$HOME/"
|
|
||||||
XDG_MUSIC_DIR="$HOME/"
|
|
||||||
XDG_PICTURES_DIR="$HOME/"
|
|
||||||
XDG_TEMPLATES_DIR="$HOME/"
|
|
||||||
XDG_VIDEOS_DIR="$HOME/"
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
---
|
|
||||||
|
|
||||||
extends: default
|
|
||||||
rules:
|
|
||||||
document-start: disable
|
|
||||||
comments-indentation: disable
|
|
||||||
@@ -45,6 +45,7 @@
|
|||||||
};
|
};
|
||||||
keyboard.vortexCore.enable = true;
|
keyboard.vortexCore.enable = true;
|
||||||
keepassxc.enable = true;
|
keepassxc.enable = true;
|
||||||
|
mpv.enable = true;
|
||||||
music.enable = true;
|
music.enable = true;
|
||||||
newsboat.enable = true;
|
newsboat.enable = true;
|
||||||
nvim.enable = true;
|
nvim.enable = true;
|
||||||
|
|||||||
@@ -38,6 +38,7 @@
|
|||||||
};
|
};
|
||||||
k8s.k9s.enable = true;
|
k8s.k9s.enable = true;
|
||||||
keepassxc.enable = true;
|
keepassxc.enable = true;
|
||||||
|
mpv.enable = true;
|
||||||
music.enable = true;
|
music.enable = true;
|
||||||
newsboat.enable = true;
|
newsboat.enable = true;
|
||||||
my.xdg.enable = true;
|
my.xdg.enable = true;
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
./firefox.nix
|
./firefox.nix
|
||||||
./librewolf.nix
|
./librewolf.nix
|
||||||
./chromium.nix
|
./chromium.nix
|
||||||
|
./tridactyl.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
options.browser = {
|
options.browser = {
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
browsers = [
|
||||||
|
config.browser.primary
|
||||||
|
config.browser.secondary
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
config = lib.mkIf (lib.elem "firefox" browsers || lib.elem "librewolf" browsers) {
|
||||||
|
xdg.configFile."tridactyl/tridactylrc".source = ./tridactylrc;
|
||||||
|
};
|
||||||
|
}
|
||||||
File renamed without changes.
@@ -6,6 +6,26 @@
|
|||||||
|
|
||||||
{
|
{
|
||||||
config = lib.mkIf (config.git.enable && config.git.github.enable) {
|
config = lib.mkIf (config.git.enable && config.git.github.enable) {
|
||||||
programs.gh.enable = true;
|
programs.gh = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
git_protocol = "ssh";
|
||||||
|
prompt = "enabled";
|
||||||
|
aliases = {
|
||||||
|
co = "pr checkout";
|
||||||
|
c = "repo clone";
|
||||||
|
f = "repo fork";
|
||||||
|
rc = "repo create";
|
||||||
|
rv = "repo view";
|
||||||
|
re = "repo edit";
|
||||||
|
rm = "repo remove";
|
||||||
|
rn = "repo rename";
|
||||||
|
lr = "repo list";
|
||||||
|
li = "issue list";
|
||||||
|
al = "alias";
|
||||||
|
al- = "alias delete";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
{ config, lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
options.mpv.enable = lib.mkOption {
|
||||||
|
default = false;
|
||||||
|
type = lib.types.bool;
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.mpv.enable {
|
||||||
|
programs.mpv = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
vo = "gpu";
|
||||||
|
profile = "gpu-hq";
|
||||||
|
hwdec = "auto";
|
||||||
|
msg-color = "yes";
|
||||||
|
cursor-autohide = 300;
|
||||||
|
cursor-autohide-fs-only = "yes";
|
||||||
|
save-position-on-quit = "yes";
|
||||||
|
keep-open = "yes";
|
||||||
|
};
|
||||||
|
bindings = {
|
||||||
|
l = "seek +5";
|
||||||
|
h = "seek -5";
|
||||||
|
k = "seek +30";
|
||||||
|
j = "seek -30";
|
||||||
|
"+" = "add video-zoom 0.1";
|
||||||
|
"-" = "add video-zoom -0.1";
|
||||||
|
"=" = "set video-zoom 0; set video-pan-x 0; set video-pan-y 0";
|
||||||
|
H = "add video-pan-x 0.01";
|
||||||
|
L = "add video-pan-x -0.01";
|
||||||
|
K = "add video-pan-y 0.01";
|
||||||
|
J = "add video-pan-y -0.01";
|
||||||
|
m = "cycle mute";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -23,6 +23,10 @@ in
|
|||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
home.packages = [ spotifyWithWayland ];
|
home.packages = [ spotifyWithWayland ];
|
||||||
|
home.activation.spotifyCacheSize = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||||
|
run mkdir -p ${config.xdg.configHome}/spotify
|
||||||
|
run ${lib.getExe pkgs.crudini} --ini-options=nospace --set ${config.xdg.configHome}/spotify/prefs "" storage.size 1024
|
||||||
|
'';
|
||||||
programs.ncspot = {
|
programs.ncspot = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|||||||
@@ -21,7 +21,6 @@
|
|||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
pulseaudio.extraConfig = "load-module module-switch-on-connect";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user