{"id":30651168,"url":"https://github.com/chenxing-dev/dotfiles","last_synced_at":"2026-05-07T13:12:18.990Z","repository":{"id":298884991,"uuid":"982234374","full_name":"chenxing-dev/dotfiles","owner":"chenxing-dev","description":"a dotfiles repository for Arch Linux using Stow, with archinstall configuration, an automated setup script, and a few rofi scripts.. ","archived":false,"fork":false,"pushed_at":"2025-08-01T13:31:34.000Z","size":634,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-01T15:36:56.984Z","etag":null,"topics":["arch-linux","archinstall","dotfiles","dunst","picom","qtile","rofi","wezterm","yazi"],"latest_commit_sha":null,"homepage":"https://chenxing-dev.github.io/dotfiles/","language":"Shell","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/chenxing-dev.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}},"created_at":"2025-05-12T15:13:10.000Z","updated_at":"2025-08-01T13:31:38.000Z","dependencies_parsed_at":"2025-06-13T12:40:46.747Z","dependency_job_id":"393a29ab-4508-46e6-a9a8-168ec8b6a6ad","html_url":"https://github.com/chenxing-dev/dotfiles","commit_stats":null,"previous_names":["chenxing-dev/dotfiles"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chenxing-dev/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenxing-dev%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenxing-dev%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenxing-dev%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenxing-dev%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chenxing-dev","download_url":"https://codeload.github.com/chenxing-dev/dotfiles/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenxing-dev%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272944304,"owners_count":25019514,"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-08-31T02:00:09.071Z","response_time":79,"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":["arch-linux","archinstall","dotfiles","dunst","picom","qtile","rofi","wezterm","yazi"],"created_at":"2025-08-31T06:02:42.079Z","updated_at":"2026-05-07T13:12:18.986Z","avatar_url":"https://github.com/chenxing-dev.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Dotfiles Preview](./screenshot-niri.png)  \n\n## Overview\n\na dotfiles repository for Arch Linux using GNU Stow, with an automated setup script.  \n\n\n- 🧩 **Modular organization** with GNU Stow\n- 🔄 **Safe backups** before making changes\n- 🖥️ **Archinstall configuration** (DEPRECATED!)\n\n## Repository Structure\n\n```bash\ndotfiles/\n├── packages/                    # GNU Stow-compatible directories\n│   ├── dmenu/                   # Rofi/Fuzzel dmenu-style scripts\n│   ├── niri/.config/            # Niri window manager config\n│   ├── picom/.config/picom/     # Picom compositor config\n│   ├── qtile/.config/qtile/     # Qtile window manager config\n│   ├── waybar/.config/waybar/   # Waybar status bar config\n│   ├── wezterm/.config/wezterm/ # Wezterm terminal config\n│   └── ...                      # More packages\n├── config.json                  # archinstall config (deprecated)\n├── README.md                    # This documentation\n└── setup                        # Dotfiles deployment script\n\n```\n\n## Installation\n\n### Arch Linux Installation\n\n1. **Prepare installation media**:  \n   Download Arch ISO from [archlinux.org](https://archlinux.org/download/)\n\n2. **Boot into live environment**\n\n3. **Run archinstall**:\n   ```bash\n   archinstall\n   ```\n\n### Dotfiles setup\n\n4. **Clone the repository (including submodules)**:\n   ```bash\n   git clone --recurse-submodules https://github.com/chenxing-dev/dotfiles.git ~/dotfiles\n   ```\n\n   If you encounter `bash: git: command not found`, you can install Git using the following command:\n   ```bash\n   pacman -S git\n   ```\n\n   If you have already cloned the repository without the `--recurse-submodules` flag, you can initialize and update the submodules with:\n   ```bash\n   cd ~/dotfiles\n   git submodule update --init --recursive\n   ```\n\n   If you are in the region in China and encounter issues with cloning, note that the repository is mirrored on Gitee: [https://gitee.com/dev-chenxing/dotfiles](https://gitee.com/dev-chenxing/dotfiles)\n\n5. **Run the setup script**:\n\n   List available packages with:\n\n   ```bash\n   cd ~/dotfiles\n   ./setup\n   ```\n\n   Select the packages you want to deploy. \n   ```bash\n   ./setup bash code dmenu fcitx5 firefox fuzzel mako niri wallpaper waybar wezterm yazi\n   ```\n   Reboot.\n\n## Usage\n\n### **Backup restoration**:\n\n   ```bash\n   # View available backups\n   ls ~/dotfiles_backup\n   \n   # Restore a package\n   cp -r ~/dotfiles_backup/qtile_20240611_1420/* ~/\n   ```\n\n## Troubleshooting\n\n### Ensure ~/.local/bin is in PATH\n\nFor bash users:\n```bash\necho 'export PATH=\"$HOME/.local/bin:$PATH\"' \u003e\u003e ~/.bashrc\nsource ~/.bashrc\n```\n\n### Updating Submodules\n\nTo update submodules to their latest commits:\n```bash\ngit submodule update --remote --recursive\n```\n\n## Contributing\n\nContributions are welcome! Please follow these steps:\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b new-feature`)\n3. Commit your changes\n4. Push to the branch\n5. Open a pull request\n\n## Credits\n- Firefox Theme: [Monochrome Neubrutalism by Kaskapa](https://github.com/Kaskapa/Monochrome-Neubrutalism-Firefox-Theme)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenxing-dev%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchenxing-dev%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenxing-dev%2Fdotfiles/lists"}