{"id":19295429,"url":"https://github.com/lionirdeadman/fp-build","last_synced_at":"2025-07-10T06:10:10.791Z","repository":{"id":138644058,"uuid":"373021019","full_name":"lionirdeadman/fp-build","owner":"lionirdeadman","description":"Script to make flatpak packaging easier.","archived":false,"fork":false,"pushed_at":"2023-04-10T06:24:01.000Z","size":17,"stargazers_count":12,"open_issues_count":7,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-22T08:43:03.934Z","etag":null,"topics":["flathub","flatpak","flatpak-builder"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lionirdeadman.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,"zenodo":null}},"created_at":"2021-06-02T02:52:25.000Z","updated_at":"2024-09-20T10:26:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"e272ac64-ca3e-4aeb-aba1-f0d3e82ccc62","html_url":"https://github.com/lionirdeadman/fp-build","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lionirdeadman/fp-build","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lionirdeadman%2Ffp-build","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lionirdeadman%2Ffp-build/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lionirdeadman%2Ffp-build/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lionirdeadman%2Ffp-build/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lionirdeadman","download_url":"https://codeload.github.com/lionirdeadman/fp-build/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lionirdeadman%2Ffp-build/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264538531,"owners_count":23624434,"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":["flathub","flatpak","flatpak-builder"],"created_at":"2024-11-09T22:43:25.566Z","updated_at":"2025-07-10T06:10:10.758Z","avatar_url":"https://github.com/lionirdeadman.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# fp-build\n\nThis script tries to reproduce as much as possible of the flathub checks and flags used in flatpak-builder as\nto avoid pushing and then realizing that something was wrong.\n\nIt makes the assumption that the one and only argument given will be the properly formatted `com.my.App` with\nthe appropriate extension (json, yaml, yml).\n\nExample\n```sh\nfp-build com.discordapp.Discord.json\n```\n\n## What does it do?\n\nThere are 7 steps :\n\n1) Checks that there is an argument pointing to an existing file\n2) Checks that XDG_CACHE_HOME is set and if not, assumes $HOME/.cache\n3) git submodule update --init to not forget about shared-modules\n4) flatpak-builder download-only and saves those into $XDG_CACHE_HOME/flatpak-builder\n5) flatpak-builder builds and saves the builddir is $XDG_CACHE_HOME/flatpak-builder-builddir/com.myApp/\n6) flatpak-builder install and saves the repo is $XDG_CACHE_HOME/flatpak-builder-repo/com.my.App/\n7) Various checks like the appid in the desktop file is correct, checks that a 128x128 icon is present and that the appstream data is correct\n\n## Why are things saved in $XDG_CACHE_HOME?\n\nIt seemed to be most appropriate for testing purposes and it should be avoided by your backup solution most likely.\n\n## Why is there a seperate download step?\n\nI wanted all the downloads to be in the same place to have some level of deduplication.\n\n## Why is it a shell script?\n\nIt evolved from my zsh alias as I tried to make it catch more problems and here we are.\n\n# License\n\nI chose LGPLv2.1 because it seemed to me to be the most compatible *GPL license and I wanted to keep it free software so I didn't choose permissive. I'm willing to change that if needed for a good cause.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flionirdeadman%2Ffp-build","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flionirdeadman%2Ffp-build","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flionirdeadman%2Ffp-build/lists"}