GithubHelp home page GithubHelp logo

dotfiles-1's Introduction

elnappo’s dotfiles Build Status

These are my dotfiles, they can be used under macOS and Linux (mainly Arch Linux but Ubuntu is also supported). What is special about it is that Ansible is used to configure and sync your system settings. This has many advantages in contrast to simple bash scripts or a Makefile.

Features

  • update packages (homebrew, pacman, apt) and the dotfiles repository with $ update
  • update your settings (dotfiles) with $ dotfiles
  • sync your packages with $ brewsync between hosts
  • Try to use consistent color theme and fonts between all components
  • set some macOS defaults (dotfiles/ansible/tasks/macos_defaults.yml)
  • set some Arch Linux specific options (dotfiles/ansible/tasks/arch.yml)
  • dnsmasq with dnscrypt for encrypted and locally cached DNS queries (macOS only)
  • try to keep ~/ clean
  • configuration is mainly handled by Ansible (playbook: ~/.dotfiles/ansible/dotfiles.yml)

Included configurations

  • OS
    • macOS
    • Arch Linux
    • Ubuntu / (CentOS)
  • curl
  • fish / zsh / bash
  • GTK
  • i3 (i3blocks)
  • iTerm 2
  • SSH
  • Terminator
  • Termite
  • tmux
  • Transmission
  • Vim
  • Visual Studio Code
  • Wget

Install (for me)

$ git clone https://github.com/elnappo/dotfiles.git ~/.dotfiles
$ cd ~/.dotfiles/init
$ ./setup.sh

Install (for you)

  • Fork this repository
  • Edit at least the following files (better take a look at all files):
├── ansible
│   ├── tasks
│   │   └── macos_defaults.yml
│   ├── vars
│   │   ├── casks.yml
│   │   ├── formula.yml
│   │   ├── gems.yml
│   │   ├── pip.yml
│   │   └── taps.yml
│   └── vars.yml
└── init
    └── macos.bash
  • Some interesting variables for the Ansible playbook are set in dotfiles/ansible/vars.yml

    • login_shell: /usr/local/bin/fish
    • sudo_without_password: true
    • use_dnscrypt: true install and configure DNSCrypt with Unbound as local DNS cache
    • login_window_text: Enter any 11-digit prime number to continue. set a custom message to appear at the bottom of your login window (macOS)
  • Clone and install dotfiles repository:

$ git clone https://github.com/<YOURNAME>/dotfiles.git ~/.dotfiles
$ cd ~/.dotfiles/init
$ ./setup.sh

What is missing

  • gitconfig

SSH client configuration

~/.ssh/config or system wide in /etc/ssh/ssh_config, an basic example can be found at contrib/ssh_config.

Inspired by

dotfiles-1's People

Contributors

elnappo avatar

Watchers

 avatar  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.