envira
A script to fast build my zsh theme environment
It supports the following distributions:
- Ubuntu and Mint
- Redhat, CentOS, ...
- Manjaro
What tools will be installed:
- The basic development tools (vim, wget, git, ...)
- Install zsh as the default shell
- A theme (modified mzz-ys) for zsh with oh-my-zsh
- Frequently used languages and package managers (python with conda, nodejs, rust, golang, ...)
- Modern linux terminal tools (exa, bat, fd, ripgrep, lazygit, lunarvim, ...) with alias
How to use it
# lagacy scripts
curl -fsSL https://boot.controlnet.space/ | bash # if you have sudo permission
curl -fsSL https://boot.controlnet.space/user | bash # if you don't have sudo permission
# new scripts (still in development)
curl -fsSL https://boot.controlnet.space/envira | bash && ~/.local/bin/envira
For docker
Full tools and configurations for the environment:
FROM ubuntu:22.04
WORKDIR /root
RUN apt-get update -y
RUN DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get install -o DPkg::Options::="--force-confnew" -y tzdata
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y iputils-ping net-tools python3-venv apt-utils make openssh-server gedit vim git git-lfs curl wget zsh gcc make perl build-essential libfuse2 python3-pip screen fzf tmux ncdu bat pipx xsel screenfetch neofetch p7zip-full unzip tigervnc-standalone-server tigervnc-common tigervnc-xorg-extension
RUN curl -fsSL https://boot.controlnet.space/user | bash
CMD ["/bin/zsh"]
Minimal oh-my-zsh setup without extra tools:
# Setup environment
RUN sh -c "$(wget -O- https://github.com/deluan/zsh-in-docker/releases/download/v1.1.5/zsh-in-docker.sh)" -- \
-t robbyrussell \
-p https://github.com/zsh-users/zsh-autosuggestions \
-p https://github.com/zsh-users/zsh-syntax-highlighting
# download theme
RUN curl -fsSL https://raw.githubusercontent.com/ControlNet/my-zsh-theme-env/main/files/mzz-ys.zsh-theme > /root/.oh-my-zsh/themes/mzz-ys.zsh-theme
# modify the .zshrc file to change the theme and add plugins
RUN cat /root/.zshrc | sed 's/ZSH_THEME=\"robbyrussell\"/ZSH_THEME=\"mzz-ys\"\nZSH_DISABLE_COMPFIX=\"true\"/' \
| sed 's/plugins=(git)/plugins=(git zsh-autosuggestions zsh-syntax-highlighting)/' > /root/temp.zshrc
RUN mv /root/temp.zshrc /root/.zshrc
# setup git alias
RUN git config --global alias.lsd "log --graph --decorate --pretty=oneline --abbrev-commit --all"
# hide conda prefix
RUN echo "changeps1: false" >> /root/.condarc
Detail Steps
- Checks the Linux distribution and installs a set of common development tools using the appropriate package manager.
- Installs pipx, a tool for installing and running Python applications in isolated environments.
- Downloads and installs bat, a cat clone with syntax highlighting and Git integration.
- Installs Node.js using nvm (Node Version Manager).
- Downloads and installs ctop, a top-like interface for container metrics.
- Installs neofetch, a command-line system information tool.
- Sets up tmux with a specific color scheme.
- Installs oh-my-zsh, a framework for managing Zsh configuration.
- Changes the default shell to Zsh.
- Downloads a specific Zsh theme and modifies the .zshrc file to use this theme and add plugins.
- Disables oh-my-zsh auto-update notifications.
- Installs additional Zsh plugins for autosuggestions and syntax highlighting.
- Sets up Git history visualization and credential storage.
- Installs Miniconda, a free minimal installer for conda.
- Sets up the Rust programming language and Go programming language environments.
- Installs lazygit, a simple terminal UI for git commands.
- Installs neovim, a highly configurable text editor.
- Sets up LunarVim, a distribution of Neovim.
- Installs a faster solver for conda.
- Installs the Meslo font.
- Installs Docker and sets up the user to run Docker commands without sudo.
- Installs lazydocker, a simple terminal UI for Docker.
- Installs lemonade, a remote operation utility.
- Installs ZeroTier, a global P2P VPN.
- Installs several utilities (lsd, git-delta, duf, dust, fd, ripgrep, gping, procs, xh, uv, speedtest-cli, gdown, zoxide, micro, scc, viu, pm2) and sets up aliases for some of them.
- Installs several system monitoring tools (bottom, nvitop, bpytop, bandwhich).
Envira - Software Environment Management Tool
A software environment management tool for console applications.
Installation
From PyPI
pipx install envira
From Binary
TBD
Usage
After installation, you can use the envira command:
envira
License
AGPL 3.0 - see LICENSE file for details.
Metadata
Release files for envira 0.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| envira-0.0.0.tar.gz | 183.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| envira-0.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 232.5 kB
Release files / envira-0.0.0.tar.gz
| Download URL | envira-0.0.0.tar.gz |
|---|---|
| Size | 183.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9528500086103bdfc3a0bf7d7bcb97ca5d1eb9ccc84d0fe76b1fefef0ac5152f
|
|
BLAKE2b-256 checksum How to use checksums |
c8c247e26a2618dc720ea3410de1a190113a7cdcc2f71f7da6176e91bcb657d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 26, 2025.
Transparency logRelease files / envira-0.0.0-py3-none-any.whl
| Download URL | envira-0.0.0-py3-none-any.whl |
|---|---|
| Size | 49.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
28d2902f9fb2a6381bd35e7de4801618d8b41f86a35ee45af584549c215b4ed2
|
|
BLAKE2b-256 checksum How to use checksums |
066df79fe4e2e457f4f6f1bcf0486d6a6998e33ba322812b08d1a73940466528
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 26, 2025.
Transparency log