{"id":15689707,"url":"https://github.com/f-f/home","last_synced_at":"2025-06-14T02:34:15.455Z","repository":{"id":77250506,"uuid":"71017038","full_name":"f-f/home","owner":"f-f","description":"Versioning $HOME: NixOS configurations, dotfiles, scripts, etc.","archived":false,"fork":false,"pushed_at":"2025-03-20T20:38:55.000Z","size":1785,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-07T23:04:54.712Z","etag":null,"topics":["bash","dotfiles","macos","personal-dotfiles"],"latest_commit_sha":null,"homepage":"https://ferrai.io","language":"Nix","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/f-f.png","metadata":{"files":{"readme":".github/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":"2016-10-15T22:29:48.000Z","updated_at":"2025-03-20T20:38:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"3da5bfc4-99fe-4357-b0a7-59980140708f","html_url":"https://github.com/f-f/home","commit_stats":{"total_commits":235,"total_committers":2,"mean_commits":117.5,"dds":0.008510638297872353,"last_synced_commit":"69af6eeb323b51a954399d0cc198d3730731d36d"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f-f%2Fhome","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f-f%2Fhome/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f-f%2Fhome/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f-f%2Fhome/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/f-f","download_url":"https://codeload.github.com/f-f/home/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252968114,"owners_count":21833251,"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":["bash","dotfiles","macos","personal-dotfiles"],"created_at":"2024-10-03T18:04:09.983Z","updated_at":"2025-05-07T23:04:59.692Z","avatar_url":"https://github.com/f-f.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# home\n\nVersioning `$HOME`. Contains nix configs, dotfiles, scripts.\n\nConfig for NixOS only.\n\n## Fresh install, NixOS\n\n1. Do the whole NixOS install thing, and in another machine put together a basic config in the `flake.nix`\n1. Clone this repo in the home folder: `git clone https://github.com/f-f/home.git ~`\n1. Copy out all the content: `cd home \u0026\u0026 find . -maxdepth 1 -exec mv {} .. \\;`\n1. Fetch everything: `cd ~ \u0026\u0026 git submodule update --init --recursive --remote`\n1. Integrate into the config for this hostname the autogenerated `hardware-configuration.nix` and `configuration.nix` files, then `nixos-switch`\n\nAt this point is should be possible to ssh from another machine, so the rest can be done remotely:\n1. Add the fzf module:\n    ```bash\n    mkdir -p .zprezto/contrib \u0026\u0026 cd $_\n    git clone https://github.com/gpanders/fzf-prezto.git fzf\n    cd fzf\n    git submodule update --init\n    ```\n1. Make a new ssh key for github: `ssh-keygen -t ed25519 -C \"$USER+github@$(hostname)\" -f github`, add it as deploy key here\n1. Replace this repo remote from http to git: `git remote set-url origin git@github.com:f-f/home.git`\n\n### On macOS\n\nIt's a little more involved to bootstrap Nix on macOS, but it can be done. After cloning the stuff:\n```bash\n# In case of M1\nsoftwareupdate --install-rosetta\n\n# Install brew and nix\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\ncurl -L https://nixos.org/nix/install | sh\n\n# Set hostname\nexport NEW_HOSTNAME=foo\nsudo scutil --set HostName $NEW_HOSTNAME\nsudo scutil --set LocalHostName $NEW_HOSTNAME\nsudo scutil --set ComputerName $NEW_HOSTNAME\n\n# At this point, edit nixos-config/flake.nix to add the new machine\n\n# Then:\nnixos-switch\n\n# Note: it will complain at first that the nix command requires experimental features, so that will require executing the script by hand adding the right flags, but after that it's all fine\n```\n\nUseful reads:\n- https://xyno.space/post/nix-darwin-introduction\n- https://gist.github.com/jmatsushita/5c50ef14b4b96cb24ae5268dab613050\n- https://github.com/srstrong/nix-env\n- https://daiderd.com/nix-darwin/manual/index.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ff-f%2Fhome","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ff-f%2Fhome","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ff-f%2Fhome/lists"}