GithubHelp home page GithubHelp logo

paulperegud / dotfiles Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gleber/dotfiles

0.0 3.0 0.0 10.3 MB

custom linux config files - using nix and gnu stow

Shell 23.09% Emacs Lisp 6.70% Python 2.43% CSS 67.42% Makefile 0.35% Erlang 0.01%

dotfiles's Introduction

Dotfiles

Build Status

This is paulperegud's dotfiles. It tries to provide both semi-permanent configuration and semi-permanent application versions. It supplies install.sh script, which sets up most apps and configs using Nix, Stow and myrepos. This config makes use of gpg encryption to store some sensitive information in the public github. For more details read private/README.md.

It was originally inspired by xero's dotfiles.

Installation

git clone https://github.com/paulperegud/dotfiles.git $HOME/dotfiles
$HOME/dotfiles/install.sh

Installer assumes the following:

  • either Ubuntu or NixOs
  • Posix-compatible shell
  • installed curl, ssh and bzcat

Testing

Local test can be run with Docker:

make build
make test

This will build an ubuntu image, clone newest dotfiles repo in it and try to run install and uninstall scripts (with private stuff replaced with anonymized versions).

Included configs and apps

Currently it installs configuration for:

  • awesome
  • compton
  • myrepos (to manage dotfile dependencies)
  • git
  • zile
  • xmodmap (maps CapsLock to Control)
  • emacs (Spacemacs)

It installs nix as user-level package manager if nix-env is not found.

It installs the following binaries from Nixpkgs:

  • stow
  • mr
  • zile
  • ag
  • ghc
  • compton
  • emacs

Properties

By depending on nixpkgs, it can keep at bay versions of most-used utilities even if system package manager updates something. Currently it uses master of nixpkgs, hence it will install whatever version of a binary is defined there. In future it is planned to pin commit id of nixpkgs to ensure stable binaries versions.

It uses Spacemacs, which brings in a lot of packages from all kinds of *ELPAs, so versions there are also not predictable.

If you want to see a hardcore approach to version stability of user environment, please check out https://github.com/nilcons/ceh

dotfiles's People

Contributors

gleber avatar paulperegud avatar

Watchers

 avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.