Skip to content

michaelpq/home

Repository files navigation

Home, Michael Paquier
=====================

Home is a project allowing you to set up a Linux/Unix-based environment
with a simple GIT fetch. No more thinking about setting a hundred times
the same things in virtual machines or similar.

The environments are all based on the core features located on branch
master. This branch ignores all the settings done in all the other
environments so it can be fetched freely whatever the environment used.
It also maintains consistent all the features and folder structures that
are shared among all the environments.
Additional branches can be created depending on very specific needs of
a configuration or OS, even if things are made to be a maximum OS-proof.

OS supported
------------

The following OS are supported with spatch as long as there is a shell
environment available:

- Unix-based: OSX, FreeBSD
- Linux
- Windows: msysgit

Private paths
-------------

Home provides paths to store private binaries and settings to very
adaptable to the user's needs. Default environment variables define
those paths (which still need to be created):

- $HOME_BIN_EXTRA, for private binaries. Included in PATH by default.

It is not recommended to change those default values, as the same values
are hard-coded as well in .gitignore in the dedicated paths.

There is as well a set of files that can be used for private settings:

- $HOME/.bash_alias_extra, for private values of bash aliases
- $HOME/.bash_extra, for private values of bash
- $HOME/.emacs_extra, for private settings of emacs
- $HOME/.gitconfig_extra, for private settings of git
- $HOME/.mutt_aliases, list of aliases for mutt
- $HOME/.mutt_extra, for private settings of mutt
- $HOME/.psqlrc_extra, for private settings of psql

All those files can be linked automatically with spatch, a utility
written in bash to manage multiple setting profiles in a single
environment. Note though that on NFS file systems, ln creates a copy
of a file instead of soft-linking it, hence each update that occurs
on a given profile file will not be noticed automatically by a Windows
environment and needs to have the profile reloaded each time.

All the options available with spatch can be listed as follows:

    spatch --help

All those paths are ignored by Home. Those folders need to be created
by user if needed as well. For more information, feel free to read
.spatch.d/README about profile configuration with spatch.

It is as well possible to hard-code them in the extra bash settings as
private settings are loaded after the settings of Home.

Copyright
---------

Copyright information can be found in the file COPYRIGHT and license terms
can be found in the file LICENSE.

Follow-ups
----------

- Development blog: http://paquier.xyz/
- Twitter: http://twitter.com/michaelpq

About

Home, Michael Paquier's general Linux/OSX/Windows home as a GIT repository

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published