Alternative macOS icon?

I've been meaning to reply to this for a little while but just haven't got around to it.
This only really addresses the square/squircle etc. icons as I'm not a fan of the notebook style ones, not that I don't think they look great but the majority of my icons that aren't part of the overall system theme are of the same uniform size and shape.

macOS

I feel this is a good improvement, not that there seems to much in the way of cohesiveness, most of the mac icons seem a little random, even in regards to Apple's own icons. I rarely ever use macOS so don't have much to add here but I do like it.

GNOME/Linux

These GNOME changes I'm not so sure about if they are part of a generic "Linux" change as opposed to just for GNOME environments from what I can tell.
I use Cinnamon and to be honest, neither the current nor new icons look particularly well suited. The current icon is slightly too big and doesn't quite match (different/no shadow) where the new one is more appropriate in size but is the wrong shape, Cinnamon seems to use something more akin to the macOS squircle (which you can see in the second pic, I've not been able to find the guidelines to Cinnamon icons so far) and your macOS icon actually seems to fit in better than the Linux or new GNOME one.

New GNOME icon on Cinnamon panel (current icon far right):
image

New macOS icon on Cinnamon panel (current icon far right):
image

I'm aware that I can always assign or make/modify my own icon but I have a feeling the the updater script for Linux destroys the default menu item each time it runs for an update which means either keeping a duplicate version of the shortcut around just for the new icon or having to modify it each time.

1 Like

Cool! Thank you for this information!

Yesterday I actually did some more digging and came across the KDE icon guidelines, as well, and they seem largely equivalent to the GNOME icon guidelines (more information below).

With regard to Cinnamon's different icon theme, both KDE and GNOME use the freedesktop Icon Theme Specification, which allows applications' default icons to be overridden at the system level:

https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html

I don't know exactly what is necessary for implementing or enabling system icon theming for Joplin (if it doesn't just work by default), but it should be possible to modify your system icon theme to include an override specifically for Joplin. Additionally, you could request that it be added to the two default icon themes that come with Linux Mint, X and Y.

It's my impression that, while the install script does specifically replace the existing joplin.desktop file, this behavior could be modified and also would not be present if Joplin were distributed through apt, Snapcraft, or Flatpak.

EDIT: I just checked, and the version of Joplin I have installed on my Ubuntu is from Snap, and the update mechanism is maintained by a third party. (There is actually more than one third-party Snap, because reasons.) The Snap uses its own copy of the icon and it own version of joplin.desktop, presumably due to permissions issues. It would be nice if Joplin had official Snap and Flatpak distributions.

As I mentioned above, KDE's icon design guidelines are largely equivalent to GNOME's, with the main difference being that they strongly encourage otherwise flat icons to use a beveled bottom edge (which you can see in the calendar and terminal icons in my screenshot). They also encourage subtle gradients and foreground shadows, though the exact type of shadow is somewhat peculiar.

I could update the roundrect version of the icon to match the additional KDE recommendations, but in the case of the notebook version it's probably better without the foreground shadow.

Looking at the GNOME guidelines again, the sharp 45º shadow doesn't feature in any of them, so it may be preferable to do without it for the roundrect icon, too.

So would the better alternative be to have different icons within LinuxIcons to account for the more popular (standard) icon themes (GNOME, KDE, Cinnamon etc.) and for the install script to be modified to select the 'correct' icon for that desktop environment with a default icon as a fallback?

Yes, having different versions of joplin.desktop or otherwise installing different icons based on distribution would be one workaround. It would probably be best both approaches were accounted for: the install script choosing a different icon based on distro and distros with relatively unique icon themes specifying a preferred icon for Joplin.

See this line here or this section here where the install script could be adapted to account for different default icon themes. (The install script already checks for the distro in this line here, so it shouldn't be terribly difficult for it to check for the distro when downloading the icon.)

It may be useful to check if you're even using the default icon theme on Linux Mint, though. This tutorial discusses changing the icon theme, but you can also use it to see what theme is currently selected:

As it is, the icons in the Joplin repository seem extremely disorganized, so it's hard to tell what's currently in use and what's not. (I feel like a README.md in the Assets folder could help in this regard.)

And there are yet more instances where things are slightly "off", like the high-resolution favicon for this forum having hardcoded corner radii when both Safari and Firefox use manual clipping. So you get things like this (from the Firefox "New Tab" screen):

Or this (from the Safari "New Tab" screen):

Screen Shot 2021-01-14 at 11.19.50 AM

And the incongruous color icon in the GNOME tray (when Joplin does, in fact, include a monochrome icon that it just doesn't use here):

GNOME tray

While it does use a monochrome icon in the macOS tray (which appears to be this icon? it's not clear):

macOS Tray

So, yes, there is a lot of potential finessing to be done with all of the different use cases of the icons included with Joplin.

FYI, I did some digging, and it seems like you're using the "Mint Y" icon theme based on the discord icon you have:

discord.svg

So one approach that could be taken in the case of Linux Mint would be for Joplin to use the freedesktop Icon Theme Specification and for a compatible icon to be added to the Mint Y icon theme. Similarly, a GNOME-style icon could be added to the Adwaita icon theme. Using a GNOME/KDE-style icon as the default seems plausibly safe, but I can't back that up with, say, market-share data.

EDIT: GNOME does not seem to distribute third-party application icons in its icon theme. Neither does KDE. So, yes, having the default icon fit with both GNOME and KDE seems safest, while submitting specialized icons to distro-specific icon themes could help Joplin fit in on those platforms.

Hi @Daeraxa—I just uploaded a version of the Joplin icon to the mint-y-icons repository. The design is literally recolored from the Discord icon, so the detailing should be exactly the same as the other icons in mint-y-icons. You can see my pull request here.

Here's the raw file:
joplin.svg

My understanding is that the .desktop file for Joplin will need to be updated to be theme-compatible. I'm not quite sure what's involved, though, so I in my pull request I asked if someone could explain it to me.

Thoughts?

(If you could add a comment in response, that would be nice, since I don't think I can add more than three comments in a row to a thread. Thanks!)

1 Like

That is awesome, I'll shove it onto my system when I get a chance.
From what I can see of that mint-y repo you need to submit a version for the various sizes (in mint-y-icons/usr/share/icons/Mint-Y/apps at master · linuxmint/mint-y-icons · GitHub) - unless there is a generator script or something is run to create those automatically in the directory.
I'm not entirely sure but I guess that because the file name is 'joplin.svg' and therefore 'joplin.png' for the actual icons then you don't need to add a manual symbolic link to the repo, it would handle it natively.

Yeah, I don't know how the repository generates the individual icons. My guess is that there's some sort of script that generates the PNG files from the SVG files? I'm sure one of the maintainers can figure it out, though.

Hi @Daeraxa ~ @james-carroll figured out how to switch over to a symbolic reference for the Joplin icon on the snap distribution, and the official distribution seems to be already set up that way, so once the maintainers at the mint-y-icons repository accept the pull request there (and, if you're using the snap distribution, once Joplin 1.7 rolls out), you should be all set with the mint-y-style Joplin icon!

Unfortunately I've had to revert the symbolic name for the snap version, due to the existence of particularly old versions of snapd that are still in use in various distributions, there'd be a lot of users who would simply see the Joplin icon disappear entirely. I can re-evaluate it in the future as distributions upgrade overtime but presently it'd do more harm than good.

It is worth mentioning that you can still create your own .desktop file and add it to ~/.local/share/applications, though this obviously wouldn't be set up by default. And also the official Joplin distribution does appear to use a symbolic icon name, so it should still work with mint-y-icons.