{"id":17150275,"url":"https://github.com/maxbrunet/dotfiles","last_synced_at":"2025-04-13T11:52:12.449Z","repository":{"id":37971657,"uuid":"167293461","full_name":"maxbrunet/dotfiles","owner":"maxbrunet","description":"My Awesome Dotfiles","archived":false,"fork":false,"pushed_at":"2025-04-05T13:18:59.000Z","size":3044,"stargazers_count":26,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-05T14:23:54.761Z","etag":null,"topics":["alacritty","astronvim","base16","dotfiles","dunst","fzf","neovim","nix","nix-darwin","nixos","nixos-configuration","oh-my-tmux","oh-my-zsh","shell","sway","swaywm","tmux","waybar","wofi","zsh"],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maxbrunet.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-01-24T03:05:00.000Z","updated_at":"2025-04-05T13:19:02.000Z","dependencies_parsed_at":"2024-01-21T22:54:42.900Z","dependency_job_id":"20c04f9a-6630-493d-964b-4a38a0abf70d","html_url":"https://github.com/maxbrunet/dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxbrunet%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxbrunet%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxbrunet%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxbrunet%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maxbrunet","download_url":"https://codeload.github.com/maxbrunet/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710438,"owners_count":21149188,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alacritty","astronvim","base16","dotfiles","dunst","fzf","neovim","nix","nix-darwin","nixos","nixos-configuration","oh-my-tmux","oh-my-zsh","shell","sway","swaywm","tmux","waybar","wofi","zsh"],"created_at":"2024-10-14T21:35:15.775Z","updated_at":"2025-04-13T11:52:12.436Z","avatar_url":"https://github.com/maxbrunet.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# My Awesome Dotfiles\n\nMy dotfiles collection for a flawless workflow. Starring `zsh`, `nvim`, `tmux`, and [NixOS](https://nixos.org).\n\n![Screenshot](screenshot.png)\n\n## Bootstrapping NixOS\n\n\u003e [!WARNING]\n\u003e\n\u003e All data will be erased to install NixOS! These instructions are not indented for any users but myself (**@maxbrunet**), read scripts carefully!\n\n1. Download and boot the [NixOS installer](https://nixos.org/download.html#nixos-iso)\n2. If using WiFi, connect to it:\n\n   ```shell\n   wpa_passphrase \u003cESSID\u003e | sudo tee /etc/wpa_supplicant.conf\n   sudo wpa_supplicant -B -i wlp3s0 -c /etc/wpa_supplicant.conf\n   ```\n\n3. Run bootstrap script:\n\n   ```shell\n   sudo -i\n   nix-env -iA nixos.git\n   git clone https://github.com/maxbrunet/dotfiles.git\n   cd dotfiles\n   ./scripts/bootstrap.sh \u003cHOSTNAME\u003e\n   reboot\n   ```\n\n4. Generate SSH key:\n\n   ```shell\n   /etc/nixos/scripts/generate-ssh-key.sh\n   ```\n\n5. Install Rust toolchain:\n\n   ```shell\n   rustup toolchain install stable --component rust-analyzer\n   ```\n\n\u003e [!NOTE]\n\u003e\n\u003e If running in VirtualBox, ensure:\n\u003e\n\u003e - EFI is enabled\n\u003e - 3D acceleration is enabled\n\u003e - Solid-state Drive is checked for the virtual disk\n\n## Bootstrapping macOS\n\n\u003e At least it is not Windows.\n\n1. Install [Homebrew](https://brew.sh)\n2. Install [Nix](https://nixos.org/download.html#nix-install-macos)\n3. Install the dotfiles:\n\n   ```shell\n   mkdir -p ~/.config\n   git clone https://github.com/maxbrunet/dotfiles.git ~/.config/darwin\n   cd ~/.config/darwin\n   git remote set-url origin git@github.com:maxbrunet/dotfiles.git\n   ```\n\n4. Prepare system for `nix-darwin`:\n\n   ```shell\n   sudo mv /etc/bashrc /etc/bashrc.orig\n   sudo mv /etc/shells /etc/shells.orig\n   sudo mv /etc/zshrc /etc/zshrc.orig\n   sudo mv /etc/nix/nix.conf /etc/nix/nix.conf.orig\n   printf 'run\\tprivate/var/run\\n' | sudo tee -a /etc/synthetic.conf\n   /System/Library/Filesystems/apfs.fs/Contents/Resources/apfs.util -t\n   ```\n\n5. Install [nix-darwin](https://daiderd.com/nix-darwin/):\n\n   ```shell\n   nix --extra-experimental-features 'flakes nix-command' build \".#darwinConfigurations.$(scutil --get LocalHostName).system\"\n   ./result/sw/bin/darwin-rebuild switch --flake .\n   ```\n\n6. Change login shell to Nix's Zsh:\n\n   ```shell\n   chsh -s /run/current-system/sw/bin/zsh maxime\n   ```\n\n7. Configure SSH client:\n\n   ```shell\n   ssh-keygen -t ed25519 -a 100\n   cat \u003e\u003e~/.ssh/config \u003c\u003cEOF\n   Host *\n     SetEnv LC_ALL=C\n     UseKeychain yes\n   EOF\n   ```\n\n8. Set up Podman machine:\n\n   ```shell\n   sudo podman-mac-helper install\n   podman machine init --cpus=4 --memory=4096 --now\n\n   # https://github.com/k3d-io/k3d/issues/1082\n   podman machine ssh bash -e \u003c\u003cEOF\n   echo 'Delegate=cpuset' | sudo tee -a /etc/systemd/system/user@.service.d/delegate.conf\n   sudo systemctl daemon-reload\n   sudo systemctl restart user@\\${UID}\n   EOF\n\n   cat \u003e\u003e~/.ssh/config \u003c\u003cEOF\n   Host localhost\n   \tIdentityFile $(podman machine inspect --format='{{.SSHConfig.IdentityPath}}')\n   EOF\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxbrunet%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxbrunet%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxbrunet%2Fdotfiles/lists"}