{"id":13741122,"url":"https://github.com/sillsdev/ops-devbox","last_synced_at":"2025-12-30T05:05:56.328Z","repository":{"id":67374590,"uuid":"39811351","full_name":"sillsdev/ops-devbox","owner":"sillsdev","description":"Ansible playbook for a (linux) developer machine","archived":false,"fork":false,"pushed_at":"2023-06-13T18:39:07.000Z","size":73,"stargazers_count":8,"open_issues_count":0,"forks_count":3,"subscribers_count":26,"default_branch":"master","last_synced_at":"2024-11-15T11:36:20.769Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/sillsdev.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}},"created_at":"2015-07-28T03:35:18.000Z","updated_at":"2023-03-16T21:56:44.000Z","dependencies_parsed_at":"2024-11-15T11:41:16.310Z","dependency_job_id":null,"html_url":"https://github.com/sillsdev/ops-devbox","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/sillsdev%2Fops-devbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sillsdev%2Fops-devbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sillsdev%2Fops-devbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sillsdev%2Fops-devbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sillsdev","download_url":"https://codeload.github.com/sillsdev/ops-devbox/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253153163,"owners_count":21862318,"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":[],"created_at":"2024-08-03T04:00:55.663Z","updated_at":"2025-12-30T05:05:56.280Z","avatar_url":"https://github.com/sillsdev.png","language":"Python","readme":"# Recommended Dev Setup #\n\nThis repo contains Ansible playbooks that installs our recommended development environment.\n\nCurrently, these playbooks only install software for web development on  Ubuntu GNOME 16.04 LTS.\n\n## Installing Ubuntu GNOME 16.04 LTS off USB ##\n1. Download the [Ubuntu](https://ubuntugnome.org/download/) iso.\n2. Make the bootable USB stick following [these instructions](http://community.linuxmint.com/tutorial/view/744).  Note, if you are going to dual-boot Window 10, use [these instructions](https://www.vanstechelman.eu/content/creating-an-uefi-bootable-linux-usb-stick) to make a UEFI bootable USB stick.  This way, you'll avoid issues when the bootloader is installed.\n3. Install Linux, clicking next as required.\n\n### Partitioning ###\n\nIf you have a modest SSD installed, say 250G or so with perhaps an additional spinning media.  We recommend partitioning like so:\n\n![SSD Partitioning](docs/ssd.png?raw=true) \n![HDD Partitioning](docs/hdd.png?raw=true)\n\nNotable features:\n\n* The swap space is on the spinning media.\n* The SSD is split to dual boot Windows and Linux Mint\n* There is a large(ish) shared NTFS space for source code.\n\nIf you are developing a web app using the MongoDB schema-less database it is advisable to have the database on spinning media, as Mongo can grow the memory mapped files to quite a large size, whether you want it to or not.  Therefore there is an ext3 (or ext4) partition on the spinning media alongside the large NTFS partition for shared files.\n\n## Software Installation ##\n\nSo, what all is installed?  Have a look at the *.yml files.  This dev environment stops short of installing required dependencies for a particular app.  e.g. mySQL and Apache would be installed by the application Ansible playbook.\n\n### Initial Manual Setup ###\n\n````\n# Install Git\nsudo apt-get update\nsudo apt-get upgrade\nsudo apt-get install git\n````\n\n````\n# Install Ansible 2.1\nsudo add-apt-repository ppa:ansible/ansible\nsudo apt-get update\nsudo apt-get install ansible\n````\n\nThis upgrades your system and installs ansible and git without which is required to continue with the Ansible Setup described below.\n\n### Ansible Setup ###\n\nFrom your *home* folder...\n\n````\nmkdir src\ncd src\ngit clone --recurse-submodules https://github.com/sillsdev/ops-devbox\ncd ops-devbox\nansible-playbook -i hosts dev.yml --limit localhost -K\n````\n\nand wait.\n\nYou might want to open the systems resource monitor to check on your network traffic, and to give you comfort that something is in fact happening.\n\n### Annoying Extra Steps ###\n\nI like [Remarkable](http://remarkableapp.github.io/) as a markdown editor.  However, it's no longer in the repos for the latest Mint.  You need to install it manually (via deb).\n\n### Known to Work With ###\n\nThis procedure has been known to work with:\n- Ubuntu GNOME 16.04.01 LTS (Xenial)\n\nPrevious versions\n- Linux Mint\n- Ubuntu 14.04 (Trusty)\n","funding_links":[],"categories":["Software"],"sub_categories":["Utilities"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsillsdev%2Fops-devbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsillsdev%2Fops-devbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsillsdev%2Fops-devbox/lists"}