README
This commit is contained in:
369
README.md
369
README.md
@@ -1,33 +1,348 @@
|
||||
<!--- Intro {{{ -->
|
||||
# Kevin's Linux Setup
|
||||
# KM's Linux Desktop Config (chezmoi dotfiles)
|
||||
|
||||

|
||||
*Screenshot from my dual-monitor setup.*
|
||||
This is my **chezmoi-managed toolkit** for keeping a
|
||||
consistent i3/terminal-focused Linux desktop across
|
||||
machines: i3 + i3blocks + i3bar, fish/Zsh/Bash shells,
|
||||
kitty/ST terminals, tmux, Neovim/Vim, Ranger, mpv, Zathura,
|
||||
dunst, picom, taskwarrior/taskopen, calcurse, Neomutt/msmtp,
|
||||
mgba, and a grab bag of helper scripts for wallpapers,
|
||||
audio, finance tickers, backups, etc. Other coding projects
|
||||
such as `hands-free-tools`, `psa` Arsenal, or `kogito` live
|
||||
in their own repos — this repo is solely about the desktop
|
||||
environment, shell tooling, and workflows that drive it.
|
||||
|
||||
This repository contains the dotfiles to increase my workflow efficiency. They
|
||||
are also for my Linux
|
||||
[rice](https://www.reddit.com/r/unixporn/comments/3iy3wd/stupid_question_what_is_ricing/cukxwog/).
|
||||
<!--- }}} Intro -->
|
||||
## Table of Contents
|
||||
- [What This Repo Is](#what-this-repo-is)
|
||||
- [Installation & Sync](#installation--sync)
|
||||
- [Shells & Aliases](#shells--aliases)
|
||||
- [Terminal & Editor Stack](#terminal--editor-stack)
|
||||
- [Window Manager & Display](#window-manager--display)
|
||||
- [Productivity Apps &
|
||||
Services](#productivity-apps--services)
|
||||
- [Scripts, Packages & Assets](#scripts-packages--assets)
|
||||
- [Host Overrides & Secrets](#host-overrides--secrets)
|
||||
- [Customization Tips](#customization-tips)
|
||||
|
||||
<!--- Main Programs {{{ -->
|
||||
## Main Programs
|
||||
* **OS**: [Arch Linux](https://www.archlinux.org/) ([packages](txt/nzxt-pkgs.txt))
|
||||
```
|
||||
> systemd-analyze
|
||||
Startup finished in 2.341s (kernel) + 1.085s (userspace) = 3.426s
|
||||
graphical.target reached after 1.085s in userspace
|
||||
```
|
||||
* **Terminal**: [rxvt-unicode-pixbuf](https://www.wikiwand.com/en/Rxvt)
|
||||
* **Shell**: [Fish](https://fishshell.com/)
|
||||
* **Window Manager**: [i3-gaps](https://github.com/Airblader/i3)
|
||||
* **Editor**: [Neovim](https://github.com/neovim/neovim) ([plugins](dotfiles/.vimrc#L51))
|
||||
* **File Manager**: [ranger](https://ranger.github.io/)
|
||||
<!--- }}} Basic Info -->
|
||||
## What This Repo Is
|
||||
- A **chezmoi repo** with `dot_*` files targeting `$HOME`
|
||||
(e.g. `dot_vimrc.tmpl` → `~/.vimrc`, `dot_tmux.conf`,
|
||||
`dot_gitconfig.tmpl`, etc.) and `dot_config/**` mirroring
|
||||
`~/.config`. Every `.tmpl` file runs through `chezmoi`
|
||||
templating so `{{ .chezmoi.hostname }}` / `.linux_os` /
|
||||
`.chezmoi.username` can tailor behavior.
|
||||
- A place for **desktop-focused tooling**: i3/i3blocks, fish
|
||||
+ shared aliases, kitty/ST terminals, tmux, Neovim/Vim,
|
||||
mpv, Ranger, mpv, Zathura, dunst/picom/prefers,
|
||||
taskwarrior/taskopen, and shell helpers such as
|
||||
`executable_passmenu`, `dmenu-history`, `change-sink`,
|
||||
`bg-chooser`, etc.
|
||||
- A repository for configuration logic only — the bulk of
|
||||
application/Project code lives in other repos. You can
|
||||
treat this as the “rice” layer for Arch/Ubuntu machines,
|
||||
not as a general diary of every coding sidequest.
|
||||
|
||||
<!--- Setup {{{ -->
|
||||
## Installation & Sync
|
||||
1. Install `chezmoi`, clone this repo, and run `chezmoi init
|
||||
--apply <repo>` (or `chezmoi cd .` / `chezmoi apply`). The
|
||||
repo assumes you have a basic Linux desktop already (i3,
|
||||
fish, etc.).
|
||||
2. Run `chezmoi apply` whenever you change templates. When
|
||||
files touch the ones under `aliases/` (see below) run
|
||||
`~/scripts/sync-shortcuts` (or let `fish` invoke it on
|
||||
login) to regenerate `~/aliases/.key_aliases`,
|
||||
`~/.config/fish/key_abbr.fish`, and
|
||||
`~/.config/ranger/key_mappings.conf`.
|
||||
3. After changing tmux config, reload (`tmux source
|
||||
~/.tmux.conf`) and run the TPM installer
|
||||
(`~/.tmux/plugins/tpm/bin/install_plugins`).
|
||||
4. When you edit `dot_config/mgba/*.ini`, run
|
||||
`dot_config/mgba/update-mgba-config.fish` (or your shell) to
|
||||
keep the `~/.config/mgba/*.ini` copies and repo templates in
|
||||
sync.
|
||||
5. Use `chezmoi data set <key> <value>` (or edit
|
||||
`~/.config/chezmoi/chezmoi.toml`) to tweak host data such as
|
||||
`gui`, `ext_kb`, or `linux_os` — the template in
|
||||
`dot_config/chezmoi/chezmoi-template.toml.tmpl` seeds those
|
||||
values for conditional logic in templates.
|
||||
|
||||
## Setup
|
||||
I use [chezmoi](https://github.com/twpayne/chezmoi) to manage varying
|
||||
configs for different machines with a single branch.
|
||||
## Shells & Aliases
|
||||
- `dot_bashrc` and `dot_zshrc` both source
|
||||
`~/aliases/.key_aliases` and share settings like `xset r
|
||||
rate`, `xmodmap` tweaks, `wal` sequences,
|
||||
`BASH_IT`/`oh-my-zsh` hooks, and `pywal` colors so all
|
||||
interactive shells match.
|
||||
- `aliases/key_aliases.tmpl`, `aliases/key_dirs.tmpl`, and
|
||||
`aliases/key_files.tmpl` are the canonical
|
||||
alias/directory/file lists. `~/scripts/sync-shortcuts`
|
||||
consumes those to build shell-friendly alias files and
|
||||
ranger mappings; editing a key file there and rerunning
|
||||
that script keeps the shells/ranger in sync.
|
||||
- Fish is the primary interactive shell
|
||||
(`dot_config/fish/config.fish.tmpl`). It sets `spacefish`
|
||||
prompt order, `PNPM`/`GraalVM`/`Java` paths,
|
||||
`PASSWORD_STORE_CLIP_TIME`, `task` abbrs, and
|
||||
automatically runs `~/scripts/sync-shortcuts` plus
|
||||
`source`-ing every file in `dot_config/fish/functions`.
|
||||
That directory contains dozens of helpers: git helpers
|
||||
(`git/g*`), taskwarrior actions (`task/*.fish`), `watson`,
|
||||
`timetrace`, `tmux-attach`, `pass`/`clipboard` helpers,
|
||||
miniscripts for AWS/rsync, countdowns, `currency`
|
||||
converters, and more.
|
||||
- `dot_config/fish/completions` adds completions for `buku`,
|
||||
`kogito`, `kubectl`, `minikube`, `pass`, `timetrace`, and
|
||||
`watson` so these workflows stay tab-complete.
|
||||
- Fish also watches for logins without a `$DISPLAY` to
|
||||
auto-run `startx`, binds `GPG_TTY`, sources
|
||||
`~/.cache/wal/colors.sh`, and respects host-specific
|
||||
values such as `JENKINS_TOKEN` (for NZXT) or `ext_kb`.
|
||||
|
||||
<!--- }}} Setup -->
|
||||
## Terminal & Editor Stack
|
||||
- `dot_config/kitty/kitty.conf` and
|
||||
`dot_config/st/config.def.h.tmpl` share `wal` colors
|
||||
(`~/.cache/wal/colors-kitty.conf` / `colors-wal-st.h`) and
|
||||
Nerd Font setups; kitty enables clipboard control and
|
||||
opacity, st pulls fonts/opacity from the current theme.
|
||||
- Terminal multiplexer: `dot_tmux.conf` rebinds prefix to
|
||||
`C-Space`, enables mouse, uses a Powerline-style status
|
||||
bar, and installs TPM plugins (`tmux-plugins/tpm`,
|
||||
`tmux-sensible`, `vim-tmux-navigator`). Mouse/Vi copy mode
|
||||
maps push selection to `xclip` via `copy-pipe-and-cancel`.
|
||||
- `dot_vimrc.tmpl` is the canonical Vim/Neovim config. It
|
||||
enables `autoindent`, autocommands for
|
||||
markdown/Go/Jenkinsfiles, loads `vim-plug`, and wires up
|
||||
plugins (`YouCompleteMe`, `UltiSnips`, `vimtex`,
|
||||
`vim-fugitive`, `vim-auto-save`, `vim-instant-markdown`,
|
||||
`vim-tmux-navigator`, `vim-go`, `vim-react`, `vim-latex`,
|
||||
`vim-mark`, `vim-surround`, `rainbow`, `AutoPairs`,
|
||||
`vim-indexed-search`, etc.). Leader mappings cover
|
||||
yanking, folding, Git, formatting, NERDTree, and quick
|
||||
plugin commands. `dot_config/nvim/init.vim` just sources
|
||||
`~/.vimrc` plus Python host settings.
|
||||
- `dot_config/mpv/mpv.conf` & `input.conf` configure
|
||||
subtitles, mouse wheel volume, speed keys, seek commands,
|
||||
zoom, and mark shortcuts for mpv so it works cleanly with
|
||||
keyboard/VR-style controls.
|
||||
|
||||
## Window Manager & Display
|
||||
- `dot_xinitrc.tmpl` loads `~/.Xresources`, applies
|
||||
host-specific `xmodmap` (`dot_Xmodmap*`), sets `redshift`,
|
||||
`xset r rate` (pumped from fish), starts
|
||||
`notification-daemon`, `picom`, `imwheel`, `numlockx`, and
|
||||
pains `wal -i $(scripts/shuffler ...)` backgrounds.
|
||||
- `dot_Xresources.tmpl` keeps host DPI/font choices (high
|
||||
DPI for `x1-carbon`, default for desktops), clickable
|
||||
URLs, transparency, and `sxiv` colors; i3blocks and kitty
|
||||
re-read it via `xrdb` + `wal`.
|
||||
- There are multiple `dot_Xmodmap*` variants (`.`,
|
||||
`-laptop`, `-laptop-old`, `-old`, `-ubuntu`, `-vm`) so
|
||||
`xmodmap` can swap Caps/Esc/backspace depending on host;
|
||||
`dot_xinitrc.tmpl` toggles between them via the `ext_kb`
|
||||
variable and the helper
|
||||
`scripts/executable_xmodmap-custom.tmpl`.
|
||||
- `dot_config/i3/config.tmpl` wires up: Mod1/Mod4 split,
|
||||
`kitty`/`urxvt` terminals, i3 startup apps (notification
|
||||
daemon, picom, imwheel, `wal`, `xbacklight`), screenshot
|
||||
bindings, workspace assignments (1/2/3 etc),
|
||||
Slack/Signal/Chromium/Steam assignments, workspace
|
||||
navigation, `passmenu`, `dmenu-history`, `ticker/fx`
|
||||
shortcuts, `redshift` hotkeys, `wal` shuffle hotkeys,
|
||||
`change-sink`, and `mod`-based layout resizing. It also
|
||||
defines stacked/tabbed/floating rules, gap toggles, and
|
||||
bar outputs for both main and secondary monitors. The
|
||||
status command is `i3blocks -vvv -c
|
||||
~/.config/i3blocks/i3blocks.conf` (primary) and
|
||||
`i3blocks-secondary.conf` (secondary) with i3blocks piping
|
||||
through `~/scripts/shuffler`/`pywal` colors.
|
||||
- `dot_config/i3blocks/i3blocks.conf.tmpl` defines blocks
|
||||
for `kraken` (ETH), Spotify controls, volume, and
|
||||
conditional blocks for laptop (`battery`, `wifi`,
|
||||
`backlight`), plus placeholders for
|
||||
`dexscreener`/`ticker`/`memory`/`temperature`. Secondary/
|
||||
display configs reuse the same script directory but focus
|
||||
on `calendar`, `volume`, and additional
|
||||
`temperature`/`name`/`cpu/memory` blocks. Every block
|
||||
relies on scripts under `dot_config/i3blocks/scripts/`
|
||||
(e.g. `executable_calendar`, `executable_volume`,
|
||||
`executable_wifi`, `executable_kraken`,
|
||||
`executable_dexscreener*`, `executable_spotify`,
|
||||
`executable_name`, `executable_temperature`,
|
||||
`executable_ticker`, etc.) which source
|
||||
`~/.cache/wal/colors.sh` to stay on-theme.
|
||||
- Display/notification stack also includes
|
||||
`dot_config/picom/picom.conf` (shadows/fade/opacity rules)
|
||||
and `dot_config/dunst/dunstrc` (compact, mouse-following
|
||||
notifications, keyboard shortcuts, urgency colors) so
|
||||
popups match the rest of the polished rice.
|
||||
- `dot_config/neofetch/config.conf` keeps the `neofetch`
|
||||
info streamlined to kernel, terminal,font, shell,
|
||||
packages, WM, CPU/GPU, memory, disks, and resolution, with
|
||||
ASCII color blocks and shorthanded kernel/distro strings.
|
||||
|
||||
## Productivity Apps & Services
|
||||
- `dot_taskrc` configures `taskwarrior` (data location
|
||||
`~/.task`, `taskd` server credentials, urgency
|
||||
coefficients per project/tag, and default context
|
||||
`sniper`). `dot_taskopenrc` tells `taskopen` to use
|
||||
`nvim`, the `task` binary, and custom note / annotation
|
||||
handling (`notes.regex = "Notes"`).
|
||||
- `dot_qalcrc` forces `qalculate-gtk` to use decimal commas
|
||||
for output. `dot_inputrc` turns readline `vi` mode on, and
|
||||
`dot_imwheelrc` remaps vertical scroll for `imwheel`.
|
||||
- Ranger customization lives under `dot_config/ranger/`:
|
||||
`rc.conf.tmpl` tweaks view mode, preview pipeline (custom
|
||||
`scope.sh`), bookmarks, colors, and dozens of keybindings
|
||||
(vim-like navigation, copy/paste/paste symlink macros,
|
||||
`fzf` integrations, lightning bookmarks, backgrounds via
|
||||
`wal`, `dragon` drop, etc.). `ranger/commands.py` supplies
|
||||
`fzf_select`, `fzf_locate`, `compress`, `extracthere`, and
|
||||
other helper commands. Plugins include devicons, preview
|
||||
scripts, and shared `key_mappings.conf` (referenced at the
|
||||
bottom of `rc.conf`).
|
||||
- Email is handled by `dot_config/neomutt/neomuttrc`
|
||||
pointing at `~/mail/firemail`, calling `msmtp`, syncing
|
||||
(`mbsync`), and a custom `<F5>` macro.
|
||||
`dot_config/msmtp/config` defines a `firemail` account —
|
||||
**replace the password with a secret manager or keep this
|
||||
file private** (it currently contains a placeholder
|
||||
password).
|
||||
- `private_dot_calcurse/` stores Calcurse CalDAV
|
||||
configs/credentials and `private_dot_gnupg/` holds GPG
|
||||
configs/keys; treat those as `chezmoi` private files (they
|
||||
live in `private_dot_*` in the repo and are decrypted on
|
||||
each machine). Similarly, `dot_ssh/authorized_keys-all`
|
||||
and `known_hosts-all` aggregate SSH entries for quick
|
||||
deployment.
|
||||
- `dot_config/zathura/zathurarc` forces dark mode, custom
|
||||
colors, and clipboard syncing.
|
||||
`dot_config/mgba/*-tmpl.ini` keeps emulator settings; run
|
||||
`dot_config/mgba/update-mgba-config.fish` after editing
|
||||
your local `~/.config/mgba/*.ini` so the template files
|
||||
stay current.
|
||||
- `dot_minikube/config/config.json` fixes the driver to
|
||||
Docker (`"driver": "docker"`).
|
||||
|
||||
## Scripts, Packages & Assets
|
||||
- The `scripts/` directory hosts dozens of `executable_*`
|
||||
helpers that i3, fish, and launcher aliases depend on.
|
||||
Highlights:
|
||||
- `executable_sync-shortcuts` reads `aliases/key_*` and
|
||||
rewrites `~/aliases/.key_aliases`,
|
||||
`~/.config/fish/key_abbr.fish`, and ranger’s
|
||||
`key_mappings.conf`, keeping shells/ranger consistent.
|
||||
- Wallpaper helpers: `executable_shuffler` rolls a
|
||||
directory of backgrounds, `executable_bg-chooser` picks
|
||||
"bright"/"dim" sets through `dmenu`, and
|
||||
`executable_dual-monitor-slideshow` uses
|
||||
`feh`/ImageMagick to fill a single monitor while
|
||||
temporarily disabling others.
|
||||
- Audio/focus helpers: `executable_change-sink` reroutes
|
||||
Pulseaudio sinks, `executable_ubuntu-start` is an
|
||||
alternative startup script that replays
|
||||
imwheel/picom/wal, and `executable_tex-clean` deletes
|
||||
LaTeX build artefacts based on
|
||||
`txt/tex-build-files.txt`.
|
||||
- Productivity utilities: `executable_passmenu` wraps
|
||||
`pass` with `dmenu`, `executable_dmenu-history` keeps
|
||||
colorized dmenu launch history, `executable_vim-man`
|
||||
pops man pages inside Neovim, `executable_currency` hits
|
||||
`frankfurter.app`, `executable_glhf-metadata` queries an
|
||||
NFT API, and
|
||||
`executable_ticker`/`executable_dexscreener*`/`executable_kraken`
|
||||
feed price data to the i3blocks bar.
|
||||
- Misc scripts include `executable_backup-pc` (rsync/tar
|
||||
backups using exclude lists under `txt/`),
|
||||
`executable_install-arch-pkgs.sh` (installs from
|
||||
`txt/pacman-pkgs/*.txt`), `executable_spotify-clean`
|
||||
(VACUUM Spotify DB), and
|
||||
`executable_spotify-now`/`dot_config/i3blocks/scripts/executable_spotify`
|
||||
for play/pause+display via MPRIS.
|
||||
- `scripts/colors/` contains playful ASCII color art used
|
||||
for celebrations or just curiosity.
|
||||
- `txt/` contains curated data:
|
||||
- `txt/nzxt-pkgs.txt`, `txt/nzxt-aur.txt`,
|
||||
`txt/nzxt-all.txt`, `txt/nzxt-new.txt`,
|
||||
`txt/x1-carbon-pkgs.txt`, `txt/x1-carbon-aur.txt`,
|
||||
`txt/arch-2-pkgs.txt`, `txt/arch-2-aur.txt`, and similar
|
||||
lists for Ubuntu/Termux packages.
|
||||
- `txt/exclude-dirs-backup*.txt` provide directory
|
||||
exclusions for backups.
|
||||
- `txt/tex-build-files.txt` enumerates LaTeX build
|
||||
extensions for `executable_tex-clean`.
|
||||
- `txt/todo.md` and `txt/terminal-art.txt` capture
|
||||
personal notes.
|
||||
- `txt/usbs.md` tracks mounted USBs.
|
||||
|
||||
## Host Overrides & Secrets
|
||||
- `dot_config/chezmoi/chezmoi-template.toml.tmpl` flags
|
||||
`gui`, `ext_kb`, and `linux_os` so templates can read
|
||||
host-specific values (e.g., `ext_kb` decides whether
|
||||
desktop laptops load `.Xmodmap` or `.Xmodmap-laptop`). Use
|
||||
`chezmoi data set` (or edit
|
||||
`~/.config/chezmoi/chezmoi.toml`) to change these values
|
||||
per host.
|
||||
- `dot_Xresources.tmpl` and `dot_Xmodmap*` swap DPI, fonts,
|
||||
and key remaps depending on the machine (`x1-carbon` vs
|
||||
`nzxt` vs `vm`). `i3` bindings invoke `xmodmap ~/.Xmodmap`
|
||||
or the laptop variant depending on those template
|
||||
variables.
|
||||
- `private_dot_gnupg/` and `private_dot_calcurse/` are
|
||||
`chezmoi` private directories — they contain real
|
||||
keys/certs and are not committed in plaintext. Keep them
|
||||
encrypted and use `chezmoi add --private` when tracking
|
||||
new secrets.
|
||||
- `dot_config/msmtp/config` currently stores a password. In
|
||||
production, replace it with a `pass`-managed credential or
|
||||
environment variable, and never push secrets to a public
|
||||
repo.
|
||||
- `dot_taskrc` embeds `taskd` credentials (host
|
||||
`taskd.khkm.gq`), so treat `~/.taskrc` as private if you
|
||||
edit it, and sync it via `chezmoi` private mode if needed.
|
||||
- `dot_ssh/authorized_keys-all` and `known_hosts-all`
|
||||
collect the SSH state that gets populated on every machine
|
||||
you `chezmoi apply` to.
|
||||
|
||||
## Customization Tips
|
||||
- **Adding aliases/dirs/files**: edit the `aliases/key_*`
|
||||
templates, then run `~/scripts/sync-shortcuts` (or log in
|
||||
through fish and let the config run it) to regenerate
|
||||
shell aliases, fish abbrs, and ranger maps.
|
||||
- **Changing colors/backgrounds**: the i3 config,
|
||||
`dot_xinitrc`, and
|
||||
`scripts/executable_bg-chooser`/`shuffler` call `wal -i`
|
||||
on directories under `~/Pictures/Backgrounds`. Keep the
|
||||
structure and `feh` call in
|
||||
`scripts/executable_dual-monitor-slideshow` in sync when
|
||||
you add new folders.
|
||||
- **Updating mgba**: edit your local
|
||||
`~/.config/mgba/config.ini`/`qt.ini`, then run
|
||||
`dot_config/mgba/update-mgba-config.fish` to copy them
|
||||
back into the repo templates before committing.
|
||||
- **Updating i3blocks**: the configs reference scripts under
|
||||
`dot_config/i3blocks/scripts/`. Editing or adding a script
|
||||
should maintain the `command` naming convention and the
|
||||
`color`/`pywal` sourcing shown in those scripts.
|
||||
- **Neovim tweaks**: extend `dot_vimrc.tmpl` with new `Plug`
|
||||
entries; after editing, run `nvim +PlugInstall +qall` and
|
||||
keep the plugin list synchronized with `init.vim` sourcing
|
||||
the same file.
|
||||
- **Tmux tweaks**: change `dot_tmux.conf`, then reload
|
||||
(`tmux source-file`) and reinstall packages via
|
||||
`~/.tmux/plugins/tpm/bin/install_plugins` if you add TPM
|
||||
plugins.
|
||||
- **Taskwarrior contexts**: `dot_taskrc` defines contexts
|
||||
(`sniper`, `pey`, `mny`, etc.) and urgency coefficients.
|
||||
Edit them if you rename project tags, then run `task
|
||||
sync`.
|
||||
- **Backup scripts**: `scripts/executable_backup-pc` uses
|
||||
`txt/exclude-dirs-backup*.txt`, so update those lists
|
||||
whenever you add new directories to exclude from
|
||||
`rsync`/`tar` backups.
|
||||
- **Package installation**:
|
||||
`scripts/executable_install-arch-pkgs.sh` reads
|
||||
`txt/pacman-pkgs/*.txt`. Keep that tree up to date before
|
||||
running the script.
|
||||
|
||||
Feel free to browse the scripts, `dot_config/*`, and `txt/*`
|
||||
files when you need to understand how a feature works — they
|
||||
are the single source of truth for this desktop’s
|
||||
automation.
|
||||
@@ -721,6 +721,7 @@ gds "git diff --stat"
|
||||
gdsc "git diff --stat --cached -w"
|
||||
gdt "git difftool -w --tool=vimdiff"
|
||||
gdtc "git difftool -w --cached --tool=vimdiff"
|
||||
gdx "git diff -w | xclip -selection clipboard"
|
||||
gl "git log -5"
|
||||
gl1 "git log --oneline"
|
||||
gl1x "git log --oneline -1 | xclip -selection clipboard"
|
||||
@@ -1088,6 +1089,9 @@ vp "vercel --prod"
|
||||
|
||||
cr "~/Applications/cursor.AppImage --no-sandbox &"
|
||||
|
||||
h ./start.sh
|
||||
v ./start.sh voice
|
||||
|
||||
# ]]] work #
|
||||
|
||||
# red-hat [[[ #
|
||||
|
||||
@@ -302,6 +302,7 @@ rbc ~/coding/rbc-aml/src
|
||||
cibc ~/school/job-hunt/interview-questions/cibc
|
||||
|
||||
psa ~/coding/psa-arb
|
||||
hn ~/coding/hands-free-tools
|
||||
|
||||
# ]]] sch #
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
! clear Lock
|
||||
|
||||
! keycode 9 = Caps_Lock
|
||||
keycode 9 = Caps_Lock
|
||||
! keycode 66 = Escape
|
||||
! keycode 22 = BackSpace
|
||||
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
// Cursor model tiers I like:
|
||||
// - Low: gpt-5.1-codex-mini-low
|
||||
// - High: gpt-5.1-codex-mini-high
|
||||
|
||||
{
|
||||
"keyboard.dispatch": "keyCode",
|
||||
"editor.fontFamily": "'Hack', 'Droid Sans Mono', monospace",
|
||||
|
||||
@@ -40,8 +40,10 @@ set $browser "google-chrome"
|
||||
#set $browser_secondary "chromium"
|
||||
#set $browser_secondary "google-chrome-stable"
|
||||
# set $browser "chromium"
|
||||
set $browser_secondary "firefox"
|
||||
set $browser_secondary "firefox"
|
||||
set $scripts_path "/home/kevin/scripts"
|
||||
# Path to the hands-free voice tooling repo (contains voice.sh).
|
||||
set $hands_free_tools "$HOME/coding/hands-free-tools"
|
||||
set $sch_dir "$HOME/Documents/School"
|
||||
|
||||
# app shortcuts [[[ #
|
||||
@@ -364,7 +366,7 @@ bindsym $mod+Shift+F2 workspace $ws2; exec $term -e mosh kmok@$work_laptop_ip --
|
||||
# ws3 [[[ #
|
||||
|
||||
#set $ws3 "3 "
|
||||
set $ws3 "3 "
|
||||
set $ws3 "3 "
|
||||
# workspace $ws3 output $main
|
||||
# bindsym $mod+F3 workspace $ws3; exec $browser
|
||||
# bindsym $mod+F3 exec $browser; move container to workspace $ws3; workspace $ws3
|
||||
@@ -594,7 +596,8 @@ bar {
|
||||
{{ else }}
|
||||
# font pango:$sb_font 17
|
||||
#font pango:$sb_font 16:pixelsize=5
|
||||
font pango:$sb_font 16
|
||||
#font pango:$sb_font 16
|
||||
font pango:$sb_font 30
|
||||
{{ end }}
|
||||
colors {
|
||||
# 0 (transparent) -> 255 (opaque) in hex
|
||||
@@ -626,8 +629,8 @@ bar {
|
||||
font pango:$sb_font 18
|
||||
{{ else }}
|
||||
# font pango:$sb_font 21
|
||||
#font pango:$sb_font 20
|
||||
font pango:$sb_font 18
|
||||
font pango:$sb_font 30
|
||||
#font pango:$sb_font 18
|
||||
{{ end }}
|
||||
# output $main
|
||||
i3bar_command i3bar -t
|
||||
@@ -684,6 +687,17 @@ bindsym XF86AudioNext exec "dbus-send --print-reply --dest=org.mpris.MediaPlayer
|
||||
|
||||
# ]]] fn key #
|
||||
|
||||
# voice dictation [[[ #
|
||||
# One-tap toggle for voice dictation using Scroll Lock.
|
||||
bindsym Scroll_Lock exec "$hands_free_tools/voice.sh toggle"
|
||||
|
||||
# (Optional panic kill, only if you still want it)
|
||||
# bindsym Control+Scroll_Lock exec "$hands_free_tools/voice.sh quit"
|
||||
|
||||
# (Optional Vim-safe stop, only if stop-vim exists and you actually use it)
|
||||
# bindsym $mod+Shift+v exec "$hands_free_tools/voice.sh stop-vim"
|
||||
|
||||
|
||||
# ]]] media keys #
|
||||
|
||||
# vim: fdm=marker ft=i3.go-template
|
||||
|
||||
@@ -35,6 +35,7 @@ markup=pango
|
||||
|
||||
[time]
|
||||
label=
|
||||
# command=date '+%H:%M.%a-%m-%d'
|
||||
command=date '+%H:%M.%a-%m-%d'
|
||||
interval=1
|
||||
color=#acc0cd
|
||||
|
||||
@@ -19,34 +19,34 @@ color=#cbe4ff
|
||||
|
||||
# sys.monitoring [[[ #
|
||||
|
||||
[temperature]
|
||||
label=
|
||||
interval=5
|
||||
#[temperature]
|
||||
#label=
|
||||
#interval=5
|
||||
|
||||
[cpu_usage]
|
||||
label=
|
||||
interval=5
|
||||
#[cpu_usage]
|
||||
#label=
|
||||
#interval=5
|
||||
|
||||
[memory]
|
||||
label=
|
||||
# color=#3da061
|
||||
interval=2
|
||||
#[memory]
|
||||
#label=
|
||||
## color=#3da061
|
||||
#interval=2
|
||||
|
||||
# ]]] sys.monitoring #
|
||||
|
||||
# volume/spotify [[[ #
|
||||
|
||||
[spotify]
|
||||
#command=python ~/linux-config/configs/i3blocks-scripts/spotify.py
|
||||
command=/home/kevin/.config/i3blocks/scripts/spotify
|
||||
# label=
|
||||
label=
|
||||
# # label=🎧
|
||||
# # green
|
||||
# # color=#198c19
|
||||
# # aqua
|
||||
# # color=#2d7272
|
||||
interval=5
|
||||
#[spotify]
|
||||
##command=python ~/linux-config/configs/i3blocks-scripts/spotify.py
|
||||
#command=/home/kevin/.config/i3blocks/scripts/spotify
|
||||
## label=
|
||||
#label=
|
||||
## # label=🎧
|
||||
## # green
|
||||
## # color=#198c19
|
||||
## # aqua
|
||||
## # color=#2d7272
|
||||
#interval=5
|
||||
|
||||
# [spotify]
|
||||
# label=
|
||||
|
||||
@@ -66,12 +66,12 @@ interval=30
|
||||
# TICKER=SEIUSD
|
||||
# interval=30
|
||||
|
||||
[dexscreener]
|
||||
label=PIXL
|
||||
#CHAIN=ethereum
|
||||
#PAIR=0x31c0ba10e4e12be6cdceb612e5e829d977532bfc
|
||||
command=/home/kevin/.config/i3blocks/scripts/dexscreener ethereum 0x31c0ba10e4e12be6cdceb612e5e829d977532bfc
|
||||
interval=30
|
||||
#[dexscreener]
|
||||
#label=PIXL
|
||||
##CHAIN=ethereum
|
||||
##PAIR=0x31c0ba10e4e12be6cdceb612e5e829d977532bfc
|
||||
#command=/home/kevin/.config/i3blocks/scripts/dexscreener ethereum 0x31c0ba10e4e12be6cdceb612e5e829d977532bfc
|
||||
#interval=30
|
||||
|
||||
#[dexscreener]
|
||||
#label=PENGU
|
||||
|
||||
@@ -3,8 +3,10 @@
|
||||
WIDTH=${WIDTH:-200}
|
||||
HEIGHT=${HEIGHT:-200}
|
||||
#DATEFMT=${DATEFMT:-"+%a %d.%m.%Y %H:%M:%S"}
|
||||
DATEFMT=${DATEFMT:-"+ %a %-m/%d %H:%M"}
|
||||
SHORTFMT=${SHORTFMT:-"+%H:%M:%S"}
|
||||
#DATEFMT=${DATEFMT:-"+ %a %-m/%d %H:%M"}
|
||||
#SHORTFMT=${SHORTFMT:-"+%H:%M:%S"}
|
||||
DATEFMT=${DATEFMT:-"+%H:%M"}
|
||||
SHORTFMT=${SHORTFMT:-"+%H:%M"}
|
||||
|
||||
OPTIND=1
|
||||
while getopts ":f:W:H:" opt; do
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
. "/home/kevin/.cache/wal/colors.sh"
|
||||
|
||||
# Define the date format matching the output in your screenshot (e.g., Sat 12/06 12:46)
|
||||
DATE_FORMAT='+%a %m/%d %H:%M'
|
||||
#DATE_FORMAT='+%a %m/%d %H:%M'
|
||||
DATE_FORMAT='%H:%M'
|
||||
|
||||
# Use Pango markup to wrap the entire string, applying the color,
|
||||
# and explicitly defining the icon () and the date output.
|
||||
|
||||
319
tree.txt
Normal file
319
tree.txt
Normal file
@@ -0,0 +1,319 @@
|
||||
.
|
||||
├── aliases
|
||||
│ ├── key_aliases.tmpl
|
||||
│ ├── key_dirs.tmpl
|
||||
│ └── key_files.tmpl
|
||||
├── dot_bashrc
|
||||
├── dot_config
|
||||
│ ├── chezmoi
|
||||
│ │ └── chezmoi-template.toml.tmpl
|
||||
│ ├── Code
|
||||
│ │ └── User
|
||||
│ │ ├── keybindings.json
|
||||
│ │ └── settings.json
|
||||
│ ├── Cursor
|
||||
│ │ └── User
|
||||
│ │ ├── keybindings.json
|
||||
│ │ └── settings.json
|
||||
│ ├── dunst
|
||||
│ │ └── dunstrc
|
||||
│ ├── fish
|
||||
│ │ ├── completions
|
||||
│ │ │ ├── buku.fish
|
||||
│ │ │ ├── kogito.fish
|
||||
│ │ │ ├── kubectl.fish
|
||||
│ │ │ ├── minikube.fish
|
||||
│ │ │ ├── pass.fish
|
||||
│ │ │ ├── timetrace.fish
|
||||
│ │ │ └── watson.fish
|
||||
│ │ ├── config.fish.tmpl
|
||||
│ │ ├── functions
|
||||
│ │ │ ├── 369
|
||||
│ │ │ │ ├── a2
|
||||
│ │ │ │ │ ├── carsim.fish
|
||||
│ │ │ │ │ └── gdb-a2.fish
|
||||
│ │ │ │ ├── a3
|
||||
│ │ │ │ │ ├── gdb-a3-break.fish
|
||||
│ │ │ │ │ └── run-a3.fish
|
||||
│ │ │ │ ├── a4
|
||||
│ │ │ │ │ ├── block-to-line.fish
|
||||
│ │ │ │ │ ├── executable_revert-image.fish
|
||||
│ │ │ │ │ ├── hex.fish
|
||||
│ │ │ │ │ ├── mount-image.fish
|
||||
│ │ │ │ │ └── run-a4.fish
|
||||
│ │ │ │ ├── grep-c.fish
|
||||
│ │ │ │ ├── grep-headers.fish
|
||||
│ │ │ │ ├── rgc.fish
|
||||
│ │ │ │ └── rg-headers.fish
|
||||
│ │ │ ├── aws-attach-volume.fish
|
||||
│ │ │ ├── backup-phone-pics.fish
|
||||
│ │ │ ├── bc-qalc.fish
|
||||
│ │ │ ├── benq-brightness.fish
|
||||
│ │ │ ├── cad-to-us.fish
|
||||
│ │ │ ├── cd.fish.tmpl
|
||||
│ │ │ ├── certbot-ssl.fish
|
||||
│ │ │ ├── clip.fish
|
||||
│ │ │ ├── conda_activate.fish
|
||||
│ │ │ ├── copy.fish
|
||||
│ │ │ ├── create-fish-function.fish
|
||||
│ │ │ ├── define.fish
|
||||
│ │ │ ├── discord-burner.fish
|
||||
│ │ │ ├── dump-rarity-check.fish
|
||||
│ │ │ ├── enable-site.fish
|
||||
│ │ │ ├── evince-silent.fish
|
||||
│ │ │ ├── export-pkgs.fish
|
||||
│ │ │ ├── find-bg.fish
|
||||
│ │ │ ├── find-vim-filetype.fish
|
||||
│ │ │ ├── fish_mode_prompt.fish
|
||||
│ │ │ ├── fn-progress.fish
|
||||
│ │ │ ├── fzf-cd.fish
|
||||
│ │ │ ├── fzf-ranger.fish
|
||||
│ │ │ ├── fzf-vim.fish
|
||||
│ │ │ ├── gen-pass.fish
|
||||
│ │ │ ├── git
|
||||
│ │ │ │ ├── git-amend-push.fish
|
||||
│ │ │ │ ├── git-clone-gitea.fish
|
||||
│ │ │ │ ├── git-delete-branch.fish
|
||||
│ │ │ │ ├── git-diff-files.fish
|
||||
│ │ │ │ ├── git-mult-remotes.fish
|
||||
│ │ │ │ ├── git-push-diff-name.fish
|
||||
│ │ │ │ ├── git-push-initial.fish
|
||||
│ │ │ │ ├── git-push-multiple.fish
|
||||
│ │ │ │ ├── git-push-new-gitea.fish
|
||||
│ │ │ │ ├── git-replace-origin.fish
|
||||
│ │ │ │ └── git-replace-origin-gitea.fish
|
||||
│ │ │ ├── git-log-short.fish
|
||||
│ │ │ ├── git-submodule-branch.fish
|
||||
│ │ │ ├── grep-aliases.fish
|
||||
│ │ │ ├── grep-pdf-file.fish
|
||||
│ │ │ ├── grep-pdf.fish
|
||||
│ │ │ ├── ipad
|
||||
│ │ │ │ ├── clip-ipad.fish
|
||||
│ │ │ │ ├── mpv-ipad.fish
|
||||
│ │ │ │ ├── mpv-ipad-mov.fish
|
||||
│ │ │ │ ├── rm-ipad.fish
|
||||
│ │ │ │ ├── rsync-ipad-vid.fish
|
||||
│ │ │ │ ├── rsync-ipad-vid-mov.fish
|
||||
│ │ │ │ └── unmount-ipad.fish
|
||||
│ │ │ ├── java-compile-run.fish
|
||||
│ │ │ ├── java-compile-test.fish
|
||||
│ │ │ ├── libreoffice-silent.fish
|
||||
│ │ │ ├── man-vim.fish
|
||||
│ │ │ ├── maven-test-method.fish
|
||||
│ │ │ ├── mkdir-cd.fish
|
||||
│ │ │ ├── mpv-sub.fish
|
||||
│ │ │ ├── mute-video.fish
|
||||
│ │ │ ├── pastebin.fish
|
||||
│ │ │ ├── qalc-history.fish
|
||||
│ │ │ ├── qalc-update-amount.fish
|
||||
│ │ │ ├── qalc-update.fish
|
||||
│ │ │ ├── readlink-cp.fish
|
||||
│ │ │ ├── redshift-set.fish
|
||||
│ │ │ ├── refresh-config.fish
|
||||
│ │ │ ├── refresh-config-task.fish
|
||||
│ │ │ ├── reminder.fish
|
||||
│ │ │ ├── scan-history.fish
|
||||
│ │ │ ├── scp-cdf.fish
|
||||
│ │ │ ├── scp-vid.fish
|
||||
│ │ │ ├── server-pages.fish
|
||||
│ │ │ ├── shred-rm.fish
|
||||
│ │ │ ├── smol
|
||||
│ │ │ │ ├── smol-add.fish
|
||||
│ │ │ │ ├── smol-delete.fish
|
||||
│ │ │ │ ├── smol-replace.fish
|
||||
│ │ │ │ └── smol-slist.fish
|
||||
│ │ │ ├── ssh-bandit.fish
|
||||
│ │ │ ├── sudo.fish
|
||||
│ │ │ ├── sxiv-silent.fish
|
||||
│ │ │ ├── sync-alt-cal.fish
|
||||
│ │ │ ├── systemctl-restart.fish
|
||||
│ │ │ ├── task
|
||||
│ │ │ │ ├── task-anno.fish
|
||||
│ │ │ │ ├── task-context.fish
|
||||
│ │ │ │ ├── task-delete.fish
|
||||
│ │ │ │ ├── task-done.fish
|
||||
│ │ │ │ ├── task-due.fish
|
||||
│ │ │ │ ├── task-due-rm.fish
|
||||
│ │ │ │ ├── task-edit.fish
|
||||
│ │ │ │ ├── task-mod-pri.fish
|
||||
│ │ │ │ ├── task-mod-proj.fish
|
||||
│ │ │ │ ├── task-mod-tag.fish
|
||||
│ │ │ │ ├── task-next.fish
|
||||
│ │ │ │ ├── task-next-rm.fish
|
||||
│ │ │ │ ├── task-notes.fish
|
||||
│ │ │ │ ├── task-start.fish
|
||||
│ │ │ │ └── task-wait.fish
|
||||
│ │ │ ├── taskopen-new.fish
|
||||
│ │ │ ├── test_output.txt
|
||||
│ │ │ ├── thesaurus.fish
|
||||
│ │ │ ├── timetrace-list.fish
|
||||
│ │ │ ├── tmux-attach.fish
|
||||
│ │ │ ├── unix-timestamp.fish
|
||||
│ │ │ ├── unzip-rm.fish
|
||||
│ │ │ ├── us-to-cad.fish
|
||||
│ │ │ ├── video-to-gif.fish
|
||||
│ │ │ ├── vim-snippet.fish
|
||||
│ │ │ ├── vpn-red-hat.fish
|
||||
│ │ │ ├── watson-add-fortnite.fish
|
||||
│ │ │ ├── watson-add-game.fish
|
||||
│ │ │ ├── wc-pdf.fish
|
||||
│ │ │ ├── wget-all.fish
|
||||
│ │ │ └── wget-name.fish
|
||||
│ │ └── spotifyvis.bak\012abbr sv serve
|
||||
│ ├── i3
|
||||
│ │ └── config.tmpl
|
||||
│ ├── i3blocks
|
||||
│ │ ├── i3blocks.conf.tmpl
|
||||
│ │ ├── i3blocks-display.conf
|
||||
│ │ ├── i3blocks-secondary.conf.tmpl
|
||||
│ │ └── scripts
|
||||
│ │ ├── executable_backlight
|
||||
│ │ ├── executable_battery
|
||||
│ │ ├── executable_calendar
|
||||
│ │ ├── executable_cpu_usage
|
||||
│ │ ├── executable_dexscreener
|
||||
│ │ ├── executable_dexscreener-fdv
|
||||
│ │ ├── executable_dexscreener-mc
|
||||
│ │ ├── executable_fn_level
|
||||
│ │ ├── executable_kraken
|
||||
│ │ ├── executable_load_average
|
||||
│ │ ├── executable_memory
|
||||
│ │ ├── executable_name
|
||||
│ │ ├── executable_spotify
|
||||
│ │ ├── executable_temperature
|
||||
│ │ ├── executable_ticker
|
||||
│ │ ├── executable_time
|
||||
│ │ ├── executable_volume
|
||||
│ │ └── executable_wifi
|
||||
│ ├── kitty
|
||||
│ │ └── kitty.conf
|
||||
│ ├── mgba
|
||||
│ │ ├── config-tmpl.ini
|
||||
│ │ ├── qt-tmpl.ini
|
||||
│ │ └── update-mgba-config.fish
|
||||
│ ├── mimeapps-ffox.list
|
||||
│ ├── mimeapps.list
|
||||
│ ├── mpv
|
||||
│ │ ├── input.conf
|
||||
│ │ └── mpv.conf
|
||||
│ ├── msmtp
|
||||
│ │ └── config
|
||||
│ ├── neofetch
|
||||
│ │ └── config.conf
|
||||
│ ├── neomutt
|
||||
│ │ └── neomuttrc
|
||||
│ ├── nvim
|
||||
│ │ └── init.vim
|
||||
│ ├── picom
|
||||
│ │ └── picom.conf
|
||||
│ ├── ranger
|
||||
│ │ ├── commands.py
|
||||
│ │ ├── executable_scope.sh
|
||||
│ │ ├── plugins
|
||||
│ │ │ ├── executable_devicons_linemode.py
|
||||
│ │ │ ├── executable_devicons.py
|
||||
│ │ │ └── __pycache__
|
||||
│ │ │ ├── devicons.cpython-37.opt-1.pyc
|
||||
│ │ │ ├── devicons_linemode.cpython-37.opt-1.pyc
|
||||
│ │ │ └── __init__.cpython-37.opt-1.pyc
|
||||
│ │ ├── rc.conf.tmpl
|
||||
│ │ └── rifle.conf
|
||||
│ ├── st
|
||||
│ │ └── config.def.h.tmpl
|
||||
│ └── zathura
|
||||
│ └── zathurarc
|
||||
├── dot_gdbinit
|
||||
├── dot_gitconfig.tmpl
|
||||
├── dot_imwheelrc
|
||||
├── dot_inputrc
|
||||
├── dot_minikube
|
||||
│ └── config
|
||||
│ └── config.json
|
||||
├── dot_qalcrc
|
||||
├── dot_ssh
|
||||
│ ├── authorized_keys-all
|
||||
│ └── known_hosts-all
|
||||
├── dot_taskopenrc
|
||||
├── dot_taskrc
|
||||
├── dot_tmux.conf
|
||||
├── dot_vimrc.tmpl
|
||||
├── dot_xinitrc.tmpl
|
||||
├── dot_Xmodmap
|
||||
├── dot_Xmodmap-laptop
|
||||
├── dot_Xmodmap-laptop-old
|
||||
├── dot_Xmodmap-old
|
||||
├── dot_Xmodmap-ubuntu
|
||||
├── dot_Xmodmap-vm
|
||||
├── dot_Xresources.tmpl
|
||||
├── dot_zshrc
|
||||
├── private_dot_calcurse
|
||||
│ ├── caldav
|
||||
│ │ └── config
|
||||
│ ├── conf
|
||||
│ └── keys
|
||||
├── private_dot_gnupg
|
||||
│ ├── gpg-agent.conf
|
||||
│ ├── gpg-agent-template.conf
|
||||
│ └── gpg.conf
|
||||
├── README.md
|
||||
├── scripts
|
||||
│ ├── colors
|
||||
│ │ ├── executable_arch
|
||||
│ │ ├── executable_blocks
|
||||
│ │ ├── executable_panes
|
||||
│ │ ├── executable_rupees
|
||||
│ │ ├── executable_space-invaders
|
||||
│ │ └── executable_unowns
|
||||
│ ├── executable_backup-pc
|
||||
│ ├── executable_bg-chooser
|
||||
│ ├── executable_burn-iso.sh
|
||||
│ ├── executable_change-sink
|
||||
│ ├── executable_currency
|
||||
│ ├── executable_dexscreener
|
||||
│ ├── executable_dexscreener-fdv
|
||||
│ ├── executable_dexscreener-mc
|
||||
│ ├── executable_dmenu-history
|
||||
│ ├── executable_dmenu-twitch
|
||||
│ ├── executable_dual-monitor-slideshow
|
||||
│ ├── executable_glhf-metadata
|
||||
│ ├── executable_install-arch-pkgs.sh
|
||||
│ ├── executable_kraken
|
||||
│ ├── executable_passmenu
|
||||
│ ├── executable_qr-gif.sh
|
||||
│ ├── executable_rick-roll
|
||||
│ ├── executable_shuffler
|
||||
│ ├── executable_spotify-clean
|
||||
│ ├── executable_spotify-now
|
||||
│ ├── executable_sync-shortcuts
|
||||
│ ├── executable_tex-clean
|
||||
│ ├── executable_ticker
|
||||
│ ├── executable_twem
|
||||
│ ├── executable_twitchy-game
|
||||
│ ├── executable_ubuntu-start
|
||||
│ ├── executable_vim-man
|
||||
│ └── executable_xmodmap-custom.tmpl
|
||||
├── tree.txt
|
||||
└── txt
|
||||
├── arch-2-aur.txt
|
||||
├── arch-2-pkgs.txt
|
||||
├── exclude-dirs-backup-full.txt
|
||||
├── exclude-dirs-backup.txt.tmpl
|
||||
├── gtk-themes.txt
|
||||
├── nzxt-all.txt
|
||||
├── nzxt-aur.txt
|
||||
├── nzxt-new.txt
|
||||
├── nzxt-pkgs.txt
|
||||
├── terminal-art.txt
|
||||
├── termux-pkgs.txt
|
||||
├── tex-build-files.txt
|
||||
├── todo.md
|
||||
├── ubuntu
|
||||
│ ├── apt-packages.txt
|
||||
│ ├── npm-packages.txt
|
||||
│ ├── pip-packages.txt
|
||||
│ └── snap-packages.txt
|
||||
├── usbs.md
|
||||
├── x1-carbon-aur.txt
|
||||
└── x1-carbon-pkgs.txt
|
||||
|
||||
46 directories, 271 files
|
||||
Reference in New Issue
Block a user