This project automates the setup of common developer tools and configurations in Ubuntu without requiring sudo privileges.
- Project Structure
- Quick Start
- Scripts Overview
- Available Scripts
- Running Scripts Without Cloning
- Using Makefile
- Helper: Run Any Script Directly
- Important Note
- Open Source & Contributing
- Tips
- Author
git clone https://github.com/hmaach/init.git
cd init
chmod +x run.sh cmd/*.sh Makefile
./run.shmake help
make install-docker
make setup-gitMany scripts update environment variables such as PATH.
Run:
source ~/.zshrcIf you skip this step, newly installed commands may not be immediately available.
| Script | Quick Run Command |
|---|---|
| install_discord.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_discord.sh) |
| install_docker.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_docker.sh) |
| install_mkcert.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_mkcert.sh) |
| install_mongosh.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_mongosh.sh) |
| install_mvn.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_mvn.sh) |
| install_ng.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_ng.sh) |
| install_tmux.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_tmux.sh) |
| setup_git.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/setup_git.sh) |
| setup_clock.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/setupt_clock.sh) |
| setup_refresh_rates.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/setup_refresh_rates.sh) |
| update_java_to_v21.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/update_java_to_v21.sh) |
| auto.sh | bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/auto.sh) |
| auto.sh | curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/clipboard | sh |
make help
make install-discord
make install-docker
make install-mkcert
make install-mongosh
make install-mvn
make install-ng
make install-tmux
make setup-git
make setup-clock
make setup-refresh-rates
make update-javaYou can run any script from the repository using:
bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/<script-name>.sh)Example:
bash <(curl -fsSL https://raw.githubusercontent.com/hmaach/init/refs/heads/main/cmd/install_tmux.sh)This project is open source.
If you have:
- a useful setup script
- improvements to existing scripts
- bug fixes
- better automation ideas
you are welcome to contribute.
Ways to contribute:
- Fork the repository
- Add or improve a script
- Update the scripts overview table
- Submit a pull request
You can also open an issue if something does not work correctly.
The goal of this project is to build a collection of reliable scripts for setting up developer environments without sudo.
- Usage of
auto.sh:
$ ./auto.sh <name of the binary you want to work when stating the session>- Use
source run.shif you want environment changes applied immediately. - All installations occur inside your home directory.
- No
sudois required. - You can run scripts individually depending on what you need.
Hamza Maach