diff --git a/PKGBUILD b/PKGBUILD index 07ac5bd..d67f6f6 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,5 +1,5 @@ pkgname=vcom -pkgver=0.1.8 +pkgver=0.1.9 pkgrel=1 pkgdesc="Terminal file manager inspired by Midnight Commander" arch=("x86_64" "aarch64") diff --git a/README.md b/README.md index adb1a7a..87dad9f 100644 --- a/README.md +++ b/README.md @@ -23,12 +23,54 @@ You can force behavior in config: - `ui.icon_mode = "nerd"`: always use Nerd icons - `ui.icon_mode = "ascii"`: always use ASCII icons -How to make terminal use the installed Nerd Font: +### Installing a Nerd Font -- GNOME Terminal: `Preferences -> Profile -> Text -> Custom font` -> choose `JetBrainsMono Nerd Font` -- Konsole: `Settings -> Edit Current Profile -> Appearance` -> choose a Nerd Font profile -- Alacritty: set `font.normal.family: "JetBrainsMono Nerd Font"` in `~/.config/alacritty/alacritty.yml` -- Kitty: set `font_family JetBrainsMono Nerd Font` in `~/.config/kitty/kitty.conf` +**Ubuntu / Debian:** + +```bash +wget -qO /tmp/JetBrainsMono.zip https://github.com/ryanoasis/nerd-fonts/releases/latest/download/JetBrainsMono.zip +mkdir -p ~/.local/share/fonts/JetBrainsMonoNerd +unzip -o /tmp/JetBrainsMono.zip -d ~/.local/share/fonts/JetBrainsMonoNerd +fc-cache -fv +``` + +**Arch Linux:** + +```bash +sudo pacman -S ttf-jetbrains-mono-nerd +``` + +Or via AUR helper: + +```bash +yay -S nerd-fonts-jetbrains-mono +``` + +**NixOS / Nix:** + +Add to your `/etc/nixos/configuration.nix`: + +```nix +fonts.packages = with pkgs; [ nerd-fonts.jetbrains-mono ]; +``` + +Or install imperatively: + +```bash +nix profile install nixpkgs#nerd-fonts.jetbrains-mono +``` + +### Configuring terminal to use the installed Nerd Font + +After installing, set `JetBrainsMono Nerd Font` (or another Nerd Font) as the terminal font: + +- **GNOME Terminal:** `Preferences → Profile → Text → Custom font` → choose `JetBrainsMono Nerd Font` +- **Konsole:** `Settings → Edit Current Profile → Appearance` → choose a Nerd Font profile +- **Alacritty:** set `font.normal.family: "JetBrainsMono Nerd Font"` in `~/.config/alacritty/alacritty.yml` +- **Kitty:** set `font_family JetBrainsMono Nerd Font` in `~/.config/kitty/kitty.conf` +- **Foot:** set `font=JetBrainsMono Nerd Font:size=11` in `~/.config/foot/foot.ini` +- **WezTerm:** set `font = wezterm.font("JetBrainsMono Nerd Font")` in `~/.config/wezterm/wezterm.lua` +- **Windows Terminal:** `Settings → Profiles → Defaults → Appearance → Font face` → choose `JetBrainsMono Nerd Font` Preview mode (`F9` / `i`) temporarily replaces the inactive pane and shows: @@ -64,38 +106,27 @@ go build -o vcom ./cmd/vcom Run directly from the flake: ```bash -nix run github:vrubelroman/vcom?ref=v0.1.8 +nix run github:vrubelroman/vcom?ref=v0.1.9 ``` Install into user profile: ```bash -nix profile add github:vrubelroman/vcom?ref=v0.1.8 +nix profile add github:vrubelroman/vcom?ref=v0.1.9 ``` The Nix package wraps `vcom` with `ueberzugpp` in `PATH`, so image preview works in non-`kitty` terminals out of the box. ### Debian / Ubuntu -Download the release `.deb` for `v0.1.8`, then install: +Download the release `.deb` for `v0.1.9`, then install: ```bash -sudo apt install ./vcom_0.1.8_amd64.deb +sudo apt install ./vcom_0.1.9_amd64.deb ``` The Debian package declares `ueberzug` (or `ueberzugpp` where available) as a dependency for image preview outside `kitty`. -Install a Nerd Font (example): - -```bash -wget -qO /tmp/JetBrainsMono.zip https://github.com/ryanoasis/nerd-fonts/releases/latest/download/JetBrainsMono.zip -mkdir -p ~/.local/share/fonts/JetBrainsMonoNerd -unzip -o /tmp/JetBrainsMono.zip -d ~/.local/share/fonts/JetBrainsMonoNerd -fc-cache -fv -``` - -Then set your terminal font to a Nerd Font variant (for example, `JetBrainsMono Nerd Font`). - ### Arch Linux A `PKGBUILD` is included in the repository: @@ -127,16 +158,29 @@ icon_mode = "auto" # auto | nerd | ascii ## Themes -Built-in themes: +Built-in themes (use `T` to cycle or set `ui.theme` in config): - `catppuccin-mocha` (default) +- `catppuccin-lavender` - `tokyo-night` - `gruvbox-dark` +- `gruvbox` - `nord-frost` +- `nord` +- `ayu-dark` +- `breeze` +- `cyberpunk` +- `dracula` +- `eldritch` +- `kanagawa` +- `kanagawa-paper` +- `rose-pine` +- `solarized-dark` +- `vesper` ## Releases -Pushing a tag like `v0.1.8` triggers GitHub Actions release workflow (`.github/workflows/release.yml`) which: +Pushing a tag like `v0.1.9` triggers GitHub Actions release workflow (`.github/workflows/release.yml`) which: - runs tests - vendors Go modules @@ -146,9 +190,9 @@ Pushing a tag like `v0.1.8` triggers GitHub Actions release workflow (`.github/w Release artifacts: -- `vcom-v0.1.8-x86_64-unknown-linux-gnu.tar.gz` -- `vcom_0.1.8_amd64.deb` -- `vcom-v0.1.8-checksums.txt` +- `vcom-v0.1.9-x86_64-unknown-linux-gnu.tar.gz` +- `vcom_0.1.9_amd64.deb` +- `vcom-v0.1.9-checksums.txt` ## Notes diff --git a/flake.nix b/flake.nix index f48e3f5..4fc40df 100644 --- a/flake.nix +++ b/flake.nix @@ -13,7 +13,7 @@ lib = pkgs.lib; packageBase = pkgs.buildGoModule { pname = "vcom"; - version = "0.1.8"; + version = "0.1.9"; src = ./.; vendorHash = null;