GithubHelp home page GithubHelp logo

jackbenny / shellchooser Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 156 KB

Bash script meant to run as a login shell which displays a dialog to choose a shell and then replaces the current user's .profile, .bashrc or .csh

License: Other

Shell 100.00%

shellchooser's Introduction

Shellchooser

Shellchooser is a Bash script meant to run as a users shell, althouh it is not a shell of it's own, it's an interactive chooser for different shells. The shells avaliable to choose from in the script is Bash, Ash and Csh. It uses dialog to display a nice menu. Since the script is meant to run before the user has a sane environment all binaries used by the script is being run from variables. The variables for the binaries are generated by a loop which uses which to get the path for the binaries. The which command is hardcoded and might need to be changed on different systems.

Usage

Bundled with shellchooser is a small Makefile to ease installation of the script. Simply run make install to install shellchooser.sh into /bin and the profile/bashrc/cshrc files into /etc/shellchooser/. The installation will also put /bin/shellchooser.sh into /etc/shells so that system utilities won't complain about it not being a valid shell. Note that make install will fail if you don't have all the required shells install on your system. The make command will tell you which shells you are missing so that you can install them on your system. See below how to install shells on some various systems. To uninstall all of the files from the system including removing shellchooser.sh from /etc/shells simply run make uninstall from this directory. Simply running make will print some short usage of the Makefile and which shells your system have installed (and which shells you should have installed).

Install Bash, Ash and Csh

Debian/Ubuntu

sudo apt-get install <shell>

OpenSuSE

zypper install <shell>

Specifications

Two simple flowcharts shows how this script is built, what it does and which files are installed/uninstalled with Makefile. The two flowcharts resides in this directory and are called flowchart_makefile.png and flowchart_shellchooser.png.

shellchooser's People

Contributors

jackbenny avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.