Skip to content

joshkaspar/cutekit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CUTEkit - The Common Use Terminal Environment Kit

CUTEkit turns a fresh Ubuntu 24.04 server into your terminal workspace with a single config file and a generated setup script. Shell hooks and post install notes are automatically generated, making post-install simple. System tools are installed via apt, while mise handles everything else, which means you can run bleeding-edge software on a rock-solid system. Install packages globally, or use per-directory versioning instead of messing with venv or docker to run a single program.

Features

  • Simple workflow - edit one config file, generate the setup script, run it, and start using the environment
  • Reproducible setup - build the same workspace on any Ubuntu 24.04 LTS machine
  • Easy to customize - add, remove, or adjust tools in the config without rewriting the script
  • Shell setup in one place - collects init and PATH changes so shell config is one step
  • Reference files - generates post-install notes and tool references in plain Markdown
  • Practical install philosophy - apt for core system packages and mise for user-facing CLI and TUI tools gives you a solid foundation and up-to-date tools

Requirements

  • Ubuntu 24.04
  • A non-root user with sudo
  • Python 3 and pyyaml

Usage

1. Download the files

curl -L https://github.com/joshkaspar/cutekit/archive/refs/heads/main.tar.gz | tar -xz
cd cutekit-main

2. Customize your tools

Open 1-config.yaml and uncomment or add any tools you want. The config is the only file you need to edit and is well commented with examples for any type of install CUTEkit is capable of.

Examples:

  - name: yazi
    version: latest

  - name: zoxide
    backend: cargo
    source: zoxide
    version: latest
    shell_setup:
      - 'eval "$(zoxide init zsh)"'

Default install

  • zsh - shell
  • zellij - terminal multiplexer with a built-in web server
  • mise - runtime and tool version manager (Node, Rust, and CLI tools)
  • atuin, fzf, navi, zoxide - shell productivity tools
  • gh, lazygit, git-delta - git tooling
  • glow, micro, yazi, bat, btop, ripgrep, visidata - TUI utilities

3. Generate the files

python3 2-generate.py

This writes 3-setup.sh, ~/.config/mise/config.toml, .zshrc.setup, 4-post-install-steps.md, and tool-reference.md.

4. Run the setup script

bash 3-setup.sh

5. Finish up

Read 4-post-install-steps.md. It covers activating zsh as your default shell, enabling the Zellij web terminal, and hardening SSH after confirming key-based login works.

About

Turns a fresh Ubuntu 24.04 server into your terminal workspace with a single config file and a generated setup script. Run it on a home server or a VPS, then connect from wherever you are to have instant access to your customized working environment.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages