{"id":13897601,"url":"https://github.com/leftwm/leftwm-theme","last_synced_at":"2025-04-06T20:11:14.829Z","repository":{"id":38391519,"uuid":"246015582","full_name":"leftwm/leftwm-theme","owner":"leftwm","description":"A tool to help manage themes for LeftWM","archived":false,"fork":false,"pushed_at":"2024-03-05T01:21:18.000Z","size":232,"stargazers_count":124,"open_issues_count":15,"forks_count":10,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-30T18:09:25.275Z","etag":null,"topics":["hacktoberfest"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leftwm.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":"2020-03-09T11:17:33.000Z","updated_at":"2025-02-05T22:31:52.000Z","dependencies_parsed_at":"2023-12-28T22:27:00.501Z","dependency_job_id":"64718ab5-14aa-45be-9456-64f725ef31d4","html_url":"https://github.com/leftwm/leftwm-theme","commit_stats":{"total_commits":84,"total_committers":8,"mean_commits":10.5,"dds":"0.29761904761904767","last_synced_commit":"b394824ff874b269a90c29e2d45b0cacc4d209f5"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leftwm%2Fleftwm-theme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leftwm%2Fleftwm-theme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leftwm%2Fleftwm-theme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leftwm%2Fleftwm-theme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leftwm","download_url":"https://codeload.github.com/leftwm/leftwm-theme/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247543591,"owners_count":20955865,"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":["hacktoberfest"],"created_at":"2024-08-06T18:03:44.143Z","updated_at":"2025-04-06T20:11:14.774Z","avatar_url":"https://github.com/leftwm.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003e\u003ccode\u003eleftwm-theme\u003c/code\u003e\u003c/h1\u003e\n\n  \u003cp\u003e\n    \u003cstrong\u003eA theme manager for\n    \u003ca href=\"https://github.com/leftwm/leftwm/\"\u003eLeftWM\u003c/a\u003e\u003c/strong\u003e\n  \u003c/p\u003e\n  \u003cp\u003e\n    \u003ca href=\"https://github.com/leftwm/leftwm-theme/actions?query=workflow%3ACI\"\u003e\u003cimg src=\"https://github.com/leftwm/leftwm-theme/workflows/CI/badge.svg\" alt=\"build status\" /\u003e\u003c/a\u003e\n    \u003c!--\u003cimg src=\"https://img.shields.io/badge/rustc-1.37+-green.svg\" alt=\"min rustc\" /\u003e--\u003e\n    \u003c!--\u003ca href=\"https://docs.rs/leftwm/0.2.6/leftwm/\"\u003e\u003cimg src=\"https://docs.rs/leftwm-theme/badge.svg\" alt=\"Documentation\" /\u003e\u003c/a\u003e--\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\n\n## Installation\nCurrently, LeftWM-theme is only available by Git and AUR. \n\nTo install by AUR (Arch-based distributions only), use package `leftwm-theme-git`.\n\nTo install manually, clone this repository:\n```bash\ngit clone https://github.com/leftwm/leftwm-theme\n```\nThen enter the repository: \n```\ncd leftwm-theme\n```\nThen build with Cargo:\n```bash\ncargo build --release\n```\nYou can then install LeftWM-theme:\n```bash\n# for production installations (does not update when recompiled)\nsudo install -s -Dm755 ./target/release/leftwm-theme -t /usr/bin\n#-- or --\n# for developer installations (updates when recompiled)\nsudo ln -s \"$(pwd)\"/target/release/leftwm-theme /usr/bin/leftwm-theme\n```\n\n## Usage\n### First use\nThe first time you start up LeftWM-theme, it will generate a file called `themes.toml` in your `~/.config/leftwm/` folder from the themes located in the [Community Themes](https://github.com/leftwm/leftwm-community-themes) repo. To do so, run:\n```bash\nleftwm-theme update\n```\n\u003c!---\n[](To populate your local repository with your previously installed themes, use the following:\n```bash\nleftwm-theme autofind\n```\n**Note: as of 02/26/2021 autofind is not yet fully implemented**)\n --\u003e\n### Install a theme\nLeftWM-theme differentiates between _installing_ a theme and _applying_ a theme. Installing a theme is akin to downloading it; behind the scenes LeftWM-theme runs `git clone {theme}`. No dependency checks are performed at installation time, but instead at application time. To install a theme, for example the fabulous Orange Forest theme, run (quotation marks needed for names with spaces):\n```bash\nleftwm-theme install \"Orange Forest\"\n```\n**Note: LeftWM-theme is CaSe SeNsItIvE, so be careful!**\n\n### Apply a theme\nLeftWM-theme will check for dependencies, LeftWM-version, and the like during the application process.\nNow that you've installed Orange Forest (or whatever theme you like), to set it as your current theme, run:\n```bash\nleftwm-theme apply \"Orange Forest\"\n```\n**Note: LeftWM should automatically restart with the new theme**\n\n### List installed themes\nTo list all installed themes that LeftWM-theme knows about, run:\n```bash\nleftwm-theme list\n```\n\n### See current theme\nAlthough multiple commands list the installed theme, using the following can provide additional context:\n```bash\nleftwm-theme status\n```\n\n### Update theme list\nTo update your copy of the themes, use the following:\n```bash\nleftwm-theme update\n```\n**Note: this does not also update the themes, just the repository listings! To update themes see upgrade**\n\n### Updating themes\nTo update themes, use the following:\n```bash\nleftwm-theme upgrade\n```\n**Note: this command also updates repositories**\n\n### Adding a repository\nLeftwm-theme allows multiple `known.toml` repositories to be used. To add another repository, it must have a `known.toml` file which you can add to `themes.toml` in your LeftWM config folder.   \n\n**Note: It is wise to backup your `themes.toml` file PRIOR to adding a new repostitory**\n\nTo add a repository, add the following to the BOTTOM of your `themes.toml` file, located at `~/.config/leftwm/themes.toml`:\n```toml\n# To add additional repos, you MUST specify a url, a UNIQUE ALPHANUMERIC name, and an empty array of themes\n# e.g.:\n# [[repos]]\n# url = \"https://raw.githubusercontant.com/mautamu/leftwm-community-themes/master/known.toml\"\n# name = \"mautamu\"\n# themes = []\n[[repos]]\nurl = \"\"\nname = \"\"\nthemes = []\n```\n**Note: be sure that the url points to a file called known.toml, such as https://raw.githubusercontent.com/leftwm/leftwm-community-themes/master/known.toml**\n\nThen fill in the url with the url of that repo and add a descriptive name that consists of only letters and numbers [A-z0-9]. To load themes from the repository, use the following:\n```bash\nleftwm-theme -vvv update\n``` \n**Note: the -vvv flag is not necessary, but will provide additional output in case your new repo goes wrong**\n## Troubleshooting\n### Themes.toml is nearly empty, and/or LeftWM won't update my themes:\nTry removing themes.toml and running the `update` command, add any repositories that were removed, and then run `autofind` to repopulate your installed themes.\n### I can't get a theme to install\nDouble check your name. Although `update` may say `mautam/theme`, you just need to type `theme`, not `mautam/theme`. Pay attention to capital letters and spelling.\n\n\n## Roadmap:\n### Version 0.1.0\n- [x] Allow users to install themes\n- [x] Allow users to remove themes\n- [x] Allow a theme to be applied as current\n\t- [x] Check dependencies for a theme\n\t- [x] Allow dependency override with -n\n  \t- [ ] Offer suggestions for dependency installation\n\t- [ ] Check whether a theme's `theme.toml` file is valid\n- [x] Allow themes to specify compatible LeftWM versions\n- [ ] Find themes located in ~/.config/leftwm/themes/ automatically\n- [x] Allow users to add more theme repositories\n\t- [x] Allow users to choose from which repository to install themes\n- [x] Allow users to create new themes \n\t- [x] Provide basic themes for users to fork into their own\n\t- [ ] Generate appropriate `known.toml` pull requests and `theme.toml` files\n\t- [ ] Make sure themes don't include `/` or other OS-specific marks. **Partially complete**\n- [x] Allow users to update their repository theme lists with `update` as in apt-get form\n- [x] Allow users to update their themes with `upgrade` command, as in apt-get form\n\t- [x] Allow users to skip repo update\n\t- [ ] Perform dependency checks prior to updating the current theme\n- [x] Allow users to search for themes by name\n### Version 0.2.0\n- [ ] Extend `theme.toml` to allow for up/down specifications within `theme.toml`\n- [ ] Integrate `themes.toml` and `known.toml` better\n- [ ] Reduce the number of dependencies\n\t- [ ] Replace Reqwest with a crate with fewer dependencies\n\t- [ ] Examine other areas of overlapping features\n- [ ] Provision for name aliases for dependencies in different distros\n- [ ] Improve documentation\n- [ ] Better, more consistent error handling\n- [x] Remove `nightly` Rust requirement by replacing `?` on Options\n- [ ] Add a testing suite\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleftwm%2Fleftwm-theme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleftwm%2Fleftwm-theme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleftwm%2Fleftwm-theme/lists"}