1
0
forked from extern/nix-config
My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
Go to file
2017-12-19 23:59:22 -05:00
bin Add .gitkeep for bin directory 2017-12-11 23:21:32 -05:00
dotfiles Map Caps Lock to Ctrl and Esc with .xmodmap 2017-12-19 23:29:34 -05:00
etc Move user.js to etc/user.js and add other disabled content 2017-12-12 23:47:17 -05:00
external Fix spacing in normalize.css 2017-12-13 17:36:46 -05:00
grub Add Arch Silence grub theme 2017-12-12 23:58:44 -05:00
help Add patch information to git.md 2017-12-19 23:47:44 -05:00
install Add xcape to packages.sh 2017-12-19 23:48:14 -05:00
lib Clean up case statement in trucolor.cr 2017-11-13 12:09:32 -05:00
serv Add base ecr files for the server 2017-12-16 23:58:32 -05:00
src Add initial layout for a server to serv.cr 2017-12-16 23:56:12 -05:00
.gitignore Add .gitignore with rules for the bin/ directory 2017-12-11 23:24:30 -05:00
.travis.yml Add base .travis.yml 2017-12-18 18:05:20 -05:00
build.sh Add build.sh, used to compile crystal binaries 2017-12-16 23:47:05 -05:00
install.sh Add base crystal-ctags installation to install.sh 2017-11-21 18:18:26 -05:00
LICENSE.md Add license 2017-10-23 00:11:29 -04:00
README.md Clean up README.md with new format 2017-12-19 23:59:22 -05:00

New Start

Vim is my editor, *nix is my IDE.

TODO: Put images here

Table of Contents

A Brief History

Some important things to note:

  1. Linux is not an operating system. It is simply a kernel used as part of an operating system. All the so-called Linux distributions are actually distributions of GNU/Linux.
  2. Arch is rolling release. You will always have the latest software. There is no such thing as "updating to the next version of Arch".
  3. Keep it simple. At the end of the day, you only need to use your computer for a few specific tasks, such as listening to music, writing software, sending messages, and using the internet.
  4. You have complete control over your software. There is no need to insult your computer. If something doesn't work, it's more often than not user error.

Getting Started

Stuff you may want:

  • app/ - All the files used to run my local server
  • dotfiles/ - All the dotfiles used to configure the system
  • etc/ - Other config files that don't exactly have definite paths
    • userChrome.css - A bare-minimum browser that emphasizes keyboard usage
  • grub/ - A nice theme for grub
  • help/ - All the important things I want to remember when using my system
    • vim.md - A complete reference to everything I know (and find worth mentioning) about vim
  • src/ - Small programs I use to handle my specific needs

Summary of the other directories:

  • bin/ - Output directory for compiled binaries from src
  • docs/ - Output directory for compiled documentation from src
  • external/ - Also known as "not my files", these files reside in the external directory so they don't count towards GitHub's language algorithm
  • install/ - Scripts to automate installing the system with the Arch ISO
    • packages.sh - All of the packages I use (and why) from the official repos
  • lib/ - Output directory for the libraries used by src
  • spec/ - Tests for the files in src to make sure that nothing breaks

Design Goals

  1. Simplicity. It should be trivial to find and edit the things you're looking for; to get things done. Once mastered, the interface should not get in the way.
  2. Reproducability. It should be trivial to reproduce your previous environment from a fresh install.
  3. Universality. All functionality should be handled through the terminal.

Usability Goals

  1. Configuration is self-documenting. It is trivial for someone to view and understand how the dotfiles work.
  2. Everything just works. The configuration is simple enough that the possibility for edge cases are extremely limited.

The default wallpaper is Arch Adapta. The original was made by Tista and is released under the Creative Commons Share-Alike 3.0 license.

By default I keep track of the many useful commands and other features I use on a daily basis. Please not that these are not a replacement for reading the man pages of said software.

One thing that always annoyed me was viewing the dotfiles of other people. Many people leave all the default settings in their dotfiles, when the same exact settings are going to be sourced anyway before calling the config file. Your dotfiles should only have what you're changing and nothing else.

Contributing