Skip to content

alezost/config

Repository files navigation

About

This repository contains:

  • My configuration files (aka “dot-files”) for various programs. But not all: several “big” (usually programmable) configs (for guix, emacs, stumpwm, etc.) live in their own repositories (they may be found in https://gitlab.com/alezost-config group).
  • A tool (config.scm Guile script) to deal with my configs.

config.scm

So to deploy my config files, appropriate symlinks are being created (for example, ~/.bashrc is becoming a symlink to bash/bashrc from this repo). For this purpose (and for other useful actions, like listing available configs or removing old configuration files), I use config.scm script from this repo. It relies on my guile modules.

Examples

config.scm deploys (symlinks) itself to ~/bin/config and as ~/bin directory is in my PATH, I can refer to it as config. Although it provides “-h”/”–help” option, here are some examples anyway:

  • Clone all repositories with my configs to appropriate places and make the required symlinks:
    config --fetch --deploy
        
  • Display a list of names of all available configurations:
    config -l
        
  • Show verbose descriptions (git repositories, directories where they will cloned and symlinks that will be created during deploying) of “emacs” and “shepherd” configurations:
    config --show emacs shepherd
        

Bootstrapping

After installing a new operating system, my first wish is to have all my configs deployed! So I just clone this repo and run bootstrap shell script which does the job for me (it downloads my guile modules and executes config.scm using them). There is also help shell script to remind me the details of bootstrapping process on a fresh system.

About

My "dot" (configuration) files

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published