{"id":22270625,"url":"https://github.com/garywei944/eva_init","last_synced_at":"2026-01-29T21:32:21.276Z","repository":{"id":65769537,"uuid":"235379413","full_name":"garywei944/eva_init","owner":"garywei944","description":"One-click solution to initialize Ubuntu instance and set up the development environment","archived":false,"fork":false,"pushed_at":"2024-08-29T21:54:08.000Z","size":67712,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-28T13:37:48.386Z","etag":null,"topics":["ubuntu","ubuntu-instance"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/garywei944.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}},"created_at":"2020-01-21T15:47:37.000Z","updated_at":"2024-08-29T21:54:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"cabe1891-3ff0-490f-84e2-a395d3f68035","html_url":"https://github.com/garywei944/eva_init","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/garywei944/eva_init","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywei944%2Feva_init","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywei944%2Feva_init/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywei944%2Feva_init/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywei944%2Feva_init/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/garywei944","download_url":"https://codeload.github.com/garywei944/eva_init/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywei944%2Feva_init/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28885563,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-29T21:06:44.224Z","status":"ssl_error","status_checked_at":"2026-01-29T21:06:42.160Z","response_time":59,"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":["ubuntu","ubuntu-instance"],"created_at":"2024-12-03T12:09:02.371Z","updated_at":"2026-01-29T21:32:21.256Z","avatar_url":"https://github.com/garywei944.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# One-click initialize Ubuntu instance\n\n## Overview\n\n`init.sh` is used to initialize many kinds of Ubuntu 20 instances including\nWSL, vagrant, or server instances(AWS EC3, Vultr.com server, etc). It installs\nnecessary dependencies and applications.\n\nBy default, the scripts won't set up my personal configurations and private\nkeys unless the environment variable `EVA` is set.\n\n## Usage\n\n```bash\n[EVA=] ./init.sh \u003ccommand\u003e\n```\n\nFor instance, if I create a new server from any cloud service provider, all I\nneed to do is to run\n\n```bash\n./init.sh server\n```\n\nand enter the password if needed, then I'm all set.\n\nIf I want to install `docker` on the machine, I'll do\n\n```bash\n./init.sh docker\n```\n\nIf I want to set up the `/etc/sudoers` file so that I won't need to enter the\npasswd to run `sudo`, I'll do\n\n```bash\n./init.sh config_sudo\n```\n\nHowever, if I want to set default shell to `zsh` and import my configuration\nfor `oh-my-zsh` and `spacemacs`, I'll do\n\n```bash\nEVA= ./init.sh config_terminal\n```\n\nAll `\u003ccommand\u003e` are defined by the scripts within `src` folder and are declared\nwithin the type of bash functions.\n\n### Type of instance\n\n* `server` - AWS EC2 instance or other ubuntu server. Install `basic`.\n* `sa_server` - Servers that I didn't have `sudo` permission.\n* `wsl` - reinstall `openssh-server` and set up ssh listening port\n  on `port 2233`.\n* `vagrant` - similar to how `server` is set up.\n  Set up ssh listening port on `port 2233`.\n\n### App name to be installed\n\n* `basic` - install all development environments and necessary terminal utils,\n  including `zsh`, `build-essential`, `python`, etc.\n* `docker` - follows the official document to install docker\n\n### Configurations\n\n*Note that only `config_sudo` runs without the environment variable `$EVA` set\nsince they all import my personal configurations*\n\n* `config_sudo` - make `sudo` not need to enter password\n* `config_git` - add git configuration and add `github.com`\n  to `authorized_keys`\n* `config_terminal` - configure `zsh`, `emacs`, and clone this repo to `~/.eva`\n* `config_vim` - add vim configuration and download dependencies\n* `config_server` - add `id_rsa.pub` to `authorized_keys`\n* `config_wsl` - set up wsl according\n  to [WSL-CLion](https://www.jetbrains.com/help/clion/how-to-use-wsl-development-environment-in-product.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarywei944%2Feva_init","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgarywei944%2Feva_init","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarywei944%2Feva_init/lists"}