{"id":17157290,"url":"https://github.com/eksperimental/get-elixir","last_synced_at":"2025-07-22T05:05:28.106Z","repository":{"id":35735932,"uuid":"40014672","full_name":"eksperimental/get-elixir","owner":"eksperimental","description":"Get any release of the Elixir programming language, without leaving the comfort of your command line.","archived":false,"fork":false,"pushed_at":"2016-05-10T17:05:28.000Z","size":49,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-16T10:54:50.922Z","etag":null,"topics":["elixir","elixir-programming-language","elixir-releases","elixr-lang","installer","posix","shell"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eksperimental.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-31T16:35:52.000Z","updated_at":"2016-06-27T22:13:41.000Z","dependencies_parsed_at":"2022-08-18T06:28:35.455Z","dependency_job_id":null,"html_url":"https://github.com/eksperimental/get-elixir","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/eksperimental/get-elixir","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eksperimental%2Fget-elixir","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eksperimental%2Fget-elixir/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eksperimental%2Fget-elixir/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eksperimental%2Fget-elixir/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eksperimental","download_url":"https://codeload.github.com/eksperimental/get-elixir/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eksperimental%2Fget-elixir/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266430677,"owners_count":23927169,"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-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"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":["elixir","elixir-programming-language","elixir-releases","elixr-lang","installer","posix","shell"],"created_at":"2024-10-14T22:08:45.789Z","updated_at":"2025-07-22T05:05:28.061Z","avatar_url":"https://github.com/eksperimental.png","language":"Shell","readme":"# get-elixir\n\nGet any release of the **[Elixir programming language](http://elixir-lang.org)**, being **_source code_** or **_precompiled binaries_**, without leaving the comfort of your command line.\n\n## About\n\n**get-elixir** is a script is POSIX shell script which aims to help people download [Elixir releases](https://github.com/elixir-lang/elixir/releases) under any UNIX like operating system (ie. GNU/Linux, *BSD, OSX)\n\nAll you have to do is tell the script, whether you want to **download** or download-and-**unpack** the latest (or any other release), and the script will get it for you.\n\nIt is your duty, though, to [set the PATH environmental variable](http://elixir-lang.org/install.html#setting-path-environment-variable) to the directory where Elixir was extracted to.\n\nIf you are interested in only getting Elixir once, you may execute the [one-liner commands](one-liner.md) that can be directly pasted into your command line, without having to download any script.\n\nIt can also be of interest to developers who need maintain different of versions of Elixir, without the need to build them, to use in conjuntion with an Elixir version manager like [exevn](https://github.com/mururu/exenv). See the [Examples – Advanced](#examples-advanced) section for more on this.\n\nIt is the aim of the project to provide a tool where no high-tecnical knowledge is required.\n\n## Installation\n\nOpen you command line terminal and paste this:\n\n```sh\n    curl -fLO https://github.com/eksperimental/get-elixir/raw/master/get-elixir.sh\n    chmod +x get-elixir.sh\n```\n\nIt will download and set the permissions to execute the script.\n\n## Usage\n\n```sh\n./get-elixir.sh \u003cpackage_type\u003e... [\u003coptions\u003e...]\n\n./get-elixir.sh (--source | --binaries)\n                [--unpack]\n                [--release \u003crelease_number\u003e]\n                [--dir \u003cdir\u003e]\n```\n\n```sh\nUsage: ./get-elixir.sh \u003cpackage_type\u003e... \u003coptions\u003e...\n\nPackage Types:\n  -b, --binaries       Download precompiled binaries\n  -s, --source         Download source code\n\nMain Options:\n  -u, --unpack         Unpacks the package(s) once downloaded\n  -r, --release        Elixir release number\n                       'latest' is the default option\n                       Examples: 'latest', '1.0.5', '1.0.0-rc2'\n  -d, --dir            Directory where you want to unpack Elixir.\n                       Default value: '${DIR}'\n\nSecondary Options:\n  -h, --help                 Prints help menu\n  -v, --version              Prints script version information\n      --update-script        Replace this script by downloading the latest release\n      --download-script      Download the latest release of this script to the\n                             specified location (use --keep-dir)\n      --list-releases        Lists all Elixir releases (final and pre-releases)\n      --list-final-releases  Lists final Elixir releases\n      --silent-download      Silent download (Hide status)\n      --verbose-unpack       Be verbose when unpacking files\n  -k, --keep-dir             Directory where you want to keep downloaded files\n  -y, --assume-yes           Assume 'Yes' to all confirmations, and do not prompt\n      --ask-overwrite        Confirmation needed before overwritting any file.\n                             This is superseeded by --assume-yes.\n                             It is not recommended to use this option, unless you\n                             have a specific reason to do it.\n```\n\n\n## Examples\n\n```sh\n# Download the source code for the latest relase\n./get-elixir.sh --source\n\n# Download and unpack the souce code for v1.0.5,\n# and unpack it in dir 'elixir-1.0.x'\n./get-elixir.sh --source --unpack --release 1.0.5 --dir elixir-1.0.x/\n\n# Download and unpack the latest in a differt directory\n./get-elixir.sh --source --unpack -d ./elixir-new\n\n# Download and unpack source code and precompiled binaries,\n# for v1.0.0-rc2\n./get-elixir.sh -s -b -u -r 1.0.0-rc2\n```\n\n## Examples – Advanced\n\nLets say you want to use it in conjunction with an Elixir version manager like [exevn](https://github.com/mururu/exenv).\n\nThe following commands will download every final version released (ie. not release candidates), unpack them and update `exenv`.\n\n_Please make sure you have followed the [exenv installation instructions](https://github.com/mururu/exenv#section_2)_\n\n```sh\nurl=\"https://github.com/elixir-lang/elixir-lang.github.com/raw/master/elixir.csv\"\nreleases=$(curl -sfL \"${url}\" | tail -n +2 | cut -d , -f1)\nfor release in $releases; do\n  ./get-elixir.sh --unpack --binaries --source --release \"${release}\" --dir \"~/.exenv/versions/${version}\"\ndone\nexenv rehash\n```\n\n## Additional Options\n\n* --help                 – Prints help menu\n* --version              – Prints script version information\n* --update-script        – Replace this script by downloading the latest release\n* --download-script      – Download the latest release of this script to the\n*                          specified location (use --keep-dir)\n* --list-releases        – Lists all Elixir releases (final and pre-releases)\n* --list-final-releases  – Lists final Elixir releases\n* --silent-download      – Silent download (Hide status)\n* --verbose-unpack       – Be verbose when unpacking files\n* --keep-dir             – Directory where you want to keep downloaded files\n* --assume-yes           – Assume 'Yes' to all confirmations, and do not prompt\n* --ask-overwrite        – Confirmation needed before overwritting any file.\n                           This is superseeded by --assume-yes.\n                           It is not recommended to use this option, unless you\n                           have a specific reason to do it.\n\n## More information\n\nPlease visit the [Elixir Website](http://elixir-lang.org/) for more information about the language itself, including for more information about [installing and compiling](http://elixir-lang.org/install.html) the it.\n\n## Contributing\n\nAt this very early stage, [ideas are more than ever welcome](https://github.com/eksperimental/get-elixir/issues/new).\n\nIf you think something is not working as expected, please [create a ticket](https://github.com/eksperimental/get-elixir/issues/new).\n\n[Pull requests](https://github.com/eksperimental/get-elixir/pulls) are appreciated.\n\nThe script is POSIX compliant, so it it expected to run in any UNIX like operating system.\n\n## Credits\n\nCreated by **[Eksperimental](https://github.com/eksperimental)**.\n\nI usually contribute to various Elixir projects, and this is another way to continue doing that.\n\n## License\n\nPlease read [LICENSE.txt](LICENSE.txt) file.\nThe works is unlicensed, meaning they are in the public domain.\n\nWith small pieces under the Apache License.","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feksperimental%2Fget-elixir","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feksperimental%2Fget-elixir","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feksperimental%2Fget-elixir/lists"}