{"id":13505609,"url":"https://github.com/Phantop/appdwarf","last_synced_at":"2025-03-30T00:31:15.342Z","repository":{"id":39584540,"uuid":"367713176","full_name":"Phantop/appdwarf","owner":"Phantop","description":"Tool to compress and run programs using dwarfs","archived":false,"fork":false,"pushed_at":"2024-08-19T06:01:03.000Z","size":111,"stargazers_count":25,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-01T03:32:35.366Z","etag":null,"topics":["appimage","dwarfs","squashfs","zstandard","zstd"],"latest_commit_sha":null,"homepage":"https://phantop.github.io/appdwarf/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Phantop.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":"2021-05-15T19:21:55.000Z","updated_at":"2024-09-18T01:18:52.000Z","dependencies_parsed_at":"2023-02-15T04:32:01.023Z","dependency_job_id":"e521ba39-c2af-4c2f-8142-bf3594de99b9","html_url":"https://github.com/Phantop/appdwarf","commit_stats":null,"previous_names":[],"tags_count":32,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Phantop%2Fappdwarf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Phantop%2Fappdwarf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Phantop%2Fappdwarf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Phantop%2Fappdwarf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Phantop","download_url":"https://codeload.github.com/Phantop/appdwarf/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246262490,"owners_count":20749170,"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":["appimage","dwarfs","squashfs","zstandard","zstd"],"created_at":"2024-08-01T00:01:10.622Z","updated_at":"2025-03-30T00:31:10.326Z","avatar_url":"https://github.com/Phantop.png","language":"Shell","funding_links":[],"categories":["Resources"],"sub_categories":["Miscellaneous"],"readme":"[appdwarf](https://github.com/phantop/appdwarf)\n=======\nA tool to convert an AppDir or an existing [AppImage](https://appimage.org/) file,\neither as a local file or from a URL, into a highly compressed portable image using\n[dwarfs](https://github.com/mhx/dwarfs).\n\nThis is a small script and the bulk of the work is in the original `dwarfs` project,\nso all credit deserves to go there. This script has not been extensively tested so I\ncannot guarantee it will function without issue.\n\n## Requirements\n\nIn order to create the images, you will need:\n\n- [dwarfs](https://github.com/mhx/dwarfs), specifically `mkdwarfs`\n    - This may in turn require further dependencies, and specifically relies on the presence of FUSE for mounting images.\n    - `dwarfsck` and `dwarfsextract` also allow for converting existing dwarfs images and updating the header of existing appdwarfs\n- squashfs-tools for AppImage conversion\n- `zstd` for creating or running `zzexe` files\n\nIf you only wish to run an existing appdwarf, only `dwarfs` is needed in PATH.\n\n## How to create an appdwarf\n\n`appdwarf` can take both AppImage files and extracted AppDirs as input. If a file\nor folder is not found, `appdwarf` will also accept direct URLs to AppImages, links\nor names to GitHub repos with AppImages in their releases page, or names of programs\nthat meet the GitHub criteria on AppImageHub. Any files that are found but are not\nAppImages will be compressed using `zzexe`.\n\nThe apps folder contains other scripts for specific programs that will download all\nnecessary files and create a resulting appdwarf in the `bin` subfolder.\n\n## `zzexe`\n\n`zzexe` is a small tool similar to `gzexe` that instead uses zstd to compress single applications.\nI've included it because it has a similar goal to `appdwarf` on the whole, just on a smaller scale.\n\nI wrote it in part because I felt that `gzexe` was overly complicated, as I had been \nusing lightly modified version of it that replaces `gzip` with `zstd`, and to add a\ncouple additional features:\n\n- supports adding in a prefix command to the file using the `-p` option\n    - e.g. `zzexe -p wine some.exe` will generate a compressed file that will then run the exe with wine\n- automatically appends the extension of the source file to the temporary file\ncreated when ran since some programs care about that, such as an emulator only\nrunning games of an expected file extension.\n\n*As of June 2022, `zzexe` has been integrated into the main `appdwarf` script. \nI have implemented a heuristic that should automatically detect regular files and\nrun `zzexe` on them, however you can directly invoke it with the `-z` option.*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPhantop%2Fappdwarf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FPhantop%2Fappdwarf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPhantop%2Fappdwarf/lists"}