Skip to main content

max / alloy

4.6 KB · 122 lines History Blame Raw
1 # 9. Files, editing, and media
2
3 Alloy ships one default per job. All of them are keyboard-driven, and most of
4 them are vim-shaped.
5
6 ## Files: yazi
7
8 yazi
9
10 A two-pane file manager in the terminal, with previews. Under shop it renders
11 images inline using the kitty graphics protocol rather than falling back to
12 coloured blocks, which is most of what the terminal is asked for here.
13
14 `?` lists its keys. `q` leaves.
15
16 There is no graphical file manager in the image. Apps that need to open or save
17 a file get a portal dialog, which is what a browser uses, so the daily case is
18 covered. If you want one anyway, it comes from a flatpak remote you add (chapter 7).
19
20 ## Editing: helix
21
22 hx <file>
23
24 Modal, selection-first: you select and then act, so it is `3wd` where vim is
25 `d3w`. Language servers, tree-sitter highlighting, and formatters are built in
26 rather than assembled from plugins. It is useful with no configuration.
27
28 `EDITOR` is set to `hx`, so git commit messages and everything else that
29 respects `$EDITOR` open here.
30
31 Alloy ships the Akari theme and a small config at `~/.config/helix/`. If you
32 have vim muscle memory, expect a week or two of friction; the grammar is a real
33 improvement but it is not the one your fingers know. `:tutor` is the fastest
34 way through.
35
36 ## PDFs: zathura
37
38 zathura <file.pdf>
39
40 vim keys, statusbar-only chrome. `i` toggles recolouring, which is off in the
41 day theme (the page already agrees with the chrome) and on at night (an
42 unrecoloured PDF in a dark session is a floodlight).
43
44 zathura reads. It does not annotate, and Alloy does not ship an annotator.
45
46 ## Images: imv
47
48 imv <file>
49
50 Wayland-native, tiny, vi-like keys. The overlay is hidden until you ask for it.
51
52 ## Video and audio: mpv
53
54 mpv <file-or-url>
55
56 No chrome by default, hardware decoding on, screenshots to
57 `~/Pictures/Screenshots`. It plays streams through yt-dlp, capped at 1080p in
58 the shipped config.
59
60 A fullscreen mpv window holds the screen lock off. A windowed one does not,
61 because a windowed video is usually something being glanced at.
62
63 ## System monitoring: bottom
64
65 btm
66
67 or `top`, which is aliased to it. ratatui-based, same visual family as the
68 console. Clicking is disabled on purpose; it is keyboard-only.
69
70 ## Disk usage: dua
71
72 du
73
74 is aliased to `dua interactive`. Navigate with vim keys, mark things for
75 deletion, delete them.
76
77 ## Clipboard history
78
79 Everything you copy is recorded, text and images both. `Mod+Shift+V` opens a
80 picker over the history; choose an entry and it goes back on the clipboard.
81
82 The store is at `~/.local/share/cliphist/db` and needs no configuration. If you
83 want a copy to never be recorded, there is no per-copy exclusion today; clear
84 the history with `cliphist wipe`.
85
86 ## Screenshots and annotation
87
88 Covered in chapter 5. The one thing worth repeating here: `Mod+Print` opens the
89 most recent capture in satty, which is where you crop, arrow, and blur before
90 sending it somewhere.
91
92 ## The browser
93
94 Firefox ships in the image as the default browser. It comes from Fedora's own
95 repositories, which matters more than it sounds: those stay enabled after you
96 install, so a machine built with no browser at all is one `rpm-ostree install
97 firefox` away from this one.
98
99 Alloy changes exactly one file, `/etc/firefox/pref/alloy.js`, and it is worth
100 knowing what is in it because the rule it follows is short. Alloy turns off
101 things that serve somebody other than you: telemetry, sponsored placements on
102 the new tab page and in the address bar, and the AI features, which arrive
103 switched on and download models nobody asked for. It sets tracking protection
104 to strict. It also turns on one thing, `browser.compactmode.show`, which puts
105 the density control back in Customize where Mozilla hides it.
106
107 That last one is the pattern rather than an exception. Alloy would rather hand
108 you back a control than pick the value for you, so it does not set the density
109 itself: compact is one click away in Customize and the choice stays yours.
110
111 Nothing in that file is locked. Every line is a starting position you can
112 change in Settings, and if you disagree with all of it, changing all of it is
113 supported. There is no policy file, no autoconfig, and no chrome CSS. Anything
114 past what a well-behaved app reads from the system (light or dark, the GTK
115 theme for dialogs, the cursor, the fonts) is yours to set in the browser's own
116 settings.
117
118 Two honest notes. Because the browser lives in the image, it updates when you
119 rebuild the image and not before (chapter 8). And Mozilla renames preferences
120 between releases, so a line in that file can quietly stop applying; the file
121 records which Firefox version its names were read from.
122