gendesk(1)
π
gendesk β the gendesk(1) glow-up
okay so bestie, listen. gendesk is that girl who makes .desktop files for you, straight from your command-line arguments (or from a PKGBUILD file, iykyk). she's lowkey iconic and she does NOT miss. β¨
β¨ SYNOPSIS β¨
gendesk [flags or PKGBUILD file]
like, that's it. flags or a PKGBUILD. pick your fighter. π
πΈ DESCRIPTION πΈ
so here's the tea β these are the PKGBUILD variables she supports, and yes, every single one gets included in the generated file:
_name_genericname_comment_mimetype_exec_categories
gendesk will fr fr try to find the correct icon from the Open Icon Library, and if that doesn't work out she falls back on the default icon. no cap. π¦
and the correct application category? she'll guess it if you didn't provide one. main character energy honestly.
she also reads these environment variables, bestie:
pkgnamepkgdesc
π§ EXAMPLES π§
gendesk
gendesk
exits with error code 1 if ../PKGBUILD isn't found and pkgname isn't given and $pkgname isn't defined. she'll try to use both $pkgname and $pkgdesc. π
gendesk PKGBUILD
gendesk PKGBUILD
looks for a PKGBUILD in the current directory and generates a .desktop file. slay.
gendesk --pkgname test --pkgdesc test
gendesk --pkgname test --pkgdesc test
generates a .desktop file for the name "test" with the description "test". simple, clean, ate. π
gendesk /home/user/archpackages/mypackage/PKGBUILD
gendesk /home/user/archpackages/mypackage/PKGBUILD
generates a .desktop file from the given PKGBUILD. periodt.
β οΈ a package name must be given β either by specifying aPKGBUILDfile, using--pkgname, or by defining a$pkgnameenvironment variable. no name, no file, that's the rule π«Ά
π‘ also note: a"-bin","-git","-hg"or"-svn"suffix in a package name will be ignored, if present. she sees it, she just doesn't care. π
π₯ OPTIONS π₯
--versionβ displays the current version information-hor--helpβ displays brief usage information-nβ don't attempt to download an icon, if missing--nocolorβ don't use colored text-qβ quiet; don't output text-fβ force; overwrite files if needed-wmβ generate a small desktop file for launching a window manager instead--pkgnameβ use this package name for the application (ie.emacs)--pkgdescβ use this package description for describing the application and try to find a suitable category--nameβ use this name for the desktop shortcut (ie.Emacs)--genericnameβ use this generic name for the desktop shortcut (ie.Text Editor)--commentβ use this comment for the desktop shortcut (ie.Use this to edit files)--execβ specify an alternative executable, (ie./usr/bin/emacs)--pathβ specify a starting path for the program, (ie./usr/share/kotlin)--iconβ specify an icon filename (defaults to thepkgname)--categoriesβ specify categories (ie.Utility;TextEditor;)--terminalβ specify if the application should be run in a terminal (default isfalse)--mimetypesβ specify mime-types--startupnotifyβ specify if a desktop notification should occur when the application starts (default isfalse)--customβ specify an extra line (or several lines) to append at the end-oor--outputβ specify the output.desktopfilename. For splitPKGBUILDs, pass a comma-separated list with one filename per package; mismatched counts are an error. Defaults toPKGNAME.desktop.
π quick note on-o/--output: the comma-separated list is one filename per package, and if the counts don't match up? that's an error, bestie. she's not doing that math for you.
π WHY π
her whole goal is to make it easy for package maintainers to add menu entries for the applications they're trying to package β without including anything that hasn't been supplied by upstream in the package itself. respectful, clean, does what it says. π
π BUGS π
only unknown bugs so far. π bugs can be reported at https://github.com/xyproto/gendesk/issues.
β VERSION β
1.0.15
π AUTHOR π
gendesk was written by Alexander F. RΓΈdseth <xyproto@archlinux.org> π«Ά
and that's the whole page, bestie β gendesk(1), dated 29 May 2026, page gendesk(1). go forth and generate some .desktop files, mwah ππΈ
π¦ where this page comes from
- arch rolling: gendesk 1.0.15-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms