GithubHelp home page GithubHelp logo

Comments (11)

Protektor-Desura avatar Protektor-Desura commented on June 3, 2024

I believe there is a FHS standard for adding shortcuts/icons for Linux.

from desurium.

ssokolow avatar ssokolow commented on June 3, 2024

There is a standard and it's elegantly simple to the point of almost being ridiculous. Just create a .desktop file like this example one:

[Desktop Entry]
Type=Application

Name=FooGame
Comment=A game of foo
Comment[fr]=Un jeu de foo

TryExec=/home/username/opt/desura/common/foo-game/value_of_iteminfo.installcheck
Exec=/home/username/opt/desura/common/foo-game/desura_launch_Play.sh
Icon=/home/username/opt/desura/common/foo-game/absolute_path_value_of_iteminfo.icon

Categories=Game;BoardGame;Java;

...and then use one or both of these commands to install it:

xdg-desktop-icon install YourIcon.desktop
xdg-desktop-menu install YourIcon.desktop

The man pages for both of those commands give you a concise and helpful introduction to the .desktop file spec, but it's not necessarily up-to-date on what is required and optional, so I strongly suggest spending the 15 minutes to read the actual spec itself at http://standards.freedesktop.org/desktop-entry-spec/latest/

If nothing else, you'll want to go above and beyond the man pages by mapping any category information Desura can provide to the Categories field so Desura doesn't annoy people who are used to having their launcher menus automatically categorize icons for them. (Or, at the very least, set Categories=Game;)

The registered list of valid categories is at http://standards.freedesktop.org/menu-spec/latest/apa.html

from desurium.

Jookia avatar Jookia commented on June 3, 2024

I'm a very big fan of the standards there. In fact, I implemented the XDG directory standard.

from desurium.

ssokolow avatar ssokolow commented on June 3, 2024

Agreed.

I'd actually be trying to convert my little Python script for setting icons on STATUS_LINK entries into some C++/JS patch to use XDG menus to resolve commands to icons but I haven't yet been able to make time to track down why the Desurium build instructions fail on my Lubuntu Oneiric desktop.

from desurium.

Jookia avatar Jookia commented on June 3, 2024

ssokolow, i highly recommend you check out karolherbst's fork, it uses CMake.

from desurium.

ssokolow avatar ssokolow commented on June 3, 2024

Thanks. I actually would normally be keeping an eye on the network view, but I've been overworked lately and forgot. I'll give it a try as soon as I can make time.

from desurium.

karolherbst avatar karolherbst commented on June 3, 2024

look here:
karolherbst/Desurium@master...bug29

any suggestions?

I think about to move the whole desktop creation stuff into ItemInfo

from desurium.

karolherbst avatar karolherbst commented on June 3, 2024

we should add a functionality to add games to the application menu on Linux and on Windows (if it isn't there already)

from desurium.

ssokolow avatar ssokolow commented on June 3, 2024

In Windows, that would be partially covered by issue #138. I'm unfamiliar with the ins and outs of jumplists, though, so I don't know how much it would cover.

from desurium.

karolherbst avatar karolherbst commented on June 3, 2024

yes I will add this to bug #138, so I can close this for the Linux part later

from desurium.

karolherbst avatar karolherbst commented on June 3, 2024

fixed since fd3f6d4

from desurium.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.