Skip to content

Jamie-Cui/opt

Repository files navigation

opt

A personal collection of essential development tools and configurations as git submodules.

Overview

This repository aggregates various development tools, libraries, and configuration files that I frequently use in my workflow. Everything is organized as git submodules for easy version management and updates.

Submodules

Development Tools

  • wondershaper - Network traffic shaping tool for limiting bandwidth
  • universal-ctags - Maintained ctags implementation for source code indexing
  • microprofile - Real-time CPU/GPU profiler for performance analysis

Libraries

Configuration Files

  • dotfiles - Personal dotfiles including shell, editor, and system configurations
  • emacs.d - Personal Emacs configuration and init files
  • emacs - Emacs editor source code (for custom builds)

Setup

Clone with Submodules

git clone --recurse-submodules https://github.com/Jamie-Cui/eztools.git

Initialize Submodules (if already cloned)

git submodule update --init --recursive

Update All Submodules

git submodule update --remote --merge

Usage

Each tool can be used independently by navigating to its respective directory:

# Use wondershaper for network limiting
cd wondershaper
sudo ./wondershaper wlan0 1000 500

# Generate ctags for your project
cd ctags
make && sudo make install
ctags -R .

# Profile your application
cd microprofile
# Follow the setup instructions in their README

Configuration

Dotfiles

To use the dotfiles, you can create symlinks to your home directory:

# Example for vimrc
ln -s $(pwd)/dotfiles/.vimrc ~/.vimrc

# Example for clang-format
ln -s $(pwd)/dotfiles/.clang-format ~/.clang-format

Emacs

The Emacs configuration is split across two submodules:

  • emacs/ - The Emacs source code (for building from source)
  • emacs.d/ - The configuration files and packages

Repository Structure

eztools/
├── README.md           # This file
├── .gitmodules         # Git submodule configuration
├── .gitignore          # Git ignore rules
├── LICENSE             # License information
├── wondershaper/       # Network traffic shaping tool
├── libboundscheck/     # C bounds checking library
├── microprofile/       # Performance profiler
├── ctags/              # Universal ctags
├── dotfiles/           # Configuration files
├── emacs/              # Emacs source
└── emacs.d/            # Emacs configuration

Contributing

This is a personal collection of tools. If you find issues with specific submodules, please report them to their respective upstream repositories.

License

Each submodule is licensed under its own terms. Please check the LICENSE files in each respective directory for specific licensing information.

Links

About

opt: "Optional Applications" for me

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages