desktop-get is a lightweight CLI tool and curated repository of ready-to-use Freedesktop .desktop files to make Linux application integration easier.
This monorepo contains both the CLI client and the shared library of desktop files.
desktop-get/
├── CLI/ # The Bash-based CLI
│ ├── main.sh # Entry point for the CLI
│ └── utils/ # utility scripts (e.g. logger)
│
├── desktop-files/ # Collection of .desktop files and metadata
│ ├── apps/ # Applications, organized by name
│ │ └── example/ # Example app
│ │ ├── example.desktop
│ │ ├── example.metainfo.xml
│ │ └── example.svg
│ ├── index.yml # Registry index of all apps
│ └── README.md # Contribution guide for desktop files
│
├── CONTRIBUTING.md # Guidelines for new submissions
├── LICENSE
└── README.md # This file
The CLI makes it easy to fetch and install .desktop files from this repository.
cd CLI
./main.sh install discordBy default, the .desktop file will be installed to:
~/.local/share/applications- -v, --verbose — enable debug logging
- -o, --output — specify a custom output directory
Examples:
./main.sh -v install discord
./main.sh install discord -o /tmp/appsAll desktop files live in desktop-files/ Each app has its own folder with:
.desktopfile (primary launcher).metainfo.xml(AppStream metadata).svg(icon, optional)
The registry of available apps is maintained in index.yml.
We welcome contributions! 🎉 see CONTRIBUTING.md for more info.
This project is licensed under the MIT License.