Skip to content
/ dots Public

Rcs, profiles, other dotfiles, I love 'em all

License

WTFPL, LGPL-3.0 licenses found

Licenses found

WTFPL
COPYING
LGPL-3.0
COPYING.GPL
Notifications You must be signed in to change notification settings

strugee/dots

Folders and files

NameName
Last commit message
Last commit date

Latest commit

4a4fad8 · Feb 7, 2025
Jul 23, 2013
Jun 6, 2017
Sep 12, 2013
Jul 22, 2024
Aug 19, 2018
Dec 2, 2024
May 23, 2017
Feb 7, 2025
Jun 11, 2015
Oct 23, 2023
Jul 7, 2013
Jul 7, 2013
Dec 31, 2013
Jul 23, 2013
Jun 6, 2017
Jan 7, 2018
Jun 16, 2022
Feb 15, 2015
Sep 4, 2024
Nov 9, 2015
Aug 12, 2014
Jun 6, 2017
Sep 7, 2018
Jan 25, 2017
Mar 2, 2021
Jun 6, 2017
Jun 24, 2024
Jul 1, 2015
Dec 17, 2017
Mar 2, 2021
Jan 21, 2025
Feb 28, 2015
Oct 6, 2024
Jan 7, 2018
Jul 3, 2013
Dec 1, 2014
Sep 6, 2013
Sep 26, 2013
Sep 18, 2023
Jul 7, 2013
Feb 24, 2017
Jan 19, 2014
Apr 7, 2020
Jul 22, 2024

Repository files navigation

dots

Introduction

This repository contains my personal dotfiles. Most of it is geared towards a git-, Emacs-, and zsh-centric workflow. You'll also find some legacy files for e.g. bash that haven't been touched in ages.

This repository also contains a pretty useful script called configctl, which is used to manage all the files in this repository. It's very smart, fully automatic, and is pretty easy to understand (head -25 configctl will show a nice overview of the parameters, and you can get a nice help summary by executing ./configctl help).

configctl knows how to:

  • Link configurations into place
  • Install tools in ~ from both git clones and tarballs
  • Preinstall Emacs packages
  • Migrate old configurations
  • Precompile zsh scripts
  • Check for common binaries that I expect to have available
  • Perform other miscellaneous tasks

To put it another way, configctl knows how to bootstrap most of the environment I expect by itself, and it knows how to tell me what's missing for almost all of the rest.

configctl requires only POSIX, so it will run under almost any Unix under the sun.

local-config

configctl has the capability to read in a local configuration file, local-config. With this file you can override the behavior of certain routines of configctl. local-config is written with one keyword per line. Here are the options:

Option Type Description
no-ssh Configuration time Specifies that configctl check should not warn if it cannot find a general-purpose SSH key.
headless Configuration time Specifies that configctl check should not warn if it cannot find programs that would only make sense to have under a graphical environment.
no-nodejs Configuration time Specifies that configctl check should assume that Node.js is not available.
darwin Configuration time Specifies that configctl check is running on a Darwin (macOS) system. Linux is assumed otherwise.
secure Configuration time Specifies that configctl is running in a high-security environment and should not attempt to download or warn (in configctl check) about unverified software.
set-inotify Runtime Specifies that .profile should set the maximum user inotify instances to 50,000 using sudo.

License

Unless otherwise noted, the contents of this repository are licensed under the WTFPL.