{"id":22138236,"url":"https://github.com/andinus/crux","last_synced_at":"2025-03-24T10:26:11.807Z","repository":{"id":97564365,"uuid":"272450940","full_name":"andinus/crux","owner":"andinus","description":"Crux is a wallpaper manager written in Perl","archived":false,"fork":false,"pushed_at":"2020-11-10T08:03:26.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-29T15:50:43.353Z","etag":null,"topics":["perl","unsplash-source"],"latest_commit_sha":null,"homepage":"https://andinus.nand.sh/crux","language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andinus.png","metadata":{"files":{"readme":"README","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-06-15T13:48:27.000Z","updated_at":"2020-11-10T08:03:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"d0f439db-3b3e-4d38-9f13-2c51a49903ac","html_url":"https://github.com/andinus/crux","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andinus%2Fcrux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andinus%2Fcrux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andinus%2Fcrux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andinus%2Fcrux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andinus","download_url":"https://codeload.github.com/andinus/crux/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245251106,"owners_count":20584830,"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":["perl","unsplash-source"],"created_at":"2024-12-01T20:09:10.949Z","updated_at":"2025-03-24T10:26:11.788Z","avatar_url":"https://github.com/andinus.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"                               ━━━━━━━━━\n                                  CRUX\n\n                                Andinus\n                               ━━━━━━━━━\n\n\nTable of Contents\n─────────────────\n\n1. Documentation\n.. 1. Dependencies\n.. 2. Options\n..... 1. Crux\n..... 2. Unsplash Source\n.. 3. Cross-platform compatibility\n\n\nCrux is a wallpaper manager written in Perl, currently it supports\nfetching from Unsplash Source.\n\nI have previously written [Cetus] which supports /Bing Photo of the Day/\n\u0026 /NASA Astronomy Picture of the Day/. I plan to port all to features to\nCrux someday.\n\n*Tested on*:\n• OpenBSD 6.8\n  • Perl v5.30.3\n• OpenBSD 6.7\n  • Perl v5.30\n\n\n[Cetus] \u003chttps://andinus.nand.sh/cetus/\u003e\n\n\n1 Documentation\n═══════════════\n\n1.1 Dependencies\n────────────────\n\n  `feh' is required to set the background. Other DE/WMs \u0026 macOS can be\n  easily supported, if you want it then look at [Cetus]'s source or ping\n  me, I'll add it. Basically you just have to use `HTTP::Tiny' or\n  something to download the image \u0026 set it as background with DE/WM\n  specific tools.\n\n  The version numbers mentioned in cpanfile is not the minimum required\n  to run Crux, you can try lowering them. Might also make this work\n  without some dependencies, look at `lib/' and see what dependencies\n  you can remove.\n\n  For example, you can probably remove Carp \u0026 replace it with `die', not\n  the same thing but it should work.\n\n\n[Cetus] \u003chttps://andinus.nand.sh/cetus/\u003e\n\n\n1.2 Options\n───────────\n\n1.2.1 Crux\n╌╌╌╌╌╌╌╌╌╌\n\n◊ 1.2.1.1 debug\n\n  This will print additional information that'll help you to debug the\n  code. You might see multiple Unveil warnings on non-OpenBSD systems,\n  ignore them.\n\n  `$response' received from the api will also be printed.\n\n\n◊ 1.2.1.2 help\n\n  Prints quick help information listing all the options \u0026 a small\n  description.\n\n\n1.2.2 Unsplash Source\n╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌\n\n  Some options cannot be mixed, if you mix them then expect unexpected\n  results. It won't fail but can return photos that you didn't ask for.\n\n  For example, `--search nature --user test' - You might think this will\n  return an image from user \"test\" \u0026 related to \"nature\" but it won't!\n  It will either return an image related to \"nature\" or user \"test\"\n  because these options cannot be mixed. Look at [Unsplash Source] to\n  know more about the kind of queries that are valid.\n\n  I could write a check for invalid options but that would be\n  complicated so I didn't, it's easier to ignore invalid options \u0026 you\n  can always pass the `debug' option to see what query it constructed.\n\n  `--search nature --daily' - This is a valid set, I have written about\n  valid sets below, like under `daily' it's mentioned that you can pass\n  `search' option so read each description.\n\n\n[Unsplash Source] \u003chttps://source.unsplash.com\u003e\n\n◊ 1.2.2.1 resolution\n\n  Default is \"1920x1080\", it doesn't check the value passed so make sure\n  you pass the correct value. This can be passed with any option, it\n  will be ignored if not applicable.\n\n\n◊ 1.2.2.2 search\n\n  Search accepts multiple space seperated values. It's passed directly\n  to the api.\n\n  *Note*: The feature to get space seperated values is marked as\n  experimental in Getopt::Long so the behaviour can change in future,\n  worse even get removed. To guarantee backwards compatibility pass each\n  value by itself like `--search rocky --search mountain', this is\n  equivalent to `--search rocky mountain'.\n\n\n◊ 1.2.2.3 featured\n\n  Only Unsplash curated images are returned if you pass `featured', this\n  can be passed along with `search'.\n\n\n◊ 1.2.2.4 user\n\n  This will return a random photo from given user.\n\n\n◊ 1.2.2.5 userlikes\n\n  Only returns random photo from user's likes, this is a boolean \u0026 can\n  be passed with `user' option.\n\n\n◊ 1.2.2.6 collection\n\n  Returns photos from a collection.\n\n\n◊ 1.2.2.7 daily, weekly\n\n  This will return a set random daily or weekly image. `user' \u0026 `search'\n  option can be passed to narrow the selection.\n\n\n1.3 Cross-platform compatibility\n────────────────────────────────\n\n  Crux should run on all supported platforms, there is OpenBSD specific\n  code but it's ignored on other platforms. To know more about how this\n  works read this page: [Cross-platform compatibility].\n\n\n[Cross-platform compatibility]\n\u003chttps://andinus.nand.sh/projects/cross-platform-compatibility.html\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandinus%2Fcrux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandinus%2Fcrux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandinus%2Fcrux/lists"}