{"id":28893996,"url":"https://github.com/sreedevk/dot","last_synced_at":"2026-05-03T17:32:16.518Z","repository":{"id":46131014,"uuid":"229570208","full_name":"sreedevk/dot","owner":"sreedevk","description":"The Dot Project. My Dotfiles for Everything Under the Sun","archived":false,"fork":false,"pushed_at":"2026-04-06T12:27:38.000Z","size":48940,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-06T14:36:00.569Z","etag":null,"topics":["arch-linux","archlinux","dotfiles","dotfiles-linux","dotfiles-manager","linux","linux-scripts"],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":true,"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/sreedevk.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-12-22T13:14:01.000Z","updated_at":"2026-04-06T12:27:42.000Z","dependencies_parsed_at":"2023-10-19T16:45:22.225Z","dependency_job_id":"eddc1e33-138e-47c6-a71a-f639682daf35","html_url":"https://github.com/sreedevk/dot","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/sreedevk/dot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreedevk%2Fdot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreedevk%2Fdot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreedevk%2Fdot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreedevk%2Fdot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sreedevk","download_url":"https://codeload.github.com/sreedevk/dot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sreedevk%2Fdot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32578578,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["arch-linux","archlinux","dotfiles","dotfiles-linux","dotfiles-manager","linux","linux-scripts"],"created_at":"2025-06-21T03:42:04.305Z","updated_at":"2026-05-03T17:32:16.512Z","avatar_url":"https://github.com/sreedevk.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch2 align=\"center\"\u003eNix(OS) Configurations\u003c/h2\u003e\n\nThis repository contains configurations for various programs \u0026 Nix(OS).\nThis Nix(OS) section of this repository is located in the `nixos` directory. \n\n## TODO\n1. bug: tmux/terminal reads C-i as \\\u003ctab\\\u003e\n2. notes sync\n3. deploying to apollo (nixOS) via colmena causes nixGL to fail to recognize the nvidia driver\n4. keyboard layout \"UNKNOWN\" at login\n5. Switch to niri\n6. some dependencies that require secrets start before agenix.service has had the chance to run\n\n## Distant Dreams\n1. Get rid of the dependency on a static LAN ip address (potentially using DDNS)\n2. improvement: migrate to Traefik\n3. k3s setup on apollo\n4. disko setup on apollo\n\n## Pre Requisites\n### Install Home Manager CLI\n```bash\nnix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager\nnix-channel --update\nnix-shell '\u003chome-manager\u003e' -A install\n```\n\n### Install System Manager CLI\n```bash\nnix profile add 'github:numtide/system-manager'\n```\n\n## Using Docker Compose to Check Configs\n\n```bash\ndocker compose run --remove-orphans check\n```\n\n## File Structure\n### nixos/hosts\n\n- The `nixos/hosts` contains the `configuration.nix` files for each of my machines that runs NixOS. \n- Each host is assigned a separate folder. \n- The creation of users is managed by the `configuration.nix` but all the user related configuration is handled by `home-manager`. The common link between the created user and configured user is just the username \u0026 hostname (\"\\\u003cusername\\\u003e@\\\u003chostname\\\u003e\".\n\n### nixos/hosts/\\\u003chost\\\u003e/users\n- The `users` directory under each host in the nixos/hosts directory is the home-manager configuration for a specific user for that host.\n- Each user has a `\u003cusername\u003e/default.nix` file that's the entrypoint for that user for home-manager.\n\n### nixos/common/hm\n- This directory contains all the home-manager modules that are shared by multiple users across multiple hosts\n\n### nixos/common/os\n- This directory contains all the nixos modules that are shared by multiple hosts.\n\n### nixos/common/overlays\n- This directory contains all the overlays for nixpkgs used by both nixos and home-manager.\n\n### nixos/common/secrets/mappings.nix\n- This is the file that maps *.age files inside the `${ROOT}/secrets` directory to variables that are used by various home-manager \u0026 nixos modules.\n\n### secrets\n- the `secrets` directory contains all the age encrypted files managed by agenix for both home-manager \u0026 nixos modules.\n\n### flake.nix\nThis is the entry point for both the `home-manager` \u0026 `NixOS`. \n\n#### Flake Operations\n\n##### Updating Flake.lock\nSince we are using a `nixos/flake.lock` file, we need to update the flake inputs using the command below.\n\n```bash\nrake nix:flake:update\n```\n\n##### Checking Flake Integrity\n```bash\n# CHECK CURRENT SYSTEM\nrake nix:flake:check\n\n# CHECK ALL SYSTEMS\nrake nix:flake:check:all\n```\n\n#### NixOS Operations\n##### Rebuilding \u0026 Switching to NixOS Generations\n\n```bash\n# USING REMOTE CACHE\nrake nix:os:install\n\n# WITHOUT USING REMOTE CACHE\nrake nix:os:install:offline\n```\n\n#### Home-Manager Operations\n##### Rebuilding \u0026 Switching to Home-Manager Generations\n\n```bash\n# USING REMOTE CACHE\nrake nix:home:install\n\n# USING REMOTE CACHE AND BACKUP CONFLICTING FILE OVERWRITES\nrake nix:home:install:backup\n\n# WITHOUT USING REMOTE CACHE \nrake nix:home:install:offline\n\n# WITHOUT USING REMOTE CACHE AND BACKUP CONFLICTING FILE OVERWRITES\nrake nix:home:install:offline:backup\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsreedevk%2Fdot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsreedevk%2Fdot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsreedevk%2Fdot/lists"}