Skip to content

dablenparty/.unix

Repository files navigation

dotfiles

A collection of dotfiles I use on macOS and various Linux distros.

Components

boxunbox

Shameless plug: I have been developing an alternative to GNU stow for fun called boxunbox. It is designed for my use case, so they are not the same. Check it out!

The biggest difference is how they handle packages; stow just replicates the directory structure with relative links while boxunbox allows more fine-grained control over what gets linked where via config files. It also uses absolute links by default. I found this to be better for my own personal use case.

Each folder is an individual "package". Anything loose or multi-platform (e.g. oh-my-posh) is in the home package. Linking a package is easy; just unbox it:

unbox home

And that's it! The .unboxrc.ron file(s) takes care of the rest.

oh-my-posh

Installs with Homebrew:

brew install jandedobbeleer/oh-my-posh/oh-my-posh

or manually, with an installation script (Linux only).

Arch

If you're using Arch Linux and don't want to use Homebrew, there is an unofficial AUR package (oh-my-posh-bin) that updates daily. Install that with whatever tool you prefer.

oh-my-posh can also be used to install nerd fonts. For example:

oh-my-posh font install JetBrainsMono

Terminal Emulator

My current terminal emulators are ghostty for macOS and foot on Linux. Both require the JetBrainsMono Nerd Font to work properly with my configs.

This is the single most important file in this repo, as well as the only requried one.

zsh plugins are installed automatically via zcomet.

Pre-requisites

These are used by zcomet and other tools:

  • gcc
  • git
  • make
  • unzip
  • zsh

Important

Don't forget to change your shell to zsh if necessary. Do not run the command as root! You want to change your user shell:

chsh -s /usr/bin/zsh

CLI Tools

  • bat
    • cat replacement with syntax highlighting, paging, and more.
  • eza
    • An improved ls command. Replaced my use of lsd in this config.
  • fd
    • A faster file finder.
  • fzf
    • A fuzzy finder that works with almost anything.
  • lazygit
    • My favorite terminal-based git client. Also runs in neovim!
  • neovim
    • My favorite text editor. Follow the instructions in the linked repository, there are a few extra dependencies not found here.
  • ripgrep
    • grep replacement that is faster and easier to use.
  • zoxide
    • cd replacement with fuzzy directory finding.

Optional Packages/Tools

These packages install tools that are used in this repository, but are not required for it to work.

  • flutter
    • Flutter toolkit.
  • fnm
    • Fast Node Manager. A fast, cross-platform Node version manager that works quite well with environments.
  • go
    • Golang toolkit.
  • jenv
    • Manages the Java environment, making switching versions easy. Note: does not install Java, only manages installed versions.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages