Babun
Babun - a Windows shell you will love!
Install / Use
/learn @babun/BabunREADME
= Babun - a windows shell you will love [PROJECT DISCONTINUED]
image:https://img.shields.io/badge/maintainers-wanted-red.svg[Maintainers Wanted!, align="center", link=https://github.com/pickhardt/maintainers-wanted]
Would you like to use a linux-like console on a Windows host without a lot of fuzz? Try out babun! // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n // THIS DOCUMENT WAS GENERATED. DO NOT EDIT IT.\n
Have a look at a 2 minutes long screencast by https://twitter.com/tombujok[@tombujok]: http://vimeo.com/95045348
video::95045348[vimeo, width=827, height=465, align="center"]
// https://www.youtube.com/watch?v=_h1wJJO0Ukw&vq=hd720
// video::VOHIYhbRIq0[youtube, width=560, height=315, align="center"]
// https://www.youtube.com/watch?v=VOHIYhbRIq0
== Installation
Just download the dist file from http://babun.github.io, unzip it and run the install.bat script. After a few minutes babun starts automatically.
The application will be installed to the %USER_HOME%\.babun directory. Use the '/target' option to install babun to a custom directory.
NOTE: There is no interference with existing Cygwin installation
NOTE: You may have "whitespace" chars in your username - it is not recommended by Cygwin though http://cygwin.com/faq.html#faq.setup.name-with-space[FAQ]
== Features in 10 seconds
Babun features the following:
- Pre-configured Cygwin with a lot of addons
- Silent command-line installer, no admin rights required
- pact - advanced package manager (like apt-get or yum)
- xTerm-256 compatible console
- HTTP(s) proxying support
- Plugin-oriented architecture
- Pre-configured git and shell
- Integrated oh-my-zsh
- Auto update feature
- "Open Babun Here" context menu entry
Have a look at a sample screenshot!
image::https://raw.githubusercontent.com/babun/babun.github.io/master/images/screenshots/screen_vim.png[babun - a Windows shell you will love!, align="center"]
Do you like it? Follow babun on Twitter https://twitter.com/babunshell[@babunshell] or https://twitter.com/tombujok[@tombujok].
== Features in 3 minutes
=== Cygwin
The core of Babun consists of a pre-configured Cygwin. Cygwin is a great tool, but there's a lot of quirks and tricks that makes you lose a lot of time to make it actually 'usable'. Not only does babun solve most of these problems, but also contains a lot of vital packages, so that you can be productive from the very first minute.
=== Package manager
Babun provides a package manager called pact. It is similar to 'apt-get' or 'yum'. Pact enables installing/searching/upgrading and deinstalling cygwin packages with no hassle at all. Just invoke pact --help to check how to use it.
=== Shell
Babun's shell is tweaked in order to provide the best possible user-experience. There are two shell types that are pre-configured and available right away - bash and zsh (zsh is the default one). Babun's shell features:
- syntax highlighting
- UNIX tools
- software development tools
- git-aware prompt
- custom scripts and aliases
- and much more!
=== Console
Mintty is the console used in babun. It features an xterm-256 mode, nice fonts and simply looks great!
=== Proxying
Babun supports HTTP proxying out of the box. Just add the address and the credentials of your HTTP proxy server to the .babunrc file located in your home folder and execute source .babunrc to enable HTTP proxying. SOCKS proxies are not supported for now.
=== Developer tools
Babun provides many packages, convenience tools and scripts that make your life much easier. The long list of features includes:
- programming languages (Python, Perl, etc.)
- git (with a wide variety of aliases and tweaks)
- UNIX tools (grep, wget, curl, etc.)
- vcs (svn, git)
- oh-my-zsh
- custom scripts (pbcopy, pbpaste, babun, etc.)
=== Plugin architecture
Babun has a very small microkernel (cygwin, a couple of bash scripts and a bit of a convention) and a plugin architecture on the top of it. It means that almost everything is a plugin in the babun's world! Not only does it structure babun in a clean way, but also enables others to contribute small chunks of code. Currently, babun comprises the following plugins:
- cacert
- core
- git
- oh-my-zsh
- pact
- cygdrive
- dist
- shell
=== Auto-update
Self-update is at the very heart of babun! Many Cygwin tools are simple bash scripts - once you install them there is no chance of getting the newer version in a smooth way. You either delete the older version or overwrite it with the newest one losing all the changes you have made in between.
Babun contains an auto-update feature which enables updating both the microkernel, the plugins and even the underlying cygwin. Files located in your home folder will never be deleted nor overwritten which preserves your local config and customizations.
=== Installer
Babun features an silent command-line installation script that may be executed without admin rights on any Windows hosts.
== Using babun
=== Setting up proxy
To setup proxy uncomment following lines in the .babunrc file (%USER_HOME%\.babun\cygwin\home\USER\.babunrc)
Uncomment this lines to set up your proxy
export http_proxy=http://user:password@server:port
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export no_proxy=localhost
=== Setting up git Babun has a pre-configured git. The only thing you should do after the installation is to add your name and email to the git config:
git config --global user.name "your name" git config --global user.email "your@email.com"
There's a lot of great git aliases provided by the git plugin:
gitalias['alias.cp']='cherry-pick' gitalias['alias.st']='status -sb' gitalias['alias.cl']='clone' gitalias['alias.ci']='commit' gitalias['alias.co']='checkout' gitalias['alias.br']='branch' gitalias['alias.dc']='diff --cached' gitalias['alias.lg']="log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %Cblue<%an>%Creset' --abbrev-commit --date=relative --all" gitalias['alias.last']='log -1 --stat' gitalias['alias.unstage']='reset HEAD --'
=== Installing and removing packages
Babun is shipped with pact - a Linux like package manager. It uses the cygwin repository for downloading packages:
{ ~ } » pact install arj ~ Working directory is /setup Mirror is http://mirrors.kernel.org/sourceware/cygwin/ setup.ini taken from the cache
Installing arj Found package arj --2014-03-30 19:34:38-- http://mirrors.kernel.org/sourceware/cygwin//x86/release/arj/arj-3.10.22-1.tar.bz2 Resolving mirrors.kernel.org (mirrors.kernel.org)... 149.20.20.135, 149.20.4.71, 2001:4f8:1:10:0:1994:3:14, ... Connecting to mirrors.kernel.org (mirrors.kernel.org)|149.20.20.135|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 189944 (185K) [application/x-bzip2] Saving to: `arj-3.10.22-1.tar.bz2'
100%[=======================================>] 189,944 193K/s in 1.0s
2014-03-30 19:34:39 (193 KB/s) - `arj-3.10.22-1.tar.bz2' saved [189944/189944]
Unpacking... Package arj installed
Here's the list of all pact's features:
{ ~ } » pact --help
pact: Installs and removes Cygwin packages.
Usage: "pact install <package names>" to install given packages "pact remove <package names>" to remove given packages "pact update <package names>" to update given packages "pact show" to show installed packages "pact find <patterns>" to find packages matching patterns "pact describe <patterns>" to describe packages matching patterns "pact packageof <commands or files>" to locate parent packages "pact invalidate" to invalidate pact caches (setup.ini, etc.) Options: --mirror, -m <url> : set mirror --invalidate, -i : invalidates pact caches (setup.ini, etc.) --force, -f : force the execution --help --version
=== Changing the default shell The zsh (with .oh-my-zsh) is the default babun's shell.
Executing the following command will output your default shell:
{ ~ } » babun shell ~ /bin/zsh
In order to change your default shell execute:
{ ~ } » babun shell /bin/bash ~ /bin/zsh /bin/bash
The output contains two lines: the previous default shell and the new default shell
=== Checking the configuration
Execute the following command the check the configuration:
{ ~ } » babun check ~ Executing babun check Prompt speed [OK] Connection check [OK] Update check [OK] Cygwin check [OK]
By executing this command you can also check whether there is a newer cygwin version available:
{ ~ } » babun check ~ Executing babun check Prompt speed [OK] Connection check [OK] Update check [OK] Cygwin check [OUTDATED] Hint: the underlying Cygwin kernel is outdated. Execute 'babun update' and follow the instructions!
It will check if th
Related Skills
node-connect
331.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
81.5kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
331.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
81.5kCommit, push, and open a PR
