{"id":15059200,"url":"https://github.com/ualbertalib/fedoradesktop","last_synced_at":"2026-04-05T17:35:16.515Z","repository":{"id":107402255,"uuid":"591446837","full_name":"ualbertalib/FedoraDesktop","owner":"ualbertalib","description":"An Ansible playbook for configuring Fedora Linux desktops, laptops, or VM's","archived":false,"fork":false,"pushed_at":"2023-01-24T18:20:54.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-01-21T16:17:49.172Z","etag":null,"topics":["ansible","fedora-linux"],"latest_commit_sha":null,"homepage":"","language":"Jinja","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/ualbertalib.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}},"created_at":"2023-01-20T19:28:12.000Z","updated_at":"2023-01-20T20:23:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"7c62a52a-39b0-486a-ad4b-b3f76aa54f3a","html_url":"https://github.com/ualbertalib/FedoraDesktop","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ualbertalib%2FFedoraDesktop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ualbertalib%2FFedoraDesktop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ualbertalib%2FFedoraDesktop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ualbertalib%2FFedoraDesktop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ualbertalib","download_url":"https://codeload.github.com/ualbertalib/FedoraDesktop/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243663640,"owners_count":20327304,"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":["ansible","fedora-linux"],"created_at":"2024-09-24T22:39:07.665Z","updated_at":"2025-12-29T17:54:44.249Z","avatar_url":"https://github.com/ualbertalib.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"# UAL toolkit for configuring a freshly-installed Fedora Desktop (or laptop, or VM)\n\n* Fedora releases new versions every 6 months.  Rebuilding and re-customizing your desktop frequently can be a pain.\n* Neil built this to ease the pain, by automating a lot of the work\n* This is only tested for Fedora 37 - it probably won't work for any other version (but, I've tried to make porting easy)\n\n## My assumptions for a desktop/laptop at UAL:\n\n* I work with a lot of git repos.  I keep them all in a flat directory, ~/dev/.  \n* It's going to help if your AD userid == local unix userid == CCID\n\n## Updating?\n\n* This repo assumes that you will nuke-and-pave the OS, then use this to recreate your desired configuration afresh.  If you're doing something else, this might not work for you.\n* Before nuke-and-pave, know that this repo is missing key elements\n    * backups (esp. of your home dir)\n    * backups: your ~/.ssh/  (private keys)\n    * backups: your ~/.config/\n    * backups: your ~/.gitconfig/\n    * backups: your ~/.vimrc/ (if you're a vim fan)\n    * Engage brain!  What else is on that HD that you'll want right after you nuke it?\n\n## Step 1: Perform OS install\n\n* Use the Workstation-Live ISO\n* Perform fresh OS install \u0026 reboot (get the right time zone)\n* At \"firstboot\", \n    * please set the root password (security!) \u0026 don't enable remote login by root\n    * enable the optional repositories \n    * set up your personal account\n* Install all the latest patches with: `sudo dnf update -y` (or use the \"software\" GUI) and reboot\n\n## Step 2: Get a copy of the toolkit\n\n* On the freshly installed VM, logged in with your personal userid...\n* Install git; `sudo dnf install git`\n* Clone this repo, I suggest: `mkdir ~/dev/; cd ~/dev; git clone https://github.com/ualbertalib/FedoraDesktop.git; cd FedoraDesktop`  (It's public, you shouldn't need any keys)\n\n## Step 3: Personalize the toolkit\n\n* Add your SSH key files into the tree\n    * If this is your first time, generate a new keypair; otherwise, copy existing files to this machine; if you generate new, consider how you'll back these up!\n    * `cp ~/.ssh/id* ~/dev/FedoraDesktop/roles/desktop/files/`   # Neil, this is redundant\n    * (you must not commit them to this repo; .gitignore is set up to ignore these files)\n* Edit roles/desktop/files/authorized_keys, adding the public key(s) you want to use for remotely logging into your desktop\n* roles/desktop/vars/main-template.yml is unencrypted, but we'll use it to create  a place where you should put your passwords\n    * `cd roles/desktop/vars`\n    * `cp main-template.yml main.yml`\n    * `ansible-vault encrypt main.yml`  --\u003e it will prompt you twice for a password\n    * `ansible-vault edit main.yml` --\u003e it wants the password now.   Add your passwords!\n    * It's worth saying: you must not commit these credentials!\n* This file: inventory.template\n    * Make your own copy you can edit: `cp inventory.template inventory`\n    * You should edit \"inventory\" \u0026 make sure the canonical hostname of this VM is the only entry in the [desktop] group\n    * Fill out the variables found there!  I'm not kidding !  This step is very important! (set your userid)\n\n## Step 4: The main event - Use scripts and Ansible to configure the desktop\n\n* run the prepNewDesktop4Ansible.sh script, directly on the fresh OS \n* Run the playbook that will configure the machine, ready to be your desktop:\n\n`ansible-playbook desktop.yml -i inventory --ask-vault-pass `  # wants password for decryption\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fualbertalib%2Ffedoradesktop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fualbertalib%2Ffedoradesktop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fualbertalib%2Ffedoradesktop/lists"}