{"id":15209516,"url":"https://github.com/dianaw353/dotfiles","last_synced_at":"2025-10-29T15:30:42.625Z","repository":{"id":247458174,"uuid":"825157130","full_name":"dianaw353/dotfiles","owner":"dianaw353","description":"A easy to use, post install script to install hyprland dotfiles","archived":false,"fork":false,"pushed_at":"2025-01-30T06:20:28.000Z","size":8167,"stargazers_count":8,"open_issues_count":7,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-12T23:49:06.539Z","etag":null,"topics":["alacritty","ansible","automation","bluetooth","dotfiles","fastfetch","helix","hyprland","hyprland-config","hyprland-rice","kvm","nautilus","oh-my-posh","vm","zsh"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dianaw353.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2024-07-07T00:35:14.000Z","updated_at":"2024-12-22T20:50:13.000Z","dependencies_parsed_at":"2024-08-26T18:56:03.074Z","dependency_job_id":"8a5c4aed-70e0-43e7-bacb-033a79682da4","html_url":"https://github.com/dianaw353/dotfiles","commit_stats":{"total_commits":345,"total_committers":5,"mean_commits":69.0,"dds":0.2028985507246377,"last_synced_commit":"bf348ad8078b68c535e16dea4c137ef8a19fec24"},"previous_names":["dianaw353/dotfiles"],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dianaw353%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dianaw353%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dianaw353%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dianaw353%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dianaw353","download_url":"https://codeload.github.com/dianaw353/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238840737,"owners_count":19539602,"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","ansible","automation","bluetooth","dotfiles","fastfetch","helix","hyprland","hyprland-config","hyprland-rice","kvm","nautilus","oh-my-posh","vm","zsh"],"created_at":"2024-09-28T07:40:36.559Z","updated_at":"2025-10-29T15:30:40.441Z","avatar_url":"https://github.com/dianaw353.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e [!IMPORTANT]\n\u003e This repo is going under some overhaul as we start working on the switch to Aylur's Gtk Shell, version 2.x.\n\u003e The branch you're at, `main`, is currently at AGS version 1.9.0 and will no longer have new features unless absolutely necessary.\n\n\u003cdiv align=\"center\"\u003e\n \u003ch1\u003eDotfiles\u003c/h1\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n![GitHub last commit](https://img.shields.io/github/last-commit/dianaw353/dotfiles?style=for-the-badge\u0026color=FFB1C8\u0026logoColor=D9E0EE\u0026labelColor=292324)\n![GitHub Repo stars](https://img.shields.io/github/stars/dianaw353/dotfiles?style=for-the-badge\u0026color=FFB686\u0026logoColor=D9E0EE\u0026labelColor=292324\u0026logo=andela)\n![GitHub repo size](https://img.shields.io/github/repo-size/dianaw353/dotfiles?style=for-the-badge\u0026color=CAC992\u0026logoColor=D9E0EE\u0026labelColor=292324\u0026logo=protondrive)\n![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/dianaw353/dotfiles?style=for-the-badge\u0026labelColor=292324\u0026color=CBA6F7)\n![Github open issues](https://img.shields.io/github/issues/dianaw353/dotfiles?style=for-the-badge\u0026labelColor=292324\u0026color=D9E0EE)\n\n\u003c/a\u003e\n\u003c/div\u003e\n\u003chr /\u003e\n\u003cdiv align=\"center\"\u003e\n\u003cp\u003e\n   A Hyprland configuration set using \u003ca href='https://github.com/aylur/ags'\u003eAGS (Aylur's Gtk Shell)\u003c/a\u003e.\u003cbr/\u003e\n   Can also be used as an automated post-install configuration script.\u003cbr/\u003e\n\u003c/p\u003e\n\n\u003chr /\u003e\n\u003c/div\u003e\n\n\u003e [!WARNING]\n\u003e Laptop workarounds are based on community feedback, and NVIDIA support is noted by Hyprland Wiki to be unofficial but supported with the help of the community.\n\n## Showcase\n\n### Version 2\n\nCurrently being developed... Picture comming Soon!\n\n### Version 1 as of 11-18-14 (Maintenance Mode)\n\n\u003cdiv align=\"center\"\u003e\u003ctable\u003e\n\u003ctr\u003e\u003ctd\u003e\u003cimg src=\"https://github.com/dianaw353/dotfiles/blob/main/assets/2024-11-03_09-51-24.png?raw=true\"/\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\u003ctable\u003e\n\u003ctr\u003e\u003ctd\u003e\u003cimg src=\"https://github.com/dianaw353/dotfiles/blob/main/assets/2024-11-03_09-51-44.png?raw=true\"/\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cimg src=\"https://github.com/dianaw353/dotfiles/blob/main/assets/2024-11-03_09-52-00.png?raw=true\"/\u003e\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e\u003c/div\u003e\n\n## Featues\n\n\u003cdetails\u003e\n\u003csummary\u003eDotfiles\u003c/summary\u003e\n\u003cbr\u003e\n\n- Sane defaults for Pacman\n- Clean and minimal configurations for fastfetch, ZSH and OMP (Oh-My-Posh)\n  - ZSH configuration also includes a command called `rmpmlck` (ReMove PacMan LoCK) to remove the lock file if Pacman is not running.\n- Focus on GTK\n- Login skin by AGS\n  - Uses GreetD as the greeter.\n- Material 3 design language\n  - Yes, this includes a replica of the Monet engine!\n- Sane Hypridle configuration set\n  - Inhibits locking in full screen.\n  - Pauses all supported players when locked.\n    - Player support depends on the player of choice. Most major ones like Spotify and YouTube Music should support this.\n- Basic OSDs (On-Screen Displays)\n  - Located on the right side of the screen by default for consistency with phones and tablets.\n- Mild customizability, with even more tweaks possible inside the config files themselves\n  - Hey, at least it's the widest variety of configurations you can get from the GUI! It's like Good Lock on Samsung except it comes bundled out of the box.\n- Keyboard shortcuts guide widget\n  - Similar to what Ubuntu Unity and Pardus have.\n  - Can be invoked with Super+/, much like on Discord.\n- Full screen mobile-esque power menu\n  - This ain't like KDE but more like, again, Android devices.\n- Cute defaults for images\n  - ...if you like anime style, that is. You can still change those in configurations, though.\n- Many more available and to come!\n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n\u003csummary\u003eScripts\u003c/summary\u003e\n\u003cbr\u003e\n\n\n- Fully automated\n- Granular configuration\n\u003cdetails\u003e\n\u003csummary\u003ePrepares the system for the configuration\u003c/summary\u003e\n\u003cbr\u003e\n\n- Updates the system before anything else.\n- Makes sure preliminary dependencies are installed.\n- Installs the AUR helper of choice.\n- (Optional) Sets up Chaotic AUR - A pacman repo for prebuilt AUR packages.\n- Generates mirror list using `rate-mirrors-bin` for fastest package installation experience possible.\n  - A backup of the previous mirror list is generated should you need to revert back.\n\n\u003c/details\u003e\n\n- VM detection - Hyprland needs extra configuration for virtual machines to enforce software rendering.\n- Installs GPU drivers where supported.\n  - Config review before running is a must! (`group_vars/all.yml`)\n  - **__IF YOU HAVE AN NVIDIA GPU NOT SUPPORTED BY THE LATEST DRIVER, YOU MUST AVOID PROPRIETARY DRIVERS SERVED HERE AND FOLLOW ARCH WIKI FOR THE ONE THAT SUITS YOU!__**\n- Laptop workarounds\n  - Currently only has auto-brightness blacklisting for Framework laptops - The board vendor is detected just in case.\n- KVM configuration with 3D accelaration\n- Required and optional dependencies for Linux gaming :D\n- Full support for Arch Linux, with more on the roadmap.\n- More of these! Check the config for most of them!\n\u003c/details\u003e\n\n## Supported Linux distros\n\n- Arch Linux\n\n## Requirements\n\n1. Get the release you want.\n1.1. Stable release (Recommended for end users):\n```\nbash \u003c(curl -s https://raw.githubusercontent.com/dianaw353/dotfiles/main/dotfiles.sh) stable\n```\n1.2. Rolling release (Recommended for developers and enthusiasts):\n```\nbash \u003c(curl -s https://raw.githubusercontent.com/dianaw353/dotfiles/main/dotfiles.sh) rolling\n```\n2. Head into the `dotfiles` folder and edit the variables in `group_vars/all.yml`\n\n\u003e [!NOTE]\n\u003e These defaults were adjusted for my own setup, and there may be quite a few things you might want to change in there.\n\n## Installation\n\n(Optional) Do a dry-run to make sure things go smoothly:\n```\nansible-playbook main.yml --ask-become-pass --check\n```\n\nThe real deal:\n```\nansible-playbook main.yml --ask-become-pass\n```\n\nYou may also run a specific role instead of the entire playbook, which will install and configure only the packages and apps that role contains.\n```\nansible-playbook main.yml --ask-become-pass -t role1 [role2 [...]]\n```\n\n\u003e P.S. A list of the available roles can be found under the `default_roles` variable inside `group_vars/all.yml`. :3\n\n## To-Do\n\nView [the relevant issues tag](https://github.com/dianaw353/dotfiles/issues?q=is%3Aissue+label%3AFeature+is%3Aopen) for a more comprehensive rough list of To-Dos and upcoming features.\n\n## Layout of the repo\n\n\u003cdetails\u003e\n\u003csummary\u003eClick/Tap to reveal\u003c/summary\u003e\n\n- Pre-configuration Tasks\n  - Package manager\n    - Perform system upgrade if needed.\n    - Make sure preliminary dependencies are installed.\n    - Install the AUR helper of choice.\n    - (Optional) Set up Chaotic AUR.\n    - Generate mirror list using `rate-mirrors-bin`.\n      - A backup of the existing list will be generated in case you don't like the one generated by this repo.\n    - Update `pacman` configuration.\n  - VM detection\n    - Hyprland requires extra configuration for software rendering, which is a must for VMs.\n  - Drivers\n    - CPU detection to install the relevant `ucode` in case you skip it during system installation.\n    - GPU detection\n      - Core 64-bit, 32-bit and multiarch packages for all GPUs\n      - Required open-source multiarch graphics drivers and packages for AMD, Intel and NVIDIA\n      - Required proprietary multiarch graphics drivers and packages for AMD, Intel and NVIDIA\n  - Laptop workarounds\n    - Board vendor detection for appropriate workarounds to be applied.\n  - System\n    - Install required packages\n    - Enable SystemD services\n      - `systemd-timesyncd.service`\n      - `bluetooth.service`\n      - `pipewire.service`\n      - `pipewire-pulse.service`\n      - `wireplumber.service`\n    - Fixes\n      - GTK window buttons\n      - Screen locking\n      - Screen sharing using Pipewire\n    - Install packages\n      - Core system packages\n      - Audio server - May only choose either of these, not both.\n        - Pipewire\n        - PulseAudio\n      - Bluetooth\n        - Core packages\n        - PulseAudio companions\n- Core roles\n  - AGS\n    - Install required packages\n    - Configuration\n      - Create configuration directories\n      - Copy over the configuration files - User profile images included.\n      - Enable required services\n  - Hyprland\n    - Install required packages\n    - Configuration\n      - Copy over the configuration files\n      - Update pre-made configuration files\n      - Enable dynamic cursors\n  - Install and configure core packages\n    - (Optional) Change the default shell\n      - Supports only ZSH. Also disables OMP warnings if my config is used.\n  - i18n (Internationalization)\n    - Install fcitx5 and configure it.\n      - The only configuration for now is allowing language switches everywhere.\n    - (Optional per language) Install fonts for non-Latin languages. Currently supports the following languages:\n      - CJK (Chinese-Japanese-Korean) - Noto\n      - Japanese - Official font by the IPA\n      - toki pona - linja pona\n    - (Optional per language) Install fcitx5 IMEs for non-Latin languages. Currently supports the following languages with their respective packages:\n      - Chinese - `fcitx5-chinese-addons`\n      - Japanese - `fcitx5-mozc`\n      - Korean - `fcitx5-hangul`\n      - toki pona - `ilo-sitelen-git`\n  - Install custom apps\n  - KVM\n    - Replace `iptables` with `iptables-nft`\n    - Install required packages\n    - Enable required services\n    - Add current user to `libvirt` group\n    - Update `libvirtd` settings\n    - Make sure virtual network is started and set it to automatically start on boot\n  - VMware\n    - Install specified headers package for your kernel (Required for `vmmon` and `vmnet` kernel modules)\n    - Install VMware Workstation from AUR\n    - Enable USB Arbitrator and Networks services\n  - Install required packages and optimal gaming experience\n- Post-configuration Tasks\n  - Clear AUR cache\n\n\u003c/details\u003e\n\n## Credits\n\n- TechDufus: https://github.com/TechDufus/dotfiles\n- Logan Marchione: https://github.com/loganmarchione/ansible-arch-linux\n- Dreams of Autonomy: https://github.com/dreamsofautonomy/zensh and https://github.com/dreamsofautonomy/zen-omp\n- Aylur: https://github.com/Aylur/dotfiles\n- Kotontrion: https://github.com/kotontrion/dotfiles\n- Stephan Raabe: https://gitlab.com/stephan-raabe/dotfiles\n- And more that I might have forgotten to add...\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdianaw353%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdianaw353%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdianaw353%2Fdotfiles/lists"}