{"id":17383026,"url":"https://github.com/einfachirgendwer0815/devscripts","last_synced_at":"2025-08-03T01:33:04.740Z","repository":{"id":257809490,"uuid":"844108889","full_name":"einfachIrgendwer0815/devscripts","owner":"einfachIrgendwer0815","description":"Run path-specific (shell) scripts without the need to modify `PATH`.","archived":false,"fork":false,"pushed_at":"2024-10-04T14:21:47.000Z","size":103,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-14T10:45:49.082Z","etag":null,"topics":["rust","shell","shell-scripts","workflow-automation"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/einfachIrgendwer0815.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE-APACHE","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-08-18T12:13:31.000Z","updated_at":"2024-12-30T22:30:16.000Z","dependencies_parsed_at":"2024-10-04T14:20:40.955Z","dependency_job_id":"8793136d-20e4-4fcd-ad2a-825ea306b9b8","html_url":"https://github.com/einfachIrgendwer0815/devscripts","commit_stats":null,"previous_names":["einfachirgendwer0815/devscripts"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/einfachIrgendwer0815/devscripts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/einfachIrgendwer0815%2Fdevscripts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/einfachIrgendwer0815%2Fdevscripts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/einfachIrgendwer0815%2Fdevscripts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/einfachIrgendwer0815%2Fdevscripts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/einfachIrgendwer0815","download_url":"https://codeload.github.com/einfachIrgendwer0815/devscripts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/einfachIrgendwer0815%2Fdevscripts/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268484055,"owners_count":24257634,"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-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","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":["rust","shell","shell-scripts","workflow-automation"],"created_at":"2024-10-16T07:40:21.728Z","updated_at":"2025-08-03T01:33:04.462Z","avatar_url":"https://github.com/einfachIrgendwer0815.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Devscripts\n\n[![Release][version_img]][releases]\n[![License][license_img]](#license)\n[![crates.io][crate_img]][cratesio]\n[![docs.rs][docs_img]][docsrs]\n\nDevscripts is a linux command-line tool that makes it easy to run (shell) scripts\ndepending on the user or current working directory without ever having to\nmodify `PATH`. For more information, see [How to use](#how-to-use).\n\n### Table of Contents\n\n  - [Description](#devscripts)\n  - [Installation](#installation)\n  - [How to use](#how-to-use)\n  - [Configuration](#configuration)\n  - [Feature \u0026 Pull requests](#feature--pull-requests)\n  - [Development and Contributing](#development-and-contributing)\n  - [License](#license)\n\n\n## Installation\n\nDevscripts can be installed via `cargo install`, the installed executable will\nbe called `dev`:\n\nLatest stable version:\n```bash\ncargo install devscripts\n```\n\nLatest development version:\n```bash\ncargo install --git https://github.com/einfachIrgendwer0815/devscripts\n```\n\nThe installed executable is called `dev`:\n```bash\ndev --version\n# devscripts \u003cversion\u003e\n\ndev --help\n# \u003cdevscripts help page\u003e\n```\n\n\n## How to use\n\n### Adding scripts\n\nTo add a script that can be run via `devscripts`, follow these two steps:\n\n\u003e[!NOTE]\n\u003e These scripts do **not** have to be shell scripts. They could also be written\n\u003e in, for example, python. In fact, `devscripts` will run *any* executable\n\u003e that is available in one `devscripts` paths (listed below).\n\n#### Write the script\n\nWrite your shell script and place it in of these locations\n(ascending in priority):\n  - `/usr/share/devscripts`       (system-wide scripts)\n  - `/usr/local/share/devscripts` (system-wide scripts)\n  - `~/.local/share/devscripts`   (user-specific scripts)\n  - `\u003crepo-root\u003e/.devscripts\"`    (repository-local scripts, `\u003crepo-root\u003e` is the root of a **git** worktree)\n\nScripts with same names in higher-priority directories will override those in\nlower-priority directories.\nAdditionally, `devscripts` ignores file endings, so avoid having multiple\nscripts with the same name in the same directory. In such a case, `devscripts`\nwill use the script it encounters first. However, there are no guarantees which\none that will be.\n\n\u003e[!NOTE]\n\u003e System-wide, user-wide and repository-local script directories are\n\u003e configurable. See [Configuration](#configuration) for more information.\n\n#### Make it executable\n\nSet the executable bit using `chmod`:\n```bash\nchmod +x /path/to/your/script\n```\n\n\n### Running scripts\n\nTo run any script in one of [`devscripts` directories](#write-the-script), run:\n```bash\ndev run \u003cSCRIPT-NAME\u003e\n\n# say, there is a script at ~/.local/share/devscripts/hello-world\ndev run hello-world\n# will run that script\n```\n\nIf you run `dev` **anywhere inside a git worktree**, the above mentioned\nrepository-local script directory will be searched for scripts as well. These\nrepository-local scripts do *not* need to be known by git.\n\n\n## Configuration\n\nDevscripts can be configured by creating/editing the following files\n(ascending in priority):\n  - `/etc/devscripts/config.toml`          (global/system-wide configuration)\n  - `~/.config/devscripts/config.toml`     (user configuration)\n  - `\u003crepo-root\u003e/.devscripts/.config.toml` (repository-local configuration)\n\nHigher-priority configurations will override lower-priority ones.\n\nThe current default configuration looks like this:\n```toml\n[paths.scripts]\n# Directories for system-wide scripts.\nsystem = [\n    \"/usr/share/devscripts\",\n    \"/usr/local/share/devscripts\",\n]\n\n# Directories for user-specific scripts.\nuser = [\n    \"~/.local/share/devscripts\",\n]\n\n# Directories for repository-local scripts. These paths\n# are applied relative to a repository root.\nrepository = [\n    \"./.devscripts\"\n]\n\n```\n\n\n## Feature \u0026 Pull requests\n\nDevscripts is currently in a very early stage of development, so all feature\nrequests and PRs are very much appreciated.\n\n\n## Development and contributing\n\nThis project uses the [Conventional Commits] standard for commit messages with\nthe following additional rules:\n\n  - Prefer `!` over `BREAKING CHANGE:`\n  - Recommended commit types are:\n      - `build`   : Changes that affect the build system or dependencies\n      - `ci`      : Changes to CI configuration\n      - `docs`    : Documentation only changes\n      - `feat`    : New features or feature enhancements\n      - `fix`     : Bug fixes\n      - `refactor`: Changes that do not add a feature or fix a bug\n      - `perf`    : Changes that improve performance\n      - `style`   : Changes that keep the meaning of the code as-is (white-space changes, formatting, etc.)\n      - `test`    : Adding/changing tests\n      - `chore`   : repository-related stuff, version bumps, etc.\n\n\u003e[!NOTE]\n\u003e If you don't know how to use [Conventional Commits],\n\u003e don't worry. Just write your commit messages how you always do.\n\n\n## License\n\nCopyright 2024 einfachIrgendwer0815 and contributors.\n\nCopyrights in this project are retained by contributors.\nNo copyright assignment is required to contribute to this project.\n\nExcept as otherwise noted (below and/or in individual files),\nthis project is licensed under either the Apache License,\nVersion 2.0 (LICENSE-APACHE), or the MIT license (LICENSE-MIT), at your option.\n\n\n### Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall be\ndual licensed as above, without any additional terms or conditions.\n\n\n\u003c!-- links !--\u003e\n[Conventional Commits]: https://www.conventionalcommits.org/en/v1.0.0/\n\n[releases]: https://github.com/einfachIrgendwer0815/devscripts/releases\n[cratesio]: https://crates.io/crates/devscripts\n[docsrs]: https://docs.rs/devscripts\n\n[version_img]: https://img.shields.io/github/v/release/einfachIrgendwer0815/devscripts?color=8800AA\u0026style=flat-square\u0026include_prereleases\n[license_img]: https://img.shields.io/badge/license-MIT_OR_Apache--2.0-orange?style=flat-square\n[crate_img]: https://img.shields.io/crates/v/devscripts?style=flat-square\n[docs_img]: https://img.shields.io/docsrs/devscripts?style=flat-square\u0026color=blue\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feinfachirgendwer0815%2Fdevscripts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feinfachirgendwer0815%2Fdevscripts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feinfachirgendwer0815%2Fdevscripts/lists"}