Nix (home-manager) configurations for my computers
Commits at 1d11006844d5ca0833500d3dba263d05c9c298b5
1d110068nvim: Migrate to nvim.lsp fully
It was indeed breaking changes. Also neovim seems to launch every
language servers at startup, I'm not sure this has been the case though.
It's unfortunate Helix only supports insane selection > verb controls...
Shota FUJI
authored at
Shota FUJI
comitted at
e5346c24nvim: Fix restarted LSP ignores client configs
nvim-lspconfig silently updated initial setup way. `.setup` works for
language server's initial run, but once it restarted (due to crash or
manual restart) it no longer reads configs set by `.setup`.
There is no changelog or release notes on nvim-lspconfig. GitHub's
automatic definetely-not-a-release-note creation feature is net negative
for software industry.
Shota FUJI
authored at
Shota FUJI
comitted at
3632e0dcwaybar: Improve style
Dark/Light mode switch and more legible texts.
Shota FUJI
authored at
Shota FUJI
comitted at
cbf5bb95wayland-de: Install Atkinson Hyperlegible Next
for waybar, but GTK+ cannot find the font. I kept it as-is for other
apps (e.g. Firefox)
Shota FUJI
authored at
Shota FUJI
comitted at
fbb81080mise: Specify tools to read idiomatic version file
The default behavior will change in a near future release.
Shota FUJI
authored at
Shota FUJI
comitted at
e59a995bwayland-de: Replace tofi with walker
I'm still not used to the tiny bar at the bottom of the screen.
Styling tofi was very limited also.
The reason why I choose walker specifially is it reads light/dark theme
from gsettings.
Shota FUJI
authored at
Shota FUJI
comitted at
a10b7f63jj: Add "author" alias command
Jujutsu records incorrect author date—timestamp at when a commit became
non-empty. As there is no options to update author date on changes,
created a command to manually set current datetime to author date.
This problem was recognized in JJ issue tracker and a PR
<https://github.com./jj-vcs/jj/pull/3906> was created. However, the
direction went from "reset author on configurable revset" to "fix author
date on non-empty commit" due to simplicity concern.
An option for author reset revset option may or may not come in a
future, but hoping someone to tackle the problem is not a wise choice.
Alias is hacky and future JJ updates may conflict or break it. But this
incorrect author date is a real problem I have now, so, better than
nothing.
Shota FUJI
authored at
Shota FUJI
comitted at
f3bc0a3bprogram/theme: Fix process invoked by systemd have no effects
Even though running command manually (via terminal emulator) works,
systemd service does not actually change theme. Set function succeeds,
no panic, and still the actual value does not get the new value.
I tried configuring dbus env vars and using `new_full` function to match
function calls to `gsettings` CLI, but neither fixed the situation.
I have completely no idea why changes through C API does not work.
Shota FUJI
authored at
Shota FUJI
comitted at
c5d9196aprogram/theme: Overlay my-theme for nixpkgs
This new way is straightforward compared `lib.mkIf ...`.
Shota FUJI
authored at
Shota FUJI
comitted at
fd303018program/theme: Split theme source file into multiple files
Tried to add a feature and felt congested.
Shota FUJI
authored at
Shota FUJI
comitted at
e8dbbe61program/theme: Use GIO API directly
Calling CLI has performance overhead and adds massive error cases such
as non-zero exit code and signals.
Shota FUJI
authored at
Shota FUJI
comitted at
dea0a812Program for theme switching on Linux
Calling Atuin everytime switching theme is not smart way to do.
Shota FUJI
authored at
Shota FUJI
comitted at
1d47bc31nix: Workaround for Nix using Bash for everything
They seems to have no intention to fix this.
Shota FUJI
authored at
Shota FUJI
comitted at
2390eb81nvim: Install sourcekit-lsp
nvim yells everytime I open C files on computer without sourcekit
installed.
Shota FUJI
authored at
Shota FUJI
comitted at
ea6eaa65nvim: Treat .vapi file as Vala source code
vim/neovim's default filetype config for Vala is incomplete.
Shota FUJI
authored at
Shota FUJI
comitted at
234a0a5cnvim: Enable swift language server (sourcekit)
It does not support custom framework. Still, better than nothing.
Shota FUJI
authored at
Shota FUJI
comitted at
aeb19ff7nvim: Disable mini.completion two-stage completion
Tried it for a while but it's just annoying.
Rarely useful, rest is confusing and misleading.
Shota FUJI
authored at
Shota FUJI
comitted at
d250bb2envim: Disable LSP snippets
Most of the language servers correctly uses snippets. But some, such as
gopls, abuses snippets everywhere and that fucks up editing experience
a whole. I'm not completely sure the consequence of this change, but at
least editing Go files are much saner than with shitty snippets.
Shota FUJI
authored at
Shota FUJI
comitted at
febf1d98nvim: Use mini-completion instead of nvim-cmp
nvim-cmp suffers from window layout bug.
https://github.com./hrsh7th/nvim-cmp/issues/1812
Totally accident, but mini-completion has better <Tab>/<S-Tab>
completion experience compared to nvim-cmp. It's more natural and
similar to one of regular GUI editors.
Shota FUJI
authored at
Shota FUJI
comitted at
3038213catuin: Prevent it from changing scroll position
Some of recent releases changed the default behavior, and now I have to
manually set this.
Shota FUJI
authored at
Shota FUJI
comitted at
1829e887ghostty: Prevent HM from adding nonexistent bat syntax
It has on-by-default option which blindly copies Ghostty's asset file.
Since I use NUR package, which is an essentially `.dmg` installer, that
file does not exist on darwin environment.
Shota FUJI
authored at
Shota FUJI
comitted at
8c839855License non-programs 0BSD and media files CC BY-ND 4.0
Zero-Clause BSD has much shorter license text that I can put the whole
text into comment header. It also allows non-attribution so anyone can
safely copy and paste whole code or a chunk of.
OSS licenses are made for software programs and do not work well with
media assets. Creative Commons is better choice for that purpose.
I choose BY-ND 4.0 because currently a screenshot file is the only media
file in this repo. If someone fork or reuse the code from this repo and
put a screenshot of their derivative work, it's made from scratch not
modifying the existing screenshot, because it is, uh, screenshot.
Shota FUJI
authored at
Shota FUJI
comitted at
07a4689bAnnotate each files with copyright and license in REUSE style
By explicitly annotating each files, introducing third-party files such
as image and code would be much easier. With single `LICENSE` file and
no license headers, there is no clean way to mark certain files have
different license/copyright to the rest. By adapting to REUSE compliant
annotations, license/copyright is clear to both human and machines.
Shota FUJI
authored at
Shota FUJI
comitted at
d5ddfd93fcitx5: Use Wayland frontend
Without this option enabled, home-manager sets legacy environment
variables to start up script, which triggers warning notification from
fcitx.
Shota FUJI
authored at
Shota FUJI
comitted at
0e97d2e7ghostty: Do not split on Linux
To unify window managements into niri.
Shota FUJI
authored at
Shota FUJI
comitted at
b2746a2cniri: Configure column width/window height presets
To my liking.
Shota FUJI
authored at
Shota FUJI
comitted at
009ec593niri: Improve vertical window movement keybindings
It was essentially no-op due to there were no keybindings to create
rows.
Shota FUJI
authored at
Shota FUJI
comitted at
db9a1355niri: Darken background color
The previous "base" color is also set to Ghostty's background. Due to
that, it was difficult to see boundaries of Ghostty windows.
Shota FUJI
authored at
Shota FUJI
comitted at
e9cd9a4cnvim: Change LSP hover border to rounded
I found this to be more distinctive.
Shota FUJI
authored at
Shota FUJI
comitted at
b07d922anvim: Migrate to vim.lsp.buf.hover border option
The previous way is removed in v0.11.
Shota FUJI
authored at
Shota FUJI
comitted at
b71e62f1ghostty: Open new window rather than tab in Linux
I use Ghostty tabs in macOS because window management in macOS is joke.
However, on Linux, Niri functionally manages my windows so I'd like to
let niri handle Ghostty sessions.
Shota FUJI
authored at
Shota FUJI
comitted at
d41949ecMigrated deprecated types.string to types.str
Addressed a warning in CLI output.
Shota FUJI
authored at
Shota FUJI
comitted at
ac7c3318niri: Increased default keyboard repeat-delay
It was little bit too fast. I noticed occasional unexpected key-repeat.
Shota FUJI
authored at
Shota FUJI
comitted at
bc153fd8Update home-manager
The reason I kept its version is they introduced shitty Ghostty config
due to rushed release. Time passed and their Ghostty config is now
usable so migrated to theirs.
Shota FUJI
authored at
Shota FUJI
comitted at
aadce327zsh: Remove "exiv2" from completion list
This fucking stupid name command line tool was installed as a dependency
of some GTK tool (fuck) and messed up tab-completion.
Shota FUJI
authored at
Shota FUJI
comitted at
13d7c9a5zsh: Prevent "dpipe" from appearing into completion list
I don't know since when but today I hit "dp<Enter>" to complete to "dprint",
"dpipe" stopped the workflow by popping completion list. I've never
installed the program and I have no idea which tool is to blam, so
hide that program from completion list.
Shota FUJI
authored at
Shota FUJI
comitted at
4a89d402legit: Upgrade to latest ref
For improved layout and enchanced datetime display.
Shota FUJI
authored at
Shota FUJI
comitted at
4b402341legit: Upgrade to latest ref
To workaround Android (14?) Chrome layout glitch.
Shota FUJI
authored at
Shota FUJI
comitted at
d7196bfeUpdate nixpkgs
To incorporate a patch introduced in jj@0.26. It could not push to
OneDev or soft-serve due to libgit2/libssh2 shenanigans.
<https://github.com./jj-vcs/jj/issues/4979>
Shota FUJI
authored at
Shota FUJI
comitted at
b35620f7legit: Add legit (git web frontend)
Felt the need for web index page.
Shota FUJI
authored at
Shota FUJI
comitted at
8d594020Update Flake
```
$ nix profile diff-closures --profile ~/.local/state/nix/profiles/home-manager
Version 662 -> 663:
ghostty: 1.1.0, 1.1.0-shell_integration → 1.1.2, 1.1.2-shell_integration, +4719.0 KiB
```
Shota FUJI
authored at
Shota FUJI
comitted at
dcbb1fd1scm-server: Add module
Found a good one (soft-serve). OneDev is bloated and cumbersome to
manage, hope this one works well for long term.
Shota FUJI
authored at
Shota FUJI
comitted at
37b3fb6ajj: Fix unable to switch when gpg signing key is missing
JJ module in home-manager cannot handle null.
Shota FUJI
authored at
Shota FUJI
comitted at
e275c799ghostty: Use NUR variant on Darwin
nixpkgs removed Darwin Ghostty by mark the package as broken, due to it
not being able to build because of macOS/SwiftUI SDK stuffs. Since there
is no ETA for the fix and there are security updates from Ghostty, I
decided to switch to user made derivation.
Shota FUJI
authored at
Shota FUJI
comitted at
0e7728e0jj: Prevent pushing commits prefixed with "[WIP]"
"wip:" prefix, which is used as an example in JJ docs, is not suitable
for many projects because "scope:" is quite popular prefix in the wild.
Using that would leads to, for example, "wip: jj: Change wording".
This is confusing and does not stand out among other commits. WIP marker
should be easily spottable.
I tried to use "regex-" kind, but it's not available in this version of
JJ. I can't upgrade nixpkgs due to Ghostty is marked as broken in newer
nixpkgs.
Shota FUJI
authored at
Shota FUJI
comitted at
46033067Don't use specialisations
It was for light/dark mode switch. Ghostty supports platform-native one.
Shota FUJI
authored at
Shota FUJI
comitted at
3fb93c9eghostty: Increase resize split amount
Ghostty's resizing by keyboard is not smooth as kitty's one.
Shota FUJI
authored at
Shota FUJI
comitted at
0327f918rg: Sort results
Ripgrep do not sort by default. And it's close to unusable for my
usecases. It seems to disable the option by default for performance, but
in my projects, single-threaded search is faster than multi-threaded
randomly sorted one. Only pros.
Shota FUJI
authored at
Shota FUJI
comitted at
107de5d3ghostty: Disable discretionary ligatures
I noticed a word "ページ" is rendered as "㌻ ".
Suspected ligature settings, removed "calt" font-feature, which
activates Monaspace's Texture headling feature. Still "㌻ ".
After searching Ghostty issue tracker, I found a culprit:
<https://github.com/ghostty-org/ghostty/issues/1710>
It was "dlig" font-feature, which is not recommended to be on by default
because of its nature. Ghostty seems to set to on by default, for some
reasons.
It completely spoils Japanese text rendering and brings no benefits.
The linked issue has comments with insightful links.
Shota FUJI
authored at
Shota FUJI
comitted at
7325f55dghostty: Add Ghostty
The primary motivation for the switch is dark/light mode switch.
There should be other terminal emulators with that feature, but this
program is performant, simple and has essential features without bloat.
I removed almost all of catppuccin palette from CLI tool configs, so
they use terminal's palette and seamlessly switch between light/dark
mode.
Shota FUJI
authored at
Shota FUJI
comitted at
670e90a4nvim: Disable CSS LS warnings
It's useless. It does not emit useful warning.
Shota FUJI
authored at
Shota FUJI
comitted at
5d72565ckitty: Show window decorations
Kitty sometimes opens a window on a non-primary display for some
reasons (probably a bug). In that occasion, it's quite annoying to move
the window to primary display in Mission Control then maximize the
window via menu bar.
macOS window decoration on terminal is extremely ugly, but it's still
better than no control.
Shota FUJI
authored at
Shota FUJI
comitted at
f7318cadnvim: Add keybindings for LSP actions
* Rename
* Highlight / Clear highlights
* Go to definition
These are the items I needed/wanted in my daily uses.
Shota FUJI
authored at
Shota FUJI
comitted at
ec39fe7cUpdate Flake
To eliminate 25.05 unsupported-something-something warning.
Shota FUJI
authored at
Shota FUJI
comitted at
72669310nvim: Fix Markdown ignoring indentation preferences
Both configured values and editorconfig values.
Shota FUJI
authored at
Shota FUJI
comitted at
6466f86cRevert "nvim: Fix incorrect indent inside block comment in JS/TS"
nvim LSP's indentation is marked experimental, and yes, it's totally
broken. It completely disables the default editorconfig, other
indentation mechanism and smart indentation.
This fucks up JSON indentation inside a project with an incomplete
editorconfig settings.
Shota FUJI
authored at
Shota FUJI
comitted at
46a86b6anvim: Fix incorrect indent inside block comment in JS/TS
<https://github.com./nvim-treesitter/nvim-treesitter/issues/2544>
Even though the issue is closed as completed, the problem still occurs.
An issue on another repository back-linked in the above issue includes a
comment that enabling nvim-treesitter's `indent` option solves this.
This option may cause more problems than the benefits it brings, but
it's working at least for now.
Shota FUJI
authored at
Shota FUJI
comitted at
93d52f54nvim: Migrate TypeScript's LS name
Neovim LSP thing. Name only, no behavior changes.
Shota FUJI
authored at
Shota FUJI
comitted at
2a016663kitty: Switch to Monaspace from Dank Mono
Dank Mono contains non-fixed-width glyphs and that makes macOS (and
probably other OSes) think it's not a fixed-width font. With kitty's
recent update, it only let us choose a font that recognized as
fixed-width by system, so kitty does not render Dank Mono anymore.
It's breaking change and so annoying, but kitty is still in v0.x.
Honestly, Monaspace is much legible than Dank Mono...
Shota FUJI
authored at
Shota FUJI
comitted at
47bab6b9nvim: Open file browser at startup
In order to disable stupid intro screen. I hope Helix supports sane Vim
keybindings... I'd like to avoid software that put
irresponsible/political messages and slogans in it. But there is no
other text editor available.
Shota FUJI
authored at
Shota FUJI
comitted at
04a2eb63kitty: Reduce font size by 1pt
By using this setting for some time, I found this is acceptable size and
increased amount of information fits in a screen is so much beneficial.
Shota FUJI
authored at
Shota FUJI
comitted at
9709245cflake: nix flake update
Nvim syntax highlighting for Gleam has been very broken. I hoped
updating Nix Flake would fix that and it fixed that.
Shota FUJI
authored at
Shota FUJI
comitted at
b37eb046kitty: Opaque window even on dark theme
Transcluent background is surely useful for some cases. However, it was
more distracting thus harmful to me.
Shota FUJI
authored at
Shota FUJI
comitted at
b3405e78kitty: Improve readability
It was hard to distinguish kitty windows.
Shota FUJI
authored at
Shota FUJI
comitted at
9ef1a710nvim: Remove Trouble
It's just troublesome. The new major version (v3) removes an ability to
disable icons hence forced non-standard icon character, which ABUSES
non-latin unicode range (some call this abusing "NERD fonts").
It also has been causing culmulative layout shift due to its "floating"
nature.
Considering overall UX including default options, it's perfect time to
ditch the plugin. As for alternative, I configured diagnostics popover
using Telescope and statusline (lualine) so I can see how many
diagnostic items are in the file.
I added Helix in 2e53e9f0c2db058531829407ff12c7f1da305a96 to hopefully
replace neovim usage. Turns out it has more "features" that can't be
disabled: e.g. automatically traversing parent directory to find
"workspace root" (where `.git` directory sits). These kind of stupid
designs accumulates to the point I switched back to neovim even though I
partially adapt to tottaly inefficient subject->verb keymaps.
Shota FUJI
authored at
Shota FUJI
comitted at
2e53e9f0Add Helix (editor)
I'm tired of neovim plugins frequently introducing breaking changes and
adding annoying "features" and such. Although I hate Helix's
subject->verb key bindings, sane-defaults and well-thought feature sets
are worth the price.
Shota FUJI
authored at
Shota FUJI
comitted at
adc27710nvim: Suppress trouble's runtime error
It's v3 update removes essential knobs and forces shitty "features".
Definetely it's time to explore a better plugin or an editor.
Shota FUJI
authored at
Shota FUJI
comitted at
d4d5d06anvim: Disable file creation on enter in file-browser while no search hit
Shota FUJI
authored at
Shota FUJI
comitted at
a29d017fjj: Display all revisions by default
Most of the time I run "jj log", "all()" is what I want instead of very
partial of revisions.
Shota FUJI
authored at
Shota FUJI
comitted at
44fe333cFix completion for specialise command requires extra Tab
The first `#compdef` is the culprit. I also added command description
for subcommands.
Shota FUJI
authored at
Shota FUJI
comitted at
4e47fbbaUnset/Clean feature for specialise command
Toggling between specialisation creates a new home-manager generation.
However, manually deleting obsolete generations by
```
$ home-manager expire-generations "-1 day"
```
also deletes the non-specialised one. The `clean` command is for this
cleanup task.
`unset` command is for, well, no reason. Because I could.
Shota FUJI
authored at
Shota FUJI
comitted at
58823c17Install Home-Manager
It's convenient to run home-manager commands without via nix.
Shota FUJI
authored at
Shota FUJI
comitted at
6a460b4fConvenience script for switching specialisations
Since Home Manager's specialisation feature is experimental and
UX is nearly non-existent, this kind of helper program is essential.
Shota FUJI
authored at
Shota FUJI
comitted at
bb141f65Utilize specialisation for dark/light mode
Without this, I have to `git stash push/pop` everytime system changes
dark/light mode...
Shota FUJI
authored at
Shota FUJI
comitted at
d7943bdaImprove Atuin filter mode
Sharing history across sessions (e.g. kitty panes) is beyond annoying.
Shota FUJI
authored at
Shota FUJI
comitted at
7225f48eDisable ligature on kitty (entirely)
be68a00326f0cfd704bc7fd3f2b6a92dcb72073f does only disable ligature
for regular style: italic (e.g. comments) and bold style still use
ligatures.
I had to use `extraConfig` because Home Manager's Kitty configuration
incorrectly models `kitty.conf`. Home Manager only accepts attrset
with string, boolean, or integer value but `kitty.conf` allows
specifying same key multiple times.
Shota FUJI
authored at
Shota FUJI
comitted at
7380a217Use "splits" layout in Kitty
This is what I wanted. I sometimes want main pane to be splitted,
but neither "fat" nor "tall" allows me to do that. While this adds
new "open new window horizontally" shortcuts, the total number of
shortcuts remains same as I could successfully eliminated "switch
layout" shortcut.
Shota FUJI
authored at
Shota FUJI
comitted at
be68a003Disable ligature on kitty
It causes more harm than benefit.
Shota FUJI
authored at
Shota FUJI
comitted at
69276120Activate DenoLS when directory has deno.jsonc as well
Deno supports both JSON and JSON with comments.
Shota FUJI
authored at
Shota FUJI
comitted at
c216b78bTurn off Deno's fucking auto imports
The amount of Language Servers implementing this kind of stupid
"features" using opt-out strategy is insane. It's dissapointing dev
tooling ecosystem became this stupid.
...this is still better than ZLS though.
Shota FUJI
authored at
Shota FUJI
comitted at
6725f096Fix telescope and file browser hide dotfiles
Really, really stupid defaults.
Shota FUJI
authored at
Shota FUJI
comitted at
b99f6cc6Use Telescope + file browser instead of file tree
The nvim-tree is okay at most: the keybindings are quirky and ergonomics
for longer file/dirnames is bad, and most importantly, it occupies quite
a few screen estate.
Shota FUJI
authored at
Shota FUJI
comitted at
e4301d3bDisable autoformat on save for zig files
This is in runtime (default plugin) and on by default, wtf.
Shota FUJI
authored at
Shota FUJI
comitted at
d5e78c70Add Jujutsu, a relatively new VCS
I did `nix flake update` in order to use jujutsu@0.15.x, which adds
commit signing support.
Shota FUJI
authored at
Shota FUJI
comitted at
55ad99a8Ignore bazel artifacts
Bazel creates "bazel-<directory name>" directory at a project root.
Some projects only ignore "bazel-<repo name>" assuming the repo is
cloned at the directory with same name. This is problematic on usecases
such as worktree or clone with name provided.
Shota FUJI
authored at
Shota FUJI
comitted at
5b543d38Switch to TreeSitter for syntax highlighting
Builtin highlights are so buggy that I can't read my own code fluently.
TypeScript one is especially broken: almost every usage of arrow
function breaks highlighting.
Shota FUJI
authored at
Shota FUJI
comitted at
e054aad6Fix accepting autocomplete replace adjecent texts
I don't know why/how it was ConfirmBehavior.Replace.
Shota FUJI
authored at
Shota FUJI
comitted at
10d3b43fTemporary use yats-vim for TypeScript syntax highlighting
Vim/Neovim uses outdated highlighting, which is broken for
`import { type Foo }` syntax.
Shota FUJI
authored at
Shota FUJI
comitted at
91dbfae7Make trouble.nvim less annoying
The auto_open and auto_close combo causes annoying layout shift.
Turned off and let it take less space.
Shota FUJI
authored at
Shota FUJI
comitted at
90e94938Migrate bat themes option to the new attrset one
Changed and it says will be deprecated in a future.
Shota FUJI
authored at
Shota FUJI
comitted at
aee4781dUpdate flake lockfile
```sh
$ nix flake update
```
In order to use a new feature implemented in the newer version of
trouble.nvim.
Shota FUJI
authored at
Shota FUJI
comitted at
4520b30ePrevent Zsh from sharing history across sessions
This seems not a Zsh default: Home Manager's "nice" defaults. fuck.
Shota FUJI
authored at
Shota FUJI
comitted at
00ec0ac7Prevent vim CSS filetype plugin adding hyphen as a keyword
Shota FUJI
authored at
Shota FUJI
comitted at
4625466ePrevent nvim-tree from hiding git-ignored files
Fucking insane default. Maybe it's time to switch to better plugin.
Shota FUJI
authored at
Shota FUJI
comitted at
f8cf7dedConfigure key repeat parameters for Sway
Arch distributed Sway seems to change the default config at some point
and that makes the typing experience far worse. This commit is to
prevent that from happening in the future.
Shota FUJI
authored at
Shota FUJI
comitted at
948461beTurn off retarted TS LSP features
The amount of dogshit features they enabled BY DEFAULT is totally
insane.
Shota FUJI
authored at
Shota FUJI
comitted at
d8ec7043Remove "Icon" from macOS gitignore due to false-positives
The rule requires two CR. I removed the line because I'm reluctant to
test the unknown file. This rule caused massive false-positive such as
`src/components/icon` being ignored.
Shota FUJI
authored at
Shota FUJI
comitted at
0b77a46fSwitch from exa to eza
exa has been removed from Home Manager and replaced with eza.
Shota FUJI
authored at
Shota FUJI
comitted at
fb8258bbMigrate indent-blankline.nvim to v3
It has breaking changes and removed the option to disable stupid
fake indentation. Needed to add idiotic workaround.
Shota FUJI
authored at
Shota FUJI
comitted at
71c8db0bConfigure zsh completion for Fossil
While Fossil provides a completion file, Nix package only installs
bash completion. As the frequency of typing Fossil commands is high,
the impact of shell completion is significant.
Shota FUJI
authored at
Shota FUJI
comitted at
d3e333d1Do not use GPG on SCM server
The server is mostly automated.
Shota FUJI
authored at
Shota FUJI
comitted at
f7bcef79Format Nix files
...forgot to format before commit.
```sh
$ nix fmt
```
Shota FUJI
authored at
Shota FUJI
comitted at
e1d5aa52Configuration for Wayland Desktop Environment
Added Window Manager (sway), Wallpaper (swaybg), Application Launcher
(tofi), Status Bar (waybar).
Shota FUJI
authored at
Shota FUJI
comitted at
2f14125cConfigure snippet engine for Neovim
nvim-cmp requires a snippet engine.
It seems that a small piece of code can filter-out retarded snippets
from completion list. I'll try when snippets distrub me enough.
<https://neovim.discourse.group/t/how-to-disable-lsp-snippets/922/6>
Shota FUJI
authored at
Shota FUJI
comitted at
4222d067Remove unnecessary lambda definition
I didn't notice Nix the language uses currying instead of multiple
arguments. Long and heavy use of imperative programming language is
toxic...
Shota FUJI
authored at
Shota FUJI
comitted at
69f12d5cUse `lib.trivial.boolToString` instead of manual `if`
There is virtually no difference in character count. However, the former
has better readability. Also one doesn't have to check there is a typo.
Shota FUJI
authored at
Shota FUJI
comitted at
0fdd65a5Add non-bash activation command to README
It's annoying `nix-shell` always spawns Bash despite of user's login
shell.
Shota FUJI
authored at
Shota FUJI
comitted at
fcd115d6Refactor to use Nix modules
For more organised and cutomisable configuration.
Previous codebase was actually a set of functions that return Nix
module. By using Nix modules' options and config properly, it's easier
to write host specific options.
Shota FUJI
authored at
Shota FUJI
comitted at
a8cc644aDisable mouse in Neovim
I can't believe they enabled it by default.
Shota FUJI
authored at
Shota FUJI
comitted at
0f7086aaSwitch nixpkgs-fmt
Alejandra displays annoying sponsor bs at the end of format output.
And the maintainer is not willing to make it optional or surpress it.
Shota FUJI
authored at
Shota FUJI
comitted at
af71a439Add diagnostics panel for Neovim
Without scrollbar and minimap, this is essential.
Shota FUJI
authored at
Shota FUJI
comitted at
3e63bac9Add border to neovim LSP hover popup
It was too hard to see.
Shota FUJI
authored at
Shota FUJI
comitted at
44d0e3feUse pinentry-curses instead of ugly gtk one
Home Manager defaults "gtk2", which is ugly and outdated it can't be
correctly display itself in HiDPI monitor.
Shota FUJI
authored at
Shota FUJI
comitted at
58844078Launch only one language server for .ts file
Without `root_dir`, the two LS works at the same time.
`single_file_support` is also needed because of lsp-config#tsserver
stupidly sets `true` as default.
Shota FUJI
authored at
Shota FUJI
comitted at
bc699d07Add rtx (asdf-vm alternative)
Not every project uses Nix. Also, Nix does not support version-based
runtime installation. I choose to use rtx because of its asdf
compatibility.
Shota FUJI
authored at
Shota FUJI
comitted at
e6e744d0Kitty (terminal) for macOS
Initial motivation was theming (catppuccin) ... but declarative
configuration, especially keybinding customisability is superb so I
spent a time tinkering. Tmux-like pane (window in kitty) navigation is
usefull in macOS, due to difficulity on using tiling window manager.
Shota FUJI
authored at
Shota FUJI
comitted at
9b6689adAdd workaround for macOS update breaks Nix bootstrap
An update on today broke my MBP installation...
Shota FUJI
authored at
Shota FUJI
comitted at
3d28d02bConfigure GPG when gpgKeyId is set
Platforms such as macOS does not have GnuPG by default.
Shota FUJI
authored at
Shota FUJI
comitted at
321deef1Fix macOS detection not working
`builtins.match` needs to match _the whole string_, unlike other
programming languages/stdlib.
<https://discourse.nixos.org/t/nix-regex-match/7946/2>
Shota FUJI
authored at
Shota FUJI
comitted at
1efdd490Configure gpg-agent only on Linux
The service is not available on macOS. This causes error when running
`home-manager switch`.
Shota FUJI
authored at
Shota FUJI
comitted at
16b61e96Configure GPG key for Git
This eliminates manual configuration on each machine.
Shota FUJI
authored at
Shota FUJI
comitted at
61d0cedfAdd installation method to README.md
It's handy when the system does not have git.
Shota FUJI
authored at
Shota FUJI
comitted at
52fa5ae9Fix Zsh customisation not working on Chrome OS
It seems the execution order or something is different between Arch
Linux and Debian (Crostini), so that Zsh tries to evaluate `LS_COLORS`
before `vivid` is available.
Shota FUJI
authored at
Shota FUJI
comitted at