Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview

Artifact ID: 414e05ff504064089dd3f8f2eb8b9255e68b01b4
Page Name:ShellPAK
Date: 2018-02-10 23:53:03
Original User: cfuhrman
Next 6443783898736e9a26dc423875c54402f328e4d4
Content

# Description

ShellPAK allows for the automatic installation and configuration of my personal GNU Bash(http://www.gnu.org/software/bash/) shell environment as well as the configuration of the following programs:

- Git(http://git-scm.com) - GNU Emacs(http://www.gnu.org/software/emacs/) - GNU Screen(http://www.gnu.org/software/screen/) - GNU Indent(https://www.gnu.org/software/indent/) - mg Text Editor(http://homepage.boetes.org/software/mg/) - :Tidy(http://search.cpan.org/~shancock/Perl-Tidy-20140711/lib/Perl/Tidy.pod) - tmux(http://tmux.sourceforge.net)

This code is specific to my own needs and is here in the hopes it will be useful as a reference.

## Requirements

- GNU Bash version 3.2 or greater - GNU Emacs 24.1 or greater (Emacs 24.4 or greater preferred) - GNU Make - rsync

## Supported Platforms

The following operating systems are known to be supported:

- Mac OS X 10.9 (Darwin) - NetBSD 6.1.x - OpenBSD 5.4 - CentOS 6.5 - Debian 7 (Wheezy) and derivatives - SunOS solaris 5.10 - AIX 1 7

In addition, ShellPAK has been known to run on OpenSuSE, SuSE Enterprise Linux, Ubuntu, FreeBSD, and Cygwin.

# Obtaining ShellPAK

As of <2014-07-30 Wed>, ShellPAK(https://chiselapp.com/user/cfuhrman/repository/shpak/home) is managed by the Fossil(http://fossil-scm.org) distributed version control system. To check out a repository:

# Clone the repository $ fossil clone https://chiselapp.com/user/cfuhrman/repository/shpak ~/shellpak.fossil
# Check out the repository $ mkdir shellpak $ cd shellpak $ fossil open ~/shellpak.fossil

Further information on Fossil can be found at this [Quick Start Guide]Quick Start Guide(http://www.fossil-scm.org/index.html/doc/trunk/www/quickstart.wiki).

## Alternate Repositories

ShellPAK(https://chiselapp.com/user/cfuhrman/repository/shpak/home) is also available for checkout from the following locations:

- **Git:** GitHub(https://github.com/cfuhrman/shpak), BitBucket(https://bitbucket.org/chrisfuhrman/shellpak) - **Fossil:** FuhrWerks(https://fossil.fuhrwerks.com/shpak) - **Bazaar:** Launchpad(https://code.launchpad.net/~cfuhrman/shpak/trunk)

Be aware that portions of the ShellPAK infrastructure relies on Fossil. Conversion to support the conventions of an alternative revision control system is an exercise left to the user.

# Installation

# Install ShellPAK $ ./setup.sh

Note that during installation, ShellPAK will store dot-files (e.g., `bashrc`, `bash_profile`, etc) in `~/Backup/shell` (or whatever is specified by the `-b` flag). These files will be restored during un-installation (via the `-u` flag)

## Other setup options

# Perform a dry-run $ ./setup.sh -r
# Install into another directory $ ./setup.sh -d /path/to/directory
# Do not automatically link files during installation $ ./setup.sh -n
# Set up go programming environment $ ./setup.sh -g
# Remove ShellPAK $ ./setup.sh -u
# Remove ShellPAK & go environment $ ./setup.sh -u -g
# Change backup directory $ ./setup.sh -b /path/to/directory
# List runtime options $ ./setup.sh -h

Previous versions of `setup.sh` provided options for installation of Emacs packages. This is no longer required as Emacs will now automatically install necessary packages on startup.

# Bugs

Please report any bugs or feature requests by filing a ticket(https://chiselapp.com/user/cfuhrman/repository/shpak/reportlist) via the ShellPAK repository website.

# Author

Christopher M. Fuhrman cfuhrman@pobox.com(cfuhrman@pobox.com)

# Copyright

Copyright (c) 2000-2016 Christopher M. Fuhrman All rights reserved.

All files contained herein can be redistributed and/or modified under the terms of the Simplified BSD License (also known as the "2-Clause License" or "FreeBSD License".) unless otherwise noted.