Skip to content

Commit

Permalink
Chess
Browse files Browse the repository at this point in the history
  • Loading branch information
LukeChannings committed Jul 6, 2024
1 parent 7cb3171 commit 74d369b
Show file tree
Hide file tree
Showing 10 changed files with 611 additions and 658 deletions.
10 changes: 10 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
if ! has nix_direnv_version || ! nix_direnv_version 2.2.1; then
source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/2.2.1/direnvrc" "sha256-zelF0vLbEl5uaqrfIzbgNzJWGmLzCmYAkInj/LNxvKs="
fi

watch_file flake.nix
watch_file flake.lock
if ! use flake . --impure
then
echo "devenv could not be built. The devenv environment was not loaded. Make the necessary changes to devenv.nix and hit enter to try again." >&2
fi
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,16 @@ oni2/workspace
iterm2
raycast
nushell/history.txt
# Devenv
.devenv*
devenv.local.nix

# direnv
.direnv

# pre-commit
.pre-commit-config.yaml

.devenv

.vscode/extensions
19 changes: 19 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"nix.enableLanguageServer": true,
"nix.serverPath": "nil",
"nix.serverSettings": {
"nil": {
"diagnostics": {
"ignored": [
"unused_binding",
"unused_with"
]
},
"formatting": {
"command": [
"nixfmt"
]
}
}
}
}
34 changes: 17 additions & 17 deletions README.markdown
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
# Luke's .config
# Luke's Configuration

________ ________ ________ ________ ___ ________
|\ ____\|\ __ \|\ ___ \|\ _____\\ \|\ ____\
\ \ \___|\ \ \|\ \ \ \\ \ \ \ \__/\ \ \ \ \___|
\ \ \ \ \ \\\ \ \ \\ \ \ \ __\\ \ \ \ \ ___
__\ \ \____\ \ \\\ \ \ \\ \ \ \ \_| \ \ \ \ \|\ \
|\__\ \_______\ \_______\ \__\\ \__\ \__\ \ \__\ \_______\
\|__|\|_______|\|_______|\|__| \|__|\|__| \|__|\|_______|
This repo contains a declarative configuration for all systems, including Operating System, shell, and application configurations.

Contains all of my dotfiles, which live in my [$XDG_CONFIG_HOME](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html), and the ones that don't are symlinked to `~/*`.
## Philosophy

## Usage
System configurations should not install frameworks (e.g. `ruby` or `python`) system-wide. Instead, each project should have its own environment in which it defines its dependencies, and dependency versions.

curl https://raw.githubusercontent.com/LukeChannings/.config/master/install | bash
If a useful system tool requires a specific framework (e.g. `http-server` requires `nodejs`), the `http-server` binary can wrap `nodejs`, but the `node` binary should not be in the global `PATH`. This ensures projects are insulated from system-wide dependencies. It also prevents issues where some tools (e.g. `brew install ffmpeg`) add many dependencies to the system and makes it hard to know if a dependency is still used.

Or in a container:
## Levels

`docker run -it lukechannings/terminal`
Installing a complete configuration, including desktop applications, etc. can take a long time. To minimise the time to productivity the profiles are separated into three levels.

## Goals
### Level 1

- Quickly set up a new machine with all my software and preferences
- Easy to maintain - I don't want an ansible configuration, just something simple and diffable
- Works on macOS, Linux, and WSL
Should be installable within 10 minutes and set up configurations and conveniences that make the system comfortable to use.

### Level 2

Should be installable within 30 minutes and provide the tools necessary for being productive. This usually includes developer tools, devenv environment, etc.

### Level 3

Everything else. It shouldn't matter if this takes a long time to install.
Loading

0 comments on commit 74d369b

Please sign in to comment.