Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/yukondude/scripnix

Useful Python3 and bash shell scripts for macOS/BSD and *NIX. Useful to me, at any rate. YMMV.
https://github.com/yukondude/scripnix

bash cli homebrew linux macos python sysadmin utility

Last synced: 6 days ago
JSON representation

Useful Python3 and bash shell scripts for macOS/BSD and *NIX. Useful to me, at any rate. YMMV.

Awesome Lists containing this project

README

        

# Scripnix
Useful Python3 and bash shell scripts for macOS/BSD and \*NIX. Useful to me, at any rate. YMMV.

[![status](https://img.shields.io/pypi/status/Scripnix.svg)](https://pypi.python.org/pypi/Scripnix/)
[![buildstatus](https://travis-ci.org/yukondude/Scripnix.svg?branch=master)](https://travis-ci.org/yukondude/Scripnix)
[![codecov](https://codecov.io/gh/yukondude/Scripnix/branch/master/graph/badge.svg)](https://codecov.io/gh/yukondude/Scripnix)
[![pypiversion](https://img.shields.io/pypi/v/Scripnix.svg)](https://pypi.python.org/pypi/Scripnix/)
[![pyversions](https://img.shields.io/pypi/pyversions/Scripnix.svg)](https://pypi.python.org/pypi/Scripnix/)
[![licence](https://img.shields.io/pypi/l/Scripnix.svg)](https://www.gnu.org/licenses/gpl-3.0.en.html)

Replaces the old [Scripnix0](https://github.com/yukondude/Scripnix0) project which had grown crufty and was not macOS-friendly.

## Motivation

Scripnix was born during my Linux server admin days when I wanted all of my aliases and scriplets to follow me from machine to machine.
Packaging everything together made installing and keeping up-to-date that much easier.
Writing it was also a bash scripting learning exercise, although I soon grew to loathe space-containing-filenames and all of the quoting that
implied.

As I moved more to MacOS, the BSD version of most commands clashed with the GNU/Linux versions that Scripnix assumed.
Still wanting those handy aliases and scriplets on MacOS, I resurrected Scripnix, but with many more of the commands written in Python, and
with Homebrew-supplied GNU versions of my favourite utilities.
The Python rewrite sidestepped much of the silly bash quoting and syntax, and made testing practical.

## Licence

Licensed under the [GNU General Public License, version 3](https://www.gnu.org/licenses/gpl-3.0.en.html).
Refer to the attached LICENSE file or see for details.

## Change Log

The current version is @@VERSION@@.
Scripnix is [semver](http://semver.org/)-ish in its versioning scheme.

Scripnix is currently an alpha release, so expect many many breaking changes.
Once ready for prime time, the major version number will jump to 2 to reflect that this is actually the second incarnation of Scripnix.

## Installation

Following installation using one of the methods below, you may also want to run the `install-scripnix` command as the root user to setup the
system-wide configuration.
Any other users that also wish to use Scripnix should also run that command.

The `install-scripnix` command will also suggest changes to your `~/.bashrc` or `~/.profile` files to persist Scripnix in your environment.
It will also suggest changes to the `/etc/sudoers` file (vi `visudo`) so that the Scripnix commands can be run via `sudo` when necessary.

### Homebrew (macOS)

On macOS, Homebrew will take care of installing any dependencies, including Python 3.

brew tap yukondude/tap
brew install scripnix
install-scripnix

### PyPI (POSIX)

On *NIX, you will first need to install Python 3.3 (or higher) using your preferred method.

pip3 install scripnix
install-scripnix

## Development Setup

1. Install Scripnix, as above, so that all of its dependencies are available.
1. Create a Python 3 virtualenv for Scripnix: `mkvirtualenv --python=$(which python3) Scripnix`
1. Clone the Scripnix repo: `git clone https://github.com/yukondude/Scripnix.git`
1. Install dependencies: `pip install -r requirements.txt -r requirements-dev.txt -r requirements-test.txt`
1. Install the project in development mode: `./setup.py develop`
1. Run the unit tests to make sure everything is copacetic: `./setup.py test`
1. Pour a snifter of Martell XO and light up a Bolivar Belicoso.

## Commands

The following command descriptions were generated by `describe-scripnix` on @@TODAY@@.