{"id":30813062,"url":"https://github.com/ryuheechul/nixos-terraform","last_synced_at":"2025-09-06T07:35:44.102Z","repository":{"id":312599868,"uuid":"1048017448","full_name":"ryuheechul/nixos-terraform","owner":"ryuheechul","description":"A quick and dirty way to make your freshly spun NixOS instance a little more habitable","archived":false,"fork":false,"pushed_at":"2025-08-31T19:26:10.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-31T20:44:09.189Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ryuheechul.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-31T18:25:13.000Z","updated_at":"2025-08-31T19:26:14.000Z","dependencies_parsed_at":"2025-08-31T20:44:10.724Z","dependency_job_id":"739652b7-b0b0-4273-9d29-ec6ec3c7b1e6","html_url":"https://github.com/ryuheechul/nixos-terraform","commit_stats":null,"previous_names":["ryuheechul/nixos-terraform"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ryuheechul/nixos-terraform","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryuheechul%2Fnixos-terraform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryuheechul%2Fnixos-terraform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryuheechul%2Fnixos-terraform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryuheechul%2Fnixos-terraform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ryuheechul","download_url":"https://codeload.github.com/ryuheechul/nixos-terraform/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryuheechul%2Fnixos-terraform/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273874015,"owners_count":25183364,"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","status":"online","status_checked_at":"2025-09-06T02:00:13.247Z","response_time":2576,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-09-06T07:35:41.227Z","updated_at":"2025-09-06T07:35:44.083Z","avatar_url":"https://github.com/ryuheechul.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# nixos-terraform\n\n\u003e [!NOTE]\n\u003e This is nothing to do with the terraform the tool but the concept terraforming.\n\nA quick and dirty way to make your freshly spun NixOS instance a little more habitable.\n\n## Motivation\n\nWhere the heck is `/etc/nixos/configuration.nix` on my freshly spun NixOS LXC container? How can I install anything to make the life easier for this initial phase of trying to do something in here? (especially when `nix-shell -p ponysay` doesn't work immediately!)\n\n\u003e [!TIP]\n\u003e Actually `nix-shell -p ponysay` would work if you run `nix-channel --update` first! So now this whole repo is quite useless haha!\n\n\n## Use Cases\n### Proxmox LXC\nRight now there is only one example which is an LXC container on Proxmox.\n\nThese are what I looked at when I first tried to spin up:\n- https://www.jacob-swanson.com/posts/nixos-proxmox-lxc-setup\n- https://wiki.nixos.org/wiki/Proxmox_Virtual_Environment#LXC\n- https://neal.codes/blog/2024-06-04-nixos-proxmox-lxc/\n- [Running NixOS on Proxmox LXC](https://taoofmac.com/space/blog/2024/08/17/1530)\n- https://mtlynch.io/notes/nixos-proxmox/\n- https://aran.dev/posts/deploying-nixos-on-proxmox/\n- https://www.reddit.com/r/NixOS/comments/1aw9k9v/default_username_password_for_nixos_lxc_on_proxmox/\n\nAfter trial and error (and now in 2025), what I would do are the following:\nChoose one from here https://hydra.nixos.org/job/nixos/release-25.05/nixos.proxmoxLXC.x86_64-linux#tabs-status and copy the URL and feed that to a CT template.\n\nAnd create a container based on that.\n\n\u003e [!IMPORTANT]\n\u003e Assuming now you are logged into the new container and the internet is working, run the following command inside the container.\n\n```\nnixos-rebuild switch --flake github:ryuheechul/nixos-terraform#nixos-proxmox-lxc\n```\n\nThis basically will give you a few missing packages that make your life a tad bit easier if you are planning to poke around and run things directly within the shell.\n\n\u003e [!WARNING]\n\u003e `nix-shell -p ponysay` doesn't seem to work with flake-based NixOS\n\u003e\n\u003e (yes I'm new to using nixos with flakes as [I build my \"regular\" machines without flake](https://github.com/ryuheechul/dotfiles/tree/master/bootstrap/foundation/nixos) as that works better for me)\n\u003e You can however now run `nix shell nixpkgs#ponysay` instead\n\u003e\n\u003e If anyone knows how to use `nix-shell -p ponysay` in flaked NixOS, please let me know to save my muscle memory for the time being!\n\n## Caveats\n\nAlso in case it wasn't obvious, keep that in mind that this generation will be overwritten by whatever subsequent build that you do with your own configuration. This \"terraforming\" just makes it easier to run that just in case your initial build and switch process involves cloning a git repo and running a command from a Makefile.\n\nBut I also just learned that you can just do something like `nixos-rebuild switch --flake .#your-machine --target-host user@ssh-host`, which makes this nixos-terraform becomes irrelevant if you already have a buildable nix configuration for a machine ready to go.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryuheechul%2Fnixos-terraform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fryuheechul%2Fnixos-terraform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryuheechul%2Fnixos-terraform/lists"}