Skip to content
This repository was archived by the owner on Dec 27, 2025. It is now read-only.

Commit c81fce8

Browse files
authored
Merge pull request #26 from williamwmarx/claude/update-readme-archive-iaCPa
2 parents 44635a4 + 7bf3532 commit c81fce8

1 file changed

Lines changed: 23 additions & 102 deletions

File tree

README.md

Lines changed: 23 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -1,114 +1,35 @@
11
# shell
22

3-
My dotfiles and install script.
3+
> **⚠️ This repository is archived and no longer maintained.**
4+
> I've moved my dotfiles to a private repository using [GNU Stow](https://www.gnu.org/software/stow/) for simpler symlink management.
45
5-
## Install 🚀
6+
A Go-based dotfiles management tool featuring an interactive TUI for installing dotfiles and packages across Unix-like systems.
67

7-
Install is easy, just run this one-liner for a nice TUI that shows your options.
8+
## What This Was
89

9-
```bash
10-
sh <(curl https://marx.sh)
11-
```
10+
This project was a learning exercise to:
11+
- Get familiar with Go conventions and patterns
12+
- Build a CLI with [Cobra](https://github.com/spf13/cobra) and an interactive TUI with [Bubble Tea](https://github.com/charmbracelet/bubbletea)
13+
- Solve the cross-platform dotfiles management problem I had at the time
1214

13-
> See [INSTALL.md](INSTALL.md) for more options
15+
### Features
1416

15-
## Dotfiles 🧩
17+
- Interactive terminal UI for selecting what to install
18+
- Non-interactive mode with flags (`--vim`, `--tmux`, `--zsh`, `--full`)
19+
- Cross-platform package manager support (apt, brew, dnf, pacman)
20+
- TOML-based configuration for dotfile mappings and package definitions
1621

17-
### Git
22+
## Dotfiles
1823

19-
- [.gitconfig](git/gitconfig) — Git configuration
24+
The dotfiles remain in this repo for reference:
2025

21-
### GnuPG
26+
- **Git**: [gitconfig](git/gitconfig)
27+
- **GnuPG**: [gpg.conf](gnupg/gpg.conf), [gpg-agent.conf](gnupg/gpg-agent.conf)
28+
- **tmux**: [tmux.conf](tmux/tmux.conf)
29+
- **Vim**: [vimrc](vim/vimrc)
30+
- **Zsh**: [zshrc](zsh/zshrc), [aliases](zsh/aliases), [functions](zsh/functions), [t3.zsh-theme](zsh/t3.zsh-theme)
31+
- **yabai/skhd**: [yabairc](yabai/yabairc), [skhdrc](skhd/skhdrc)
2232

23-
- [gpg-agent.conf](gnupg/gpg-agent.conf) — GnuPG agent configuration
24-
- [gpg.conf](gnupg/gpg.conf) — GnuPG configuration
33+
## License
2534

26-
### Raycast
27-
28-
- [clear-format.sh](raycast/clear-format.sh) — Strip formatting (while preserving whitespace) from clipboard
29-
30-
### skhd
31-
32-
- [.skhdrc](skhd/skhdrc) — Configure the hotkey daemon I use (mainly to manage Yabai)
33-
34-
### tmux
35-
36-
- [.tmux.conf](tmux/tmux.conf) — Clean UI, useful info only, Vim-like keybindings
37-
38-
### Vim
39-
40-
- [.vimrc](vim/vimrc) — Vim configuration
41-
42-
### yabai
43-
44-
- [.yabairc](yabai/yabairc) — Manage yabai, the tiling window manager I use
45-
46-
### Zsh
47-
48-
- [.aliases](zsh/aliases) — Useful aliases, built to work across all UNIX systems
49-
- [.functions](zsh/functions) — Useful functions, built to work across all UNIX systems
50-
- [.zshrc](zsh/zshrc) — My go-to shell setup, leveraging Oh My Zsh (if available)
51-
- [t3.zsh-theme](zsh/t3.zsh-theme) — A nice, clean theme with everything you need, and nothing more
52-
53-
## Packages 📦
54-
55-
The install command is not a package manager, it merely leverages your system’s package manager,
56-
whether it be `apt`, `homebrew`, `dnf`, or `pacman`. It can also run install scripts for packages
57-
not in the above indices.
58-
59-
All packages available to install are located in the [packages.toml](packages.toml) file. Packages
60-
are grouped into lists to be installed together. In the TOML file, packages and package groups are
61-
initialized as tables (`[package_group.packages.package_name]`). Each package should have a `name`
62-
key to display when installing the package, as well as `description` and `url` keys to assist in
63-
building this README. Other possible keys for each package are `apt_name`, `brew_name`,
64-
`brew_cask_name`, `dnf_name`, `pacman_name`, and `install_command`.
65-
66-
### Core
67-
68-
Core packages I use daily
69-
70-
- [bat](https://github.com/sharkdp/bat) - A cat clone with wings.
71-
- [cURL](https://curl.se/) - A command line tool for transferring data with URL syntax.
72-
- [exa](https://the.exa.website/) - A modern replacement for ls.
73-
- [fd](https://github.com/sharkdp/fd) - A simple, fast and user-friendly alternative to find.
74-
- [fzf](https://github.com/junegunn/fzf) - A command-line fuzzy finder.
75-
- [git](https://git-scm.com/) - A fast, scalable, distributed revision control system.
76-
- [GnuPG](https://gnupg.org/) - A complete and free implementation of the OpenPGP standard.
77-
- [Node](https://nodejs.org/) - A JavaScript runtime built on Chrome's V8 JavaScript engine.
78-
- [Oh My Zsh](https://ohmyz.sh/) - A delightful community-driven framework for managing your zsh configuration.
79-
- [OpenSSL](https://www.openssl.org/) - A robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols.
80-
- [ripgrep](https://github.com/BurntSushi/ripgrep) - A line-oriented search tool that recursively searches your current directory for a regex pattern.
81-
- [tmux](https://github.com/tmux/tmux) - A terminal multiplexer.
82-
- [Vim](https://www.vim.org/) - A highly configurable text editor built to enable efficient text editing.
83-
- [Zsh](https://www.zsh.org/) - A shell designed for interactive use, although it is also a powerful scripting language.
84-
85-
### Design
86-
87-
Packages for visual and sound design.
88-
89-
- [FFmpeg](https://ffmpeg.org/) - A complete, cross-platform solution to record, convert and stream audio and video.
90-
- [ImageMagick](https://imagemagick.org/) - A software suite to create, edit, compose, or convert bitmap images.
91-
92-
### GUI Core
93-
94-
GUI apps I use daily.
95-
96-
- [Clean My Mac](https://macpaw.com/cleanmymac) - A macOS app to clean up your Mac.
97-
- [Docker Desktop](https://www.docker.com/products/docker-desktop) - A desktop app for MacOS and Windows machines for the building and sharing of containerized applications and microservices.
98-
- [Dropbox](https://www.dropbox.com/) - A file hosting service that offers cloud storage, file synchronization, personal cloud.
99-
- [IINA](https://iina.io/) - The modern video player for macOS.
100-
- [iTerm2](https://iterm2.com/) - A terminal emulator for macOS that does amazing things.
101-
- [Little Snitch](https://www.obdev.at/products/littlesnitch/index.html) - A firewall application for macOS that monitors outgoing network connections and allows or denies them.
102-
- [Mullvad VPN](https://mullvad.net/en/) - A VPN service that helps keep your online activity, identity, and location private.
103-
- [Parallels Desktop](https://www.parallels.com/products/desktop/) - A software for running Windows, Linux, or any other operating system on a Mac without rebooting.
104-
- [Raycast](https://raycast.com/) - A smart command line productivity tool for macOS.
105-
- [Zoom](https://zoom.us/) - A video conferencing, online chat, and web conferencing software.
106-
107-
### GUI Design
108-
109-
GUI apps for visual and sound design.
110-
111-
- [Adobe Creative Cloud](https://www.adobe.com/creativecloud.html) - A collection of desktop and mobile apps and services for photography, design, video, web, UX and more.
112-
- [Cycling ‘74 Max/MSP](https://cycling74.com/products/max/) - A visual programming language for music, audio, and multimedia.
113-
- [Glyphs](https://glyphsapp.com/) - A powerful font editor for macOS.
114-
- [Rhino 3D](https://www.rhino3d.com/) - A 3D modeling software for Windows, macOS, and Linux.
35+
Apache 2.0

0 commit comments

Comments
 (0)