Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

some issue with applets and themes #5926

Closed
xeon-zolt opened this issue Nov 10, 2016 · 27 comments
Closed

some issue with applets and themes #5926

xeon-zolt opened this issue Nov 10, 2016 · 27 comments

Comments

@xeon-zolt
Copy link

cinna

it goes on for infinite time period and then it shows some error i dont know why but i am facing this issue from cinnamon 2.2

@JosephMcc
Copy link
Contributor

Cinnamon 2.2? Are you sure about that?

Try running cinnamon-settings applets from a terminal and see what the output is.

@xeon-zolt
Copy link
Author

Nothing

@ben2talk
Copy link

ben2talk commented Dec 17, 2016

I have seen this in the past. It was an annoying feature until I realised that the applets are really 95% flash in the pan gimmicks.

There did seem to be an issue with internet connection via the app vs opening a browser... which appears occasionally, though it's fine today.

@deivid-rodriguez
Copy link

This issue is quite old, but I'm experiencing the same thing... 😞 Any help?

appletsissue

This is on LinuxMint 19, actually I think this started happening after the upgrade to LinuxMint 19, previously it worked fine.

$ cinnamon --version
Cinnamon 3.8.8

@collinss
Copy link
Member

collinss commented Aug 7, 2018

@deivid-rodriguez It looks like you're getting a request timeout. This is there for when there is a connection issue with the server so that the ui doesn't hang indefinitely. The issue here is not with Cinnamon itself, but seems like a network problem. It's hard to say what the cause could be without doing some troubleshooting, but it could be something as simple as a server being temporarily down.

There have been many changes to the code since this issue was originally opened so I'm going to go ahead and close this. If anyone is experiencing any issues with this, feel free to open a new issue, as it's probably not exactly the same issue.

@collinss collinss closed this as completed Aug 7, 2018
@deivid-rodriguez
Copy link

Thanks @collinss.

I investigated a bit. The URL is this one: https://cinnamon-spices.linuxmint.com/json/applets.json. When downloading it, the following call to read

https://github.com/linuxmint/Cinnamon/blob/34043b7d9c09c42acd6d393d7daebd8980ea7cc3/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py#L391

hangs on the last chunk.

No idea why.

@deivid-rodriguez
Copy link

deivid-rodriguez commented Aug 7, 2018

This is so weird...

I put a debugger statement in the relevant code. It hangs when reading over the 65146-th byte of the request 🤔

(Pdb) l
386  	        try:
387  	            with urlopen(url, timeout=15) as urlobj:
388  	                assert urlobj.getcode() == 200
389  	
390  	                import pdb; pdb.set_trace()
391  ->	                totalSize = int(urlobj.info()['content-length'])
392  	
393  	                while not self._is_aborted():
394  	                    data = urlobj.read(blockSize)
395  	                    count += 1
396  	                    if not data:

(Pdb) urlopen(url, timeout=3).read(65146)

b'{"screen-inhibit@mtwebster": {"description": "Click to inhibit the screensaver, click again to remove inhibition", "icon": "/files/applets/screen-inhibit@mtwebster.png", "created": 1335714248, "screenshot": "/git/applets/screen-inhibit@mtwebster/screenshot.png", "name": "Screensaver Inhibitor", "score": 1, "author_user": "none", "file": "/files/applets/screen-inhibit@mtwebster.zip", "spices-id": 59, "author_id": "0", "last_edited": 1506905833, "uuid": "screen-inhibit@mtwebster"}, "location-detection@heimdall": {"description": "Shows the geographic location of your public IP and country-flag.", "icon": "/files/applets/location-detection@heimdall.png", "created": 1408356497, "screenshot": "/git/applets/location-detection@heimdall/screenshot.png", "name": "Location Detection + Flags", "score": 2, "author_user": "none", "file": "/files/applets/location-detection@heimdall.zip", "spices-id": 196, "author_id": "0", "last_edited": 1504832706, "uuid": "location-detection@heimdall"}, "turn-off-monitor@zablotski": {"description": "Click on the applet to turn off monitor", "icon": "/files/applets/turn-off-monitor@zablotski.png", "created": 1488685204, "screenshot": "/git/applets/turn-off-monitor@zablotski/screenshot.png", "name": "Turn Off Monitor", "score": 1, "author_user": "zablotski", "file": "/files/applets/turn-off-monitor@zablotski.zip", "spices-id": 284, "author_id": "0", "last_edited": 1507404424, "uuid": "turn-off-monitor@zablotski"}, "graphicsCenter@scollins": {"description": "Provides an easy and fast resource for all your picture needs", "icon": "/files/applets/graphicsCenter@scollins.png", "created": 1374539281, "screenshot": "/git/applets/graphicsCenter@scollins/screenshot.png", "name": "Graphics Center", "score": 4, "author_user": "collinss", "file": "/files/applets/graphicsCenter@scollins.zip", "spices-id": 148, "author_id": "0", "last_edited": 1502221207, "uuid": "graphicsCenter@scollins"}, "system-monitor@pixunil": {"description": "Display CPU, Memory and Swap usage, Disk and Network rates as text and graphs", "icon": "/files/applets/system-monitor@pixunil.png", "created": 1410285739, "screenshot": "/git/applets/system-monitor@pixunil/screenshot.png", "name": "System monitor with graphs", "score": 9, "author_user": "pixunil", "file": "/files/applets/system-monitor@pixunil.zip", "spices-id": 198, "author_id": "0", "last_edited": 1507154222, "uuid": "system-monitor@pixunil"}, "stevedore@centurix": {"description": "Docker controlling applet.", "icon": "/files/applets/stevedore@centurix.png", "created": 1498406706, "screenshot": "/git/applets/stevedore@centurix/screenshot.png", "name": "Stevedor - Docker controller", "score": 1, "author_user": "centurix", "file": "/files/applets/stevedore@centurix.zip", "spices-id": 294, "author_id": "0", "last_edited": 1521657991, "uuid": "stevedore@centurix"}, "windows-quick-list-with-close-button@koutch": {"description": "Quickly access windows from all workspaces with close buttons and settings", "icon": "/files/applets/windows-quick-list-with-close-button@koutch.png", "created": 1350328546, "screenshot": "/git/applets/windows-quick-list-with-close-button@koutch/screenshot.png", "name": "Windows Quick List with close button", "score": 0, "author_user": "none", "file": "/files/applets/windows-quick-list-with-close-button@koutch.zip", "spices-id": 98, "author_id": "0", "last_edited": 1507473626, "uuid": "windows-quick-list-with-close-button@koutch"}, "spices-notifier@germanfr": {"description": "Notifies of comments on the Cinnamon Spices website", "icon": "/files/applets/spices-notifier@germanfr.png", "created": 1526119212, "screenshot": "/git/applets/spices-notifier@germanfr/screenshot.png", "name": "Spices notifier", "score": 4, "author_user": "germanfr", "file": "/files/applets/spices-notifier@germanfr.zip", "spices-id": 307, "author_id": "0", "last_edited": 1528700216, "uuid": "spices-notifier@germanfr"}, "tracker@glebihan": {"description": "Search for files and applications using Tracker", "icon": "/files/applets/tracker@glebihan.png", "created": 1402228322, "screenshot": "/git/applets/tracker@glebihan/screenshot.png", "name": "Search using Tracker", "score": 3, "author_user": "none", "file": "/files/applets/tracker@glebihan.zip", "spices-id": 188, "author_id": "0", "last_edited": 1524615564, "uuid": "tracker@glebihan"}, "github-projects@morgan-design.com": {"description": "Click on the applet to explore your Public Github repositories", "icon": "/files/applets/github-projects@morgan-design.com.png", "created": 1354961996, "screenshot": "/git/applets/github-projects@morgan-design.com/screenshot.png", "name": "Github Explorer", "score": 4, "author_user": "jamesmorgan", "file": "/files/applets/github-projects@morgan-design.com.zip", "spices-id": 105, "author_id": "0", "last_edited": 1501432507, "uuid": "github-projects@morgan-design.com"}, "nvidiaprime@pdcurtis": {"description": "Displays which Graphics processor is active and nVidia GPU Temperature when active and in a horizontal panel", "icon": "/files/applets/nvidiaprime@pdcurtis.png", "created": 1469858330, "screenshot": "/git/applets/nvidiaprime@pdcurtis/screenshot.png", "name": "nVidia Prime GPU Display", "score": 4, "author_user": "pdcurtis", "file": "/files/applets/nvidiaprime@pdcurtis.zip", "spices-id": 259, "author_id": "0", "last_edited": 1506285381, "uuid": "nvidiaprime@pdcurtis"}, "gputemperature@silentage.com": {"description": "Shows NVidia/ATI GPU temperature in the panel, and detailed/multi-gpu information in a popup menu.", "icon": "/files/applets/gputemperature@silentage.com.png", "created": 1355964052, "screenshot": "/git/applets/gputemperature@silentage.com/screenshot.png", "name": "GPU Temperature", "score": 2, "author_user": "none", "file": "/files/applets/gputemperature@silentage.com.zip", "spices-id": 111, "author_id": "0", "last_edited": 1501876207, "uuid": "gputemperature@silentage.com"}, "cheaty@centurix": {"description": "An applet to provide quick access to a variety of cheat sheets.", "icon": "/files/applets/cheaty@centurix.png", "created": 1491544806, "screenshot": "/git/applets/cheaty@centurix/screenshot.png", "name": "Cheaty - Cheatsheet keeper", "score": 7, "author_user": "centurix", "file": "/files/applets/cheaty@centurix.zip", "spices-id": 285, "author_id": "0", "last_edited": 1532018254, "uuid": "cheaty@centurix"}, "softyubikey@yubiserver.include.gr": {"description": "Click on the applet to create a OTP", "icon": "/files/applets/softyubikey@yubiserver.include.gr.png", "created": 1328097600, "screenshot": "/git/applets/softyubikey@yubiserver.include.gr/screenshot.png", "name": "SoftYubikey", "score": 2, "author_user": "none", "file": "/files/applets/softyubikey@yubiserver.include.gr.zip", "spices-id": 26, "author_id": "0", "last_edited": 1506905953, "uuid": "softyubikey@yubiserver.include.gr"}, "shutdown-timer@webum.by": {"description": "Applet to help you shutdown, restart and suspend your system with timer", "icon": "/files/applets/shutdown-timer@webum.by.png", "created": 1348423688, "screenshot": "/git/applets/shutdown-timer@webum.by/screenshot.png", "name": "Shutdown timer", "score": 2, "author_user": "none", "file": "/files/applets/shutdown-timer@webum.by.zip", "spices-id": 95, "author_id": "0", "last_edited": 1530133866, "uuid": "shutdown-timer@webum.by"}, "rancher@centurix": {"description": "An applet to manage Homestead.", "icon": "/files/applets/rancher@centurix.png", "created": 1478661474, "screenshot": "/git/applets/rancher@centurix/screenshot.png", "name": "Homestead manager", "score": 1, "author_user": "centurix", "file": "/files/applets/rancher@centurix.zip", "spices-id": 270, "author_id": "0", "last_edited": 1521658005, "uuid": "rancher@centurix"}, "montrer-le-bureau@cannelle.org": {"description": "Minimize all windows or record the desktop", "icon": "/files/applets/montrer-le-bureau@cannelle.org.png", "created": 1457797040, "screenshot": "/git/applets/montrer-le-bureau@cannelle.org/screenshot.png", "name": "Show or record desktop", "score": 0, "author_user": "none", "file": "/files/applets/montrer-le-bureau@cannelle.org.zip", "spices-id": 247, "author_id": "0", "last_edited": 1503171605, "uuid": "montrer-le-bureau@cannelle.org"}, "ctrl4docker@hoffis-eck.de": {"description": "Activates/Deactivates Docker Container", "icon": "/files/applets/ctrl4docker@hoffis-eck.de.png", "created": 1458234881, "screenshot": "/git/applets/ctrl4docker@hoffis-eck.de/screenshot.png", "name": "Docker Control", "score": 2, "author_user": "none", "file": "/files/applets/ctrl4docker@hoffis-eck.de.zip", "spices-id": 248, "author_id": "0", "last_edited": 1504141806, "uuid": "ctrl4docker@hoffis-eck.de"}, "stackoverflow-questions-notifier@higuaro": {"description": "Checks stackoverflow site to see if new questions have been posted under a particular tag and generates a notification", "icon": "/files/applets/stackoverflow-questions-notifier@higuaro.png", "created": 1426492793, "screenshot": "/git/applets/stackoverflow-questions-notifier@higuaro/screenshot.png", "name": "Stackoverflow Questions Notifier", "score": 0, "author_user": "none", "file": "/files/applets/stackoverflow-questions-notifier@higuaro.zip", "spices-id": 224, "author_id": "0", "last_edited": 1507009423, "uuid": "stackoverflow-questions-notifier@higuaro"}, "separator2@zyzz": {"description": "Use this applet to create a separator between your applets", "icon": "/files/applets/separator2@zyzz.png", "created": 1328097600, "screenshot": "/git/applets/separator2@zyzz/screenshot.png", "name": "Separator2", "score": 1, "author_user": "none", "file": "/files/applets/separator2@zyzz.zip", "spices-id": 21, "author_id": "0", "last_edited": 1506905863, "uuid": "separator2@zyzz"}, "CinnVIIStarkMenu@NikoKrause": {"description": "Cinnamon Menu with the look of the Windows 7 Start Menu or the MATE Menu", "icon": "/files/applets/CinnVIIStarkMenu@NikoKrause.png", "created": 1486404904, "screenshot": "/git/applets/CinnVIIStarkMenu@NikoKrause/screenshot.png", "name": "CinnVIIStarkMenu", "score": 20, "author_user": "NikoKrause", "file": "/files/applets/CinnVIIStarkMenu@NikoKrause.zip", "spices-id": 281, "author_id": "0", "last_edited": 1526403888, "uuid": "CinnVIIStarkMenu@NikoKrause"}, "workspace-name@willurd": {"description": "Show the current workspace name in the panel", "icon": "/files/applets/workspace-name@willurd.png", "created": 1426384531, "screenshot": "/git/applets/workspace-name@willurd/screenshot.png", "name": "Workspace Name", "score": 2, "author_user": "willurd", "file": "/files/applets/workspace-name@willurd.zip", "spices-id": 222, "author_id": "0", "last_edited": 1507473654, "uuid": "workspace-name@willurd"}, "back-up_state@natsakis.com": {"description": "Probes for the state of a certain rsync back-up by checking the exit status of the log file", "icon": "/files/applets/back-up_state@natsakis.com.png", "created": 1395592595, "screenshot": "/git/applets/back-up_state@natsakis.com/screenshot.png", "name": "Back-up State", "score": 1, "author_user": "none", "file": "/files/applets/back-up_state@natsakis.com.zip", "spices-id": 180, "author_id": "0", "last_edited": 1511118347, "uuid": "back-up_state@natsakis.com"}, "hideable-applets@cardsurf": {"description": "Hides applets to tray", "icon": "/files/applets/hideable-applets@cardsurf.png", "created": 1497708606, "screenshot": "/git/applets/hideable-applets@cardsurf/screenshot.png", "name": "Hideable applets", "score": 2, "author_user": "cardsurf", "file": "/files/applets/hideable-applets@cardsurf.zip", "spices-id": 293, "author_id": "0", "last_edited": 1531104677, "uuid": "hideable-applets@cardsurf"}, "gmail@lauritsriple": {"description": "Shows most recent mails, and how many unread messages you have.", "icon": "/files/applets/gmail@lauritsriple.png", "created": 1462726674, "screenshot": "/git/applets/gmail@lauritsriple/screenshot.png", "name": "GmailNotifier", "score": 1, "author_user": "lauritsriple", "file": "/files/applets/gmail@lauritsriple.zip", "spices-id": 253, "author_id": "0", "last_edited": 1506624701, "uuid": "gmail@lauritsriple"}, "cpufreq@mtwebster": {"description": "Display and control cpu frequency", "icon": "/files/applets/cpufreq@mtwebster.png", "created": 1337133288, "screenshot": "/git/applets/cpufreq@mtwebster/screenshot.png", "name": "CPU Frequency Applet", "score": 2, "author_user": "none", "file": "/files/applets/cpufreq@mtwebster.zip", "spices-id": 70, "author_id": "0", "last_edited": 1521124144, "uuid": "cpufreq@mtwebster"}, "sysmonitor@orcus": {"description": "Displays CPU, memory, swap and network usage and load in graphs", "icon": "/files/applets/sysmonitor@orcus.png", "created": 1342806668, "screenshot": "/git/applets/sysmonitor@orcus/screenshot.png", "name": "System Monitor", "score": 6, "author_user": "orcuscz", "file": "/files/applets/sysmonitor@orcus.zip", "spices-id": 88, "author_id": "0", "last_edited": 1529304185, "uuid": "sysmonitor@orcus"}, "printers@linux-man": {"description": "Manage Jobs and Printers", "icon": "/files/applets/printers@linux-man.png", "created": 1461716485, "screenshot": "/git/applets/printers@linux-man/screenshot.png", "name": "Printers", "score": 6, "author_user": "linux-man", "file": "/files/applets/printers@linux-man.zip", "spices-id": 251, "author_id": "0", "last_edited": 1529825447, "uuid": "printers@linux-man"}, "a4techTool@mous": {"description": "Shows Battery level of A4Tech mouse", "icon": "/files/applets/a4techTool@mous.png", "created": 1393093231, "screenshot": "/git/applets/a4techTool@mous/screenshot.png", "name": "A4Tech battery checker", "score": 0, "author_user": "none", "file": "/files/applets/a4techTool@mous.zip", "spices-id": 177, "author_id": "0", "last_edited": 1499207706, "uuid": "a4techTool@mous"}, "rprego@rprego.com": {"description": "Switch display configuration on-the-fly", "icon": "/files/applets/rprego@rprego.com.png", "created": 1333064389, "screenshot": "/git/applets/rprego@rprego.com/screenshot.png", "name": "Display Switcher", "score": 1, "author_user": "none", "file": "/files/applets/rprego@rprego.com.zip", "spices-id": 43, "author_id": "0", "last_edited": 1494503104, "uuid": "rprego@rprego.com"}, "ioDisk@ctrlesc": {"description": "Shows the current max disk I/O utilization in the panel and per device utilization in a popup menu.", "icon": "/files/applets/ioDisk@ctrlesc.png", "created": 1381640233, "screenshot": "/git/applets/ioDisk@ctrlesc/screenshot.png", "name": "Disk Utilization", "score": 1, "author_user": "ctrlesc", "file": "/files/applets/ioDisk@ctrlesc.zip", "spices-id": 161, "author_id": "0", "last_edited": 1509443994, "uuid": "ioDisk@ctrlesc"}, "jenkins@backuity.org": {"description": "View jenkins builds", "icon": "/files/applets/jenkins@backuity.org.png", "created": 1440183718, "screenshot": "/git/applets/jenkins@backuity.org/screenshot.png", "name": "Jenkins Builds", "score": 0, "author_user": "vitaliis", "file": "/files/applets/jenkins@backuity.org.zip", "spices-id": 235, "author_id": "0", "last_edited": 1489235404, "uuid": "jenkins@backuity.org"}, "show-hide-applets@mohammad-sn": {"description": "hide a few applet to have a neater panel, and make them show up again by a click", "icon": "/files/applets/show-hide-applets@mohammad-sn.png", "created": 1388323632, "screenshot": "/git/applets/show-hide-applets@mohammad-sn/screenshot.png", "name": "Drawer (show/hide applets)", "score": 7, "author_user": "mohammad-sn", "file": "/files/applets/show-hide-applets@mohammad-sn.zip", "spices-id": 169, "author_id": "0", "last_edited": 1532191092, "uuid": "show-hide-applets@mohammad-sn"}, "sysmenu@tuxuls@gmail.com": {"description": "Add system menu", "icon": "/files/applets/sysmenu@tuxuls@gmail.com.png", "created": 1332178182, "screenshot": "/git/applets/sysmenu@tuxuls@gmail.com/screenshot.png", "name": "System menu", "score": 0, "author_user": "none", "file": "/files/applets/sysmenu@tuxuls@gmail.com.zip", "spices-id": 33, "author_id": "0", "last_edited": 1505491845, "uuid": "sysmenu@tuxuls@gmail.com"}, "binaryclock@entelechy": {"description": "The Cinnamon calendar applet, with the time displayed in binary", "icon": "/files/applets/binaryclock@entelechy.png", "created": 1338930141, "screenshot": "/git/applets/binaryclock@entelechy/screenshot.png", "name": "Cinnamon Binary Clock", "score": 2, "author_user": "none", "file": "/files/applets/binaryclock@entelechy.zip", "spices-id": 75, "author_id": "0", "last_edited": 1521124132, "uuid": "binaryclock@entelechy"}, "batterymonitor@pdcurtis": {"description": "Displays Charge as Percentage and allows Alerts and Actions", "icon": "/files/applets/batterymonitor@pdcurtis.png", "created": 1468729772, "screenshot": "/git/applets/batterymonitor@pdcurtis/screenshot.png", "name": "Battery  Applet with Monitoring and Shutdown (BAMS)", "score": 5, "author_user": "pdcurtis", "file": "/files/applets/batterymonitor@pdcurtis.zip", "spices-id": 255, "author_id": "0", "last_edited": 1515259107, "uuid": "batterymonitor@pdcurtis"}, "mybookmarks@markbokil.com": {"description": "Web apps launcher", "icon": "/files/applets/mybookmarks@markbokil.com.png", "created": 1335942327, "screenshot": "/git/applets/mybookmarks@markbokil.com/screenshot.png", "name": "My Bookmarks", "score": 1, "author_user": "none", "file": "/files/applets/mybookmarks@markbokil.com.zip", "spices-id": 61, "author_id": "0", "last_edited": 1521124183, "uuid": "mybookmarks@markbokil.com"}, "calendar@simonwiles.net": {"description": "Fork of the Cinnamon calendar applet with support for displaying multiple timezones", "icon": "/files/applets/calendar@simonwiles.net.png", "created": 1355382871, "screenshot": "/git/applets/calendar@simonwiles.net/screenshot.png", "name": "World Clock Calendar", "score": 15, "author_user": "simonwiles", "file": "/files/applets/calendar@simonwiles.net.zip", "spices-id": 108, "author_id": "0", "last_edited": 1521560828, "uuid": "calendar@simonwiles.net"}, "officeCenter@scollins": {"description": "Provides an easy and fast resource for all your office needs", "icon": "/files/applets/officeCenter@scollins.png", "created": 1373056769, "screenshot": "/git/applets/officeCenter@scollins/screenshot.png", "name": "Office Center", "score": 2, "author_user": "collinss", "file": "/files/applets/officeCenter@scollins.zip", "spices-id": 143, "author_id": "0", "last_edited": 1506285409, "uuid": "officeCenter@scollins"}, "weather@mockturtl": {"description": "View your local weather forecast", "icon": "/files/applets/weather@mockturtl.png", "created": 1328097600, "screenshot": "/git/applets/weather@mockturtl/screenshot.png", "name": "Weather", "score": 37, "author_user": "mockturtl", "file": "/files/applets/weather@mockturtl.zip", "spices-id": 17, "author_id": "0", "last_edited": 1530540863, "uuid": "weather@mockturtl"}, "mem-monitor-text@datanom.net": {"description": "A simple applet that displays the memory usage.", "icon": "/files/applets/mem-monitor-text@datanom.net.png", "created": 1332198599, "screenshot": "/git/applets/mem-monitor-text@datanom.net/screenshot.png", "name": "Simple Memory Monitor", "score": 2, "author_user": "icarter09", "file": "/files/applets/mem-monitor-text@datanom.net.zip", "spices-id": 34, "author_id": "0", "last_edited": 1533364026, "uuid": "mem-monitor-text@datanom.net"}, "CustomApplicationsMenu@LLOBERA": {"description": "An applications drop-down list easily customisable", "icon": "/files/applets/CustomApplicationsMenu@LLOBERA.png", "created": 1356887747, "screenshot": "/git/applets/CustomApplicationsMenu@LLOBERA/screenshot.png", "name": "Custom Applications Menu", "score": 4, "author_user": "none", "file": "/files/applets/CustomApplicationsMenu@LLOBERA.zip", "spices-id": 113, "author_id": "0", "last_edited": 1502960106, "uuid": "CustomApplicationsMenu@LLOBERA"}, "menu@csknet.org": {"description": "A simple command launcher menu", "icon": "/files/applets/menu@csknet.org.png", "created": 1345886481, "screenshot": "/git/applets/menu@csknet.org/screenshot.png", "name": "CskMenu", "score": 1, "author_user": "none", "file": "/files/applets/menu@csknet.org.zip", "spices-id": 94, "author_id": "0", "last_edited": 1494848104, "uuid": "menu@csknet.org"}, "color-picker@fmete": {"description": "Use the color picker to select a color on the screen. The color value (HEX or RGB) will be copied to the clipboard.", "icon": "/files/applets/color-picker@fmete.png", "created": 1394626932, "screenshot": "/git/applets/color-picker@fmete/screenshot.png", "name": "Color Picker", "score": 6, "author_user": "icarter09", "file": "/files/applets/color-picker@fmete.zip", "spices-id": 179, "author_id": "0", "last_edited": 1532493071, "uuid": "color-picker@fmete"}, "profile-switcher@pixunil": {"description": "Change your settings profile", "icon": "/files/applets/profile-switcher@pixunil.png", "created": 1429467480, "screenshot": "/git/applets/profile-switcher@pixunil/screenshot.png", "name": "Profile switcher", "score": 0, "author_user": "pixunil", "file": "/files/applets/profile-switcher@pixunil.zip", "spices-id": 228, "author_id": "0", "last_edited": 1506538935, "uuid": "profile-switcher@pixunil"}, "force-quit@cinnamon.org": {"description": "Click on the applet to launch xkill and force any window to quit immediately", "icon": "/files/applets/force-quit@cinnamon.org.png", "created": 1328097600, "screenshot": "/git/applets/force-quit@cinnamon.org/screenshot.png", "name": "Force Quit", "score": 2, "author_user": "none", "file": "/files/applets/force-quit@cinnamon.org.zip", "spices-id": 4, "author_id": "0", "last_edited": 1506200151, "uuid": "force-quit@cinnamon.org"}, "uptime@vatanuki.kun": {"description": "A simple applet that displays uptime.", "icon": "/files/applets/uptime@vatanuki.kun.png", "created": 1414686755, "screenshot": "/git/applets/uptime@vatanuki.kun/screenshot.png", "name": "Up Time", "score": 4, "author_user": "none", "file": "/files/applets/uptime@vatanuki.kun.zip", "spices-id": 202, "author_id": "0", "last_edited": 1507404441, "uuid": "uptime@vatanuki.kun"}, "WindowListGroup@jake.phy@gmail.com": {"description": "Window List with App Grouping an Window Thumbnails", "icon": "/files/applets/WindowListGroup@jake.phy@gmail.com.png", "created": 1328097600, "screenshot": "/git/applets/WindowListGroup@jake.phy@gmail.com/screenshot.png", "name": "Window List With App Grouping", "score": 5, "author_user": "none", "file": "/files/applets/WindowListGroup@jake.phy@gmail.com.zip", "spices-id": 16, "author_id": "0", "last_edited": 1525085226, "uuid": "WindowListGroup@jake.phy@gmail.com"}, "Cinnamenu@json": {"description": "A flexible menu providing formatting options, web bookmarks, open window lookup, and search provider support with fuzzy searching.", "icon": "/files/applets/Cinnamenu@json.png", "created": 1487966104, "screenshot": "/git/applets/Cinnamenu@json/screenshot.png", "name": "Cinnamenu", "score": 17, "author_user": "jaszhix", "file": "/files/applets/Cinnamenu@json.zip", "spices-id": 282, "author_id": "0", "last_edited": 1530704897, "uuid": "Cinnamenu@json"}, "suspend@janax": {"description": "Immediately suspends the computer", "icon": "/files/applets/suspend@janax.png", "created": 1440345445, "screenshot": "/git/applets/suspend@janax/screenshot.png", "name": "Suspend computer", "score": 1, "author_user": "none", "file": "/files/applets/suspend@janax.zip", "spices-id": 236, "author_id": "0", "last_edited": 1507062196, "uuid": "suspend@janax"}, "SW++@mohammad-sn": {"description": "click to show/hide desktop, scroll to switch workspace and windows quick list by right click", "icon": "/files/applets/SW++@mohammad-sn.png", "created": 1386422498, "screenshot": "/git/applets/SW++@mohammad-sn/screenshot.png", "name": "Show desktop ++", "score": 5, "author_user": "mohammad-sn", "file": "/files/applets/SW++@mohammad-sn.zip", "spices-id": 165, "author_id": "0", "last_edited": 1498954506, "uuid": "SW++@mohammad-sn"}, "sound-with-apps-volume@koutch": {"description": "Applications\\\\\' volume, volume 150%, mute button, scrolling track time, custom launcher ...", "icon": "/files/applets/sound-with-apps-volume@koutch.png", "created": 1375989367, "screenshot": "/git/applets/sound-with-apps-volume@koutch/screenshot.png", "name": "Sound with apps volume", "score": 4, "author_user": "none", "file": "/files/applets/sound-with-apps-volume@koutch.zip", "spices-id": 150, "author_id": "0", "last_edited": 1507009401, "uuid": "sound-with-apps-volume@koutch"}, "places-bookmarks@dmo60.de": {"description": "Access your places and bookmarks", "icon": "/files/applets/places-bookmarks@dmo60.de.png", "created": 1328097600, "screenshot": "/git/applets/places-bookmarks@dmo60.de/screenshot.png", "name": "Places", "score": 4, "author_user": "none", "file": "/files/applets/places-bookmarks@dmo60.de.zip", "spices-id": 5, "author_id": "0", "last_edited": 1522781125, "uuid": "places-bookmarks@dmo60.de"}, "lorem@vxstorm": {"description": "Click to get a paragraph of Lorem Ipsum to your clipboard", "icon": "/files/applets/lorem@vxstorm.png", "created": 1361378608, "screenshot": "/git/applets/lorem@vxstorm/screenshot.png", "name": "Lorem Pastesum", "score": 1, "author_user": "none", "file": "/files/applets/lorem@vxstorm.zip", "spices-id": 119, "author_id": "0", "last_edited": 1506200151, "uuid": "lorem@vxstorm"}, "disk-read-and-write-speed@cardsurf": {"description": "Shows usage of a disk", "icon": "/files/applets/disk-read-and-write-speed@cardsurf.png", "created": 1507442110, "screenshot": "/git/applets/disk-read-and-write-speed@cardsurf/screenshot.png", "name": "Disk read and write speed", "score": 3, "author_user": "cardsurf", "file": "/files/applets/disk-read-and-write-speed@cardsurf.zip", "spices-id": 301, "author_id": "0", "last_edited": 1531638566, "uuid": "disk-read-and-write-speed@cardsurf"}, "pa-equalizer@jschug.com": {"description": "An applet to control sound equalization", "icon": "/files/applets/pa-equalizer@jschug.com.png", "created": 1391568787, "screenshot": "/git/applets/pa-equalizer@jschug.com/screenshot.png", "name": "Equalizer", "score": 4, "author_user": "none", "file": "/files/applets/pa-equalizer@jschug.com.zip", "spices-id": 176, "author_id": "0", "last_edited": 1506285440, "uuid": "pa-equalizer@jschug.com"}, "ipindicator@matus.benko@gmail.com": {"description": "Applet shows different icon for different public IP addresses. Usefull when often using VPN.", "icon": "/files/applets/ipindicator@matus.benko@gmail.com.png", "created": 1507404312, "screenshot": "/git/applets/ipindicator@matus.benko@gmail.com/screenshot.png", "name": "IP Indicator", "score": 2, "author_user": "PrimaMateria", "file": "/files/applets/ipindicator@matus.benko@gmail.com.zip", "spices-id": 300, "author_id": "0", "last_edited": 1507403866, "uuid": "ipindicator@matus.benko@gmail.com"}, "panel-separator-icon@mordant23": {"description": "Places a separator in the panel to help organize the panel", "icon": "/files/applets/panel-separator-icon@mordant23.png", "created": 1328097600, "screenshot": "/git/applets/panel-separator-icon@mordant23/screenshot.png", "name": "Panel Separator (Icon)", "score": 0, "author_user": "none", "file": "/files/applets/panel-separator-icon@mordant23.zip", "spices-id": 23, "author_id": "0", "last_edited": 1502960106, "uuid": "panel-separator-icon@mordant23"}, "MessagingMenuV3@blub": {"description": "Messaging Menu applet", "icon": "/files/applets/MessagingMenuV3@blub.png", "created": 1419118644, "screenshot": "/git/applets/MessagingMenuV3@blub/screenshot.png", "name": "Messaging Menu", "score": 2, "author_user": "none", "file": "/files/applets/MessagingMenuV3@blub.zip", "spices-id": 212, "author_id": "0", "last_edited": 1498912506, "uuid": "MessagingMenuV3@blub"}, "web-developer-menu@infiniteshroom": {"description": "A Menu for PHP/MySQL Web Developers", "icon": "/files/applets/web-developer-menu@infiniteshroom.png", "created": 1336008858, "screenshot": "/git/applets/web-developer-menu@infiniteshroom/screenshot.png", "name": "Web Developer Menu", "score": 2, "author_user": "none", "file": "/files/applets/web-developer-menu@infiniteshroom.zip", "spices-id": 63, "author_id": "0", "last_edited": 1507473676, "uuid": "web-developer-menu@infiniteshroom"}, "serviceLauncher@hulygun": {"description": "Description", "icon": "/files/applets/serviceLauncher@hulygun.png", "created": 1467150994, "screenshot": "/git/applets/serviceLauncher@hulygun/screenshot.png", "name": "Service Launcher", "score": 1, "author_user": "hulygun", "file": "/files/applets/serviceLauncher@hulygun.zip", "spices-id": 254, "author_id": "0", "last_edited": 1524859859, "uuid": "serviceLauncher@hulygun"}, "search-box@mtwebster": {"description": "Perform an Internet search, using your favorite engine", "icon": "/files/applets/search-box@mtwebster.png", "created": 1335640361, "screenshot": "/git/applets/search-box@mtwebster/screenshot.png", "name": "Internet Search Box", "score": 1, "author_user": "none", "file": "/files/applets/search-box@mtwebster.zip", "spices-id": 57, "author_id": "0", "last_edited": 1523436003, "uuid": "search-box@mtwebster"}, "mailnagapplet@ozderya.net": {"description": "Mailnag mail notifier applet", "icon": "/files/applets/mailnagapplet@ozderya.net.png", "created": 1451556281, "screenshot": "/git/applets/mailnagapplet@ozderya.net/screenshot.png", "name": "Mailnag", "score": 6, "author_user": "hyOzd", "file": "/files/applets/mailnagapplet@ozderya.net.zip", "spices-id": 244, "author_id": "0", "last_edited": 1532700647, "uuid": "mailnagapplet@ozderya.net"}, "restart-cinnamon@kolle": {"description": "Click on the applet to restart Cinnamon", "icon": "/files/applets/restart-cinnamon@kolle.png", "created": 1328097600, "screenshot": "/git/applets/restart-cinnamon@kolle/screenshot.png", "name": "Restart Cinnamon", "score": 8, "author_user": "icarter09", "file": "/files/applets/restart-cinnamon@kolle.zip", "spices-id": 14, "author_id": "0", "last_edited": 1532841021, "uuid": "restart-cinnamon@kolle"}, "vnstat@linuxmint.com": {"description": "Network usage monitor using vnstat", "icon": "/files/applets/vnstat@linuxmint.com.png", "created": 1331829318, "screenshot": "/git/applets/vnstat@linuxmint.com/screenshot.png", "name": "Network usage monitor", "score": 1, "author_user": "pdcurtis", "file": "/files/applets/vnstat@linuxmint.com.zip", "spices-id": 31, "author_id": "0", "last_edited": 1525543401, "uuid": "vnstat@linuxmint.com"}, "multicore-sys-monitor@ccadeptic23": {"description": "Displays in realtime the cpu usage for each core/cpu and overall memory usage.", "icon": "/files/applets/multicore-sys-monitor@ccadeptic23.png", "created": 1340148712, "screenshot": "/git/applets/multicore-sys-monitor@ccadeptic23/screenshot.png", "name": "Multi-Core System Monitor", "score": 18, "author_user": "jaszhix", "file": "/files/applets/multicore-sys-monitor@ccadeptic23.zip", "spices-id": 79, "author_id": "0", "last_edited": 1524477324, "uuid": "multicore-sys-monitor@ccadeptic23"}, "IcingWindowSaver@json": {"description": "Window position save and restore utility.", "icon": "/files/applets/IcingWindowSaver@json.png", "created": 1480172723, "screenshot": "/git/applets/IcingWindowSaver@json/screenshot.png", "name": "Icing Window Saver", "score": 1, "author_user": "jaszhix", "file": "/files/applets/IcingWindowSaver@json.zip", "spices-id": 273, "author_id": "0", "last_edited": 1505196906, "uuid": "IcingWindowSaver@json"}, "computer@brownsr": {"description": "Show files at computer level", "icon": "/files/applets/computer@brownsr.png", "created": 1425330883, "screenshot": "/git/applets/computer@brownsr/screenshot.png", "name": "Computer", "score": 1, "author_user": "brownsr", "file": "/files/applets/computer@brownsr.zip", "spices-id": 220, "author_id": "0", "last_edited": 1500320706, "uuid": "computer@brownsr"}, "logout@martin": {"description": "2-clicks logout", "icon": "/files/applets/logout@martin.png", "created": 1328097600, "screenshot": "/git/applets/logout@martin/screenshot.png", "name": "logout", "score": 0, "author_user": "none", "file": "/files/applets/logout@martin.zip", "spices-id": 10, "author_id": "0", "last_edited": 1502960106, "uuid": "logout@martin"}, "sticky@scollins": {"description": "Applet that allows you to manage desktop notes", "icon": "/files/applets/sticky@scollins.png", "created": 1405705436, "screenshot": "/git/applets/sticky@scollins/screenshot.png", "name": "Sticky Notes", "score": 12, "author_user": "collinss", "file": "/files/applets/sticky@scollins.zip", "spices-id": 194, "author_id": "0", "last_edited": 1523242645, "uuid": "sticky@scollins"}, "stocks@adonut": {"description": "a simple Stocks ticker for cinnamon", "icon": "/files/applets/stocks@adonut.png", "created": 1398177478, "screenshot": "/git/applets/stocks@adonut/screenshot.png", "name": "stocks", "score": 0, "author_user": "none", "file": "/files/applets/stocks@adonut.zip", "spices-id": 187, "author_id": "0", "last_edited": 1507062175, "uuid": "stocks@adonut"}, "hwmonitor@sylfurd": {"description": "Displaying realtime CPU and memory load", "icon": "/files/applets/hwmonitor@sylfurd.png", "created": 1328097600, "screenshot": "/git/applets/hwmonitor@sylfurd/screenshot.png", "name": "Graphical hardware monitor", "score": 12, "author_user": "none", "file": "/files/applets/hwmonitor@sylfurd.zip", "spices-id": 12, "author_id": "0", "last_edited": 1511216233, "uuid": "hwmonitor@sylfurd"}, "ShutdownApplet@shelley": {"description": "An applet to help you shutdown, restart and suspend your system with single click", "icon": "/files/applets/ShutdownApplet@shelley.png", "created": 1334550823, "screenshot": "/git/applets/ShutdownApplet@shelley/screenshot.png", "name": "Shutdown Applet", "score": 0, "author_user": "none", "file": "/files/applets/ShutdownApplet@shelley.zip", "spices-id": 49, "author_id": "0", "last_edited": 1502960106, "uuid": "ShutdownApplet@shelley"}, "PDFManager@cinnamon.org": {"description": "Manager of PDF", "icon": "/files/applets/PDFManager@cinnamon.org.png", "created": 1415577493, "screenshot": "/git/applets/PDFManager@cinnamon.org/screenshot.png", "name": "PDFManager", "score": 1, "author_user": "none", "file": "/files/applets/PDFManager@cinnamon.org.zip", "spices-id": 204, "author_id": "0", "last_edited": 1512367675, "uuid": "PDFManager@cinnamon.org"}, "ShellTools@abgoyal": {"description": "Provides an easy way to run shell commands", "icon": "/files/applets/ShellTools@abgoyal.png", "created": 1498432205, "screenshot": "/git/applets/ShellTools@abgoyal/screenshot.png", "name": "ShellTools", "score": 0, "author_user": "jaszhix", "file": "/files/applets/ShellTools@abgoyal.zip", "spices-id": 295, "author_id": "0", "last_edited": 1505491845, "uuid": "ShellTools@abgoyal"}, "systray-collapsible@koutch": {"description": "Expandable/Collapsible System Tray Applet ", "icon": "/files/applets/systray-collapsible@koutch.png", "created": 1377519710, "screenshot": "/git/applets/systray-collapsible@koutch/screenshot.png", "name": "System Tray Collapsible", "score": 1, "author_user": "none", "file": "/files/applets/systray-collapsible@koutch.zip", "spices-id": 154, "author_id": "0", "last_edited": 1507154237, "uuid": "systray-collapsible@koutch"}, "sound150@claudiux": {"description": "An applet, based on the Cinnamon one, to control sound (up to 150% of nominal volume) and music", "icon": "/files/applets/sound150@claudiux.png", "created": 1516274109, "screenshot": "/git/applets/sound150@claudiux/screenshot.png", "name": "Sound 150%", "score": 7, "author_user": "claudiux", "file": "/files/applets/sound150@claudiux.zip", "spices-id": 306, "author_id": "0", "last_edited": 1528860128, "uuid": "sound150@claudiux"}, "ink-level-monitor@r0p01ach": {"description": "USB Printer Ink Level Monitor Applet", "icon": "/files/applets/ink-level-monitor@r0p01ach.png", "created": 1445110192, "screenshot": "/git/applets/ink-level-monitor@r0p01ach/screenshot.png", "name": "Printer Ink Level Monitor Applet", "score": 0, "author_user": "none", "file": "/files/applets/ink-level-monitor@r0p01ach.zip", "spices-id": 240, "author_id": "0", "last_edited": 1501960207, "uuid": "ink-level-monitor@r0p01ach"}, "sshlauncher@sumo": {"description": "An applet to connect to SSH hosts configured in ~/.ssh/config", "icon": "/files/applets/sshlauncher@sumo.png", "created": 1345716708, "screenshot": "/git/applets/sshlauncher@sumo/screenshot.png", "name": "SSH Launcher", "score": 1, "author_user": "sumo", "file": "/files/applets/sshlauncher@sumo.zip", "spices-id": 93, "author_id": "0", "last_edited": 1513827346, "uuid": "sshlauncher@sumo"}, "betterlock": {"description": "Shows whether caps lock/num lock is on, and displays a notification when these change.", "icon": "/files/applets/betterlock.png", "created": 1340929338, "screenshot": "/git/applets/betterlock/screenshot.png", "name": "Num Lock/Caps Lock indicator with notifications", "score": 9, "author_user": "none", "file": "/files/applets/betterlock.zip", "spices-id": 83, "author_id": "0", "last_edited": 1523822189, "uuid": "betterlock"}, "pomodoro@gregfreeman.org": {"description": "Great tool for boosted productivity!", "icon": "/files/applets/pomodoro@gregfreeman.org.png", "created": 1369069129, "screenshot": "/git/applets/pomodoro@gregfreeman.org/screenshot.png", "name": "Pomodoro Timer", "score": 5, "author_user": "gfreeau", "file": "/files/applets/pomodoro@gregfreeman.org.zip", "spices-id": 131, "author_id": "0", "last_edited": 1525933343, "uuid": "pomodoro@gregfreeman.org"}, "smallcalc_applet@lerc.sds": {"description": "A nice compact popup calculator", "icon": "/files/applets/smallcalc_applet@lerc.sds.png", "created": 1451953883, "screenshot": "/git/applets/smallcalc_applet@lerc.sds/screenshot.png", "name": "SmallCalc", "score": 1, "author_user": "lerc", "file": "/files/applets/smallcalc_applet@lerc.sds.zip", "spices-id": 245, "author_id": "0", "last_edited": 1525650867, "uuid": "smallcalc_applet@lerc.sds"}, "stopwatch@pdcurtis": {"description": "Allows one to time activities such as the time online with multiple instances possible", "icon": "/files/applets/stopwatch@pdcurtis.png", "created": 1378030418, "screenshot": "/git/applets/stopwatch@pdcurtis/screenshot.png", "name": "Stopwatch for Cinnamon 1.8+", "score": 2, "author_user": "pdcurtis", "file": "/files/applets/stopwatch@pdcurtis.zip", "spices-id": 156, "author_id": "0", "last_edited": 1507062186, "uuid": "stopwatch@pdcurtis"}, "jalalicalendar@mohammad-sn": {"description": "The Cinnamon Jalali (Iranian) calendar applet", "icon": "/files/applets/jalalicalendar@mohammad-sn.png", "created": 1495948206, "screenshot": "/git/applets/jalalicalendar@mohammad-sn/screenshot.png", "name": "Taghvim", "score": 2, "author_user": "mohammad-sn", "file": "/files/applets/jalalicalendar@mohammad-sn.zip", "spices-id": 288, "author_id": "0", "last_edited": 1522795197, "uuid": "jalalicalendar@mohammad-sn"}, "text-to-speech-applet@cardsurf": {"description": "A text reading applet", "icon": "/files/applets/text-to-speech-applet@cardsurf.png", "created": 1450165768, "screenshot": "/git/applets/text-to-speech-applet@cardsurf/screenshot.png", "name": "Text to speech applet", "score": 2, "author_user": "cardsurf", "file": "/files/applets/text-to-speech-applet@cardsurf.zip", "spices-id": 242, "author_id": "0", "last_edited": 1531578785, "uuid": "text-to-speech-applet@cardsurf"}, "devutils@fogl": {"description": "Development Utils Applet for Cinnamon", "icon": "/files/applets/devutils@fogl.png", "created": 1373890725, "screenshot": "/git/applets/devutils@fogl/screenshot.png", "name": "Development Utils", "score": 1, "author_user": "none", "file": "/files/applets/devutils@fogl.zip", "spices-id": 145, "author_id": "0", "last_edited": 1521124157, "uuid": "devutils@fogl"}, "system-monitor@spacy01": {"description": "Click here to see processes and etc.", "icon": "/files/applets/system-monitor@spacy01.png", "created": 1328097600, "screenshot": "/git/applets/system-monitor@spacy01/screenshot.png", "name": "System monitor", "score": 0, "author_user": "spacy01", "file": "/files/applets/system-monitor@spacy01.zip", "spices-id": 6, "author_id": "0", "last_edited": 1507922830, "uuid": "system-monitor@spacy01"}, "AutostartPrograms@spacy01": {"description": "Click here to add or remove programs to start with the session.", "icon": "/files/applets/AutostartPrograms@spacy01.png", "created": 1328097600, "screenshot": "/git/applets/AutostartPrograms@spacy01/screenshot.png", "name": "Autostart programs", "score": 0, "author_user": "spacy01", "file": "/files/applets/AutostartPrograms@spacy01.zip", "spices-id": 9, "author_id": "0", "last_edited": 1506285252, "uuid": "AutostartPrograms@spacy01"}, "todo@threefi": {"description": "a simple todo list ticker for cinammon", "icon": "/files/applets/todo@threefi.png", "created": 1415634470, "screenshot": "/git/applets/todo@threefi/screenshot.png", "name": "Todo", "score": 3, "author_user": "none", "file": "/files/applets/todo@threefi.zip", "spices-id": 205, "author_id": "0", "last_edited": 1507404377, "uuid": "todo@threefi"}, "commandLauncher@scollins": {"description": "Lets you to run command-line commands with the click of a button", "icon": "/files/applets/commandLauncher@scollins.png", "created": 1371591390, "screenshot": "/git/applets/commandLauncher@scollins/screenshot.png", "name": "Command Launcher", "score": 3, "author_user": "collinss", "file": "/files/applets/commandLauncher@scollins.zip", "spices-id": 139, "author_id": "0", "last_edited": 1505246705, "uuid": "commandLauncher@scollins"}, "windowlist@cobinja.de": {"description": "A window list with app grouping and window previews", "icon": "/files/applets/windowlist@cobinja.de.png", "created": 1494367204, "screenshot": "/git/applets/windowlist@cobinja.de/screenshot.png", "name": "CobiWindowList", "score": 18, "author_user": "Cobinja", "file": "/files/applets/windowlist@cobinja.de.zip", "spices-id": 287, "author_id": "0", "last_edited": 1531919859, "uuid": "windowlist@cobinja.de"}, "mylauncher@markbokil.com": {"description": "Personal app launcher.", "icon": "/files/applets/mylauncher@markbokil.com.png", "created": 1335766634, "screenshot": "/git/applets/mylauncher@markbokil.com/screenshot.png", "name": "My Launcher", "score": 2, "author_user": "none", "file": "/files/applets/mylauncher@markbokil.com.zip", "spices-id": 60, "author_id": "0", "last_edited": 1503599105, "uuid": "mylauncher@markbokil.com"}, "bash-sensors@pkkk": {"description": "Write your Bash commands to specify applet output (temperature sensors and not only!)", "icon": "/files/applets/bash-sensors@pkkk.png", "created": 1436629537, "screenshot": "/git/applets/bash-sensors@pkkk/screenshot.png", "name": "Bash Sensors", "score": 3, "author_user": "none", "file": "/files/applets/bash-sensors@pkkk.zip", "spices-id": 231, "author_id": "0", "last_edited": 1524859958, "uuid": "bash-sensors@pkkk"}, "window-list@zeripath.sdf-eu.org": {"description": "Zeripaths variant of Cinnamon window list", "icon": "/files/applets/window-list@zeripath.sdf-eu.org.png", "created": 1339013244, "screenshot": "/git/applets/window-list@zeripath.sdf-eu.org/screenshot.png", "name": "Zeripaths Window list", "score": 0, "author_user": "zeripath", "file": "/files/applets/window-list@zeripath.sdf-eu.org.zip", "spices-id": 76, "author_id": "0", "last_edited": 1498769706, "uuid": "window-list@zeripath.sdf-eu.org"}, "cryptocoin@guantanamoe": {"description": "Monitor current price and trends of cryptocurrencies", "icon": "/files/applets/cryptocoin@guantanamoe.png", "created": 1512368107, "screenshot": "/git/applets/cryptocoin@guantanamoe/screenshot.png", "name": "Cryptocoin", "score": 3, "author_user": "imDeprecated", "file": "/files/applets/cryptocoin@guantanamoe.zip", "spices-id": 304, "author_id": "0", "last_edited": 1526200418, "uuid": "cryptocoin@guantanamoe"}, "brightness-and-gamma-applet@cardsurf": {"description": "Sets brightness and gamma levels of a screen", "icon": "/files/applets/brightness-and-gamma-applet@cardsurf.png", "created": 1493576106, "screenshot": "/git/applets/brightness-and-gamma-applet@cardsurf/screenshot.png", "name": "Brightness and gamma applet", "score": 3, "author_user": "cardsurf", "file": "/files/applets/brightness-and-gamma-applet@cardsurf.zip", "spices-id": 286, "author_id": "0", "last_edited": 1531505638, "uuid": "brightness-and-gamma-applet@cardsurf"}, "ShutdownMenuWithIcons@LLOBERA": {"description": "An applet to help you shutdown, restart and suspend your system with single click", "icon": "/files/applets/ShutdownMenuWithIcons@LLOBERA.png", "created": 1356908845, "screenshot": "/git/applets/ShutdownMenuWithIcons@LLOBERA/screenshot.png", "name": "Shutdown Menu With Icons", "score": 2, "author_user": "none", "file": "/files/applets/ShutdownMenuWithIcons@LLOBERA.zip", "spices-id": 114, "author_id": "0", "last_edited": 1502960106, "uuid": "ShutdownMenuWithIcons@LLOBERA"}, "IcingTaskManager@json": {"description": "Window list with app grouping and thumbnails", "icon": "/files/applets/IcingTaskManager@json.png", "created": 1477914049, "screenshot": "/git/applets/IcingTaskManager@json/screenshot.png", "name": "Icing Task Manager", "score": 28, "author_user": "jaszhix", "file": "/files/applets/IcingTaskManager@json.zip", "spices-id": 269, "author_id": "0", "last_edited": 1531685465, "uuid": "IcingTaskManager@json"}, "localip@mrieracrespi": {"description": "Shows local IP addresses.", "icon": "/files/applets/localip@mrieracrespi.png", "created": 1395834290, "screenshot": "/git/applets/localip@mrieracrespi/screenshot.png", "name": "Local IPs", "score": 1, "author_user": "none", "file": "/files/applets/localip@mrieracrespi.zip", "spices-id": 182, "author_id": "0", "last_edited": 1505297405, "uuid": "localip@mrieracrespi"}, "download-and-upload-speed@cardsurf": {"description": "Shows usage of a network interface", "icon": "/files/applets/download-and-upload-speed@cardsurf.png", "created": 1443093713, "screenshot": "/git/applets/download-and-upload-speed@cardsurf/screenshot.png", "name": "Download and upload speed", "score": 15, "author_user": "cardsurf", "file": "/files/applets/download-and-upload-speed@cardsurf.zip", "spices-id": 238, "author_id": "0", "last_edited": 1531770175, "uuid": "download-and-upload-speed@cardsurf"}, "cinnamon-utils-menu@pithdillinja": {"description": "Provides a drop-down menu with a few utilities to manage Cinnamon. Based on the original \\\\\'Restart Cinnamon\\\\\' applet by kolle", "icon": "/files/applets/cinnamon-utils-menu@pithdillinja.png", "created": 1328097600, "screenshot": "/git/applets/cinnamon-utils-menu@pithdillinja/screenshot.png", "name": "Cinnamon Utilities Menu", "score": 0, "author_user": "none", "file": "/files/applets/cinnamon-utils-menu@pithdillinja.zip", "spices-id": 30, "author_id": "0", "last_edited": 1505491845, "uuid": "cinnamon-utils-menu@pithdillinja"}, "diaspora-notif@douze12": {"description": "Diaspora* notifications", "icon": "/files/applets/diaspora-notif@douze12.png", "created": 1416609167, "screenshot": "/git/applets/diaspora-notif@douze12/screenshot.png", "name": "Diaspora* notifications", "score": 1, "author_user": "none", "file": "/files/applets/diaspora-notif@douze12.zip", "spices-id": 209, "author_id": "0", "last_edited": 1521124172, "uuid": "diaspora-notif@douze12"}, "collapsible-systray@feuerfuchs.eu": {"description": "A replacement for the abandoned System Tray Collapsible Cinnamon applet", "icon": "/files/applets/collapsible-systray@feuerfuchs.eu.png", "created": 1471374286, "screenshot": "/git/applets/collapsible-systray@feuerfuchs.eu/screenshot.png", "name": "Collapsible Systray", "score": 4, "author_user": "feuerfuchs", "file": "/files/applets/collapsible-systray@feuerfuchs.eu.zip", "spices-id": 265, "author_id": "0", "last_edited": 1528067287, "uuid": "collapsible-systray@feuerfuchs.eu"}, "ThemeRefresh@JosephM": {"description": "A simple applet that allows you to refresh the current Cinnamon Theme", "icon": "/files/applets/ThemeRefresh@JosephM.png", "created": 1389563243, "screenshot": "/git/applets/ThemeRefresh@JosephM/screenshot.png", "name": "Reload Current Theme", "score": 1, "author_user": "none", "file": "/files/applets/ThemeRefresh@JosephM.zip", "spices-id": 172, "author_id": "0", "last_edited": 1512367702, "uuid": "ThemeRefresh@JosephM"}, "toggle_LookingGlass@kolle": {"description": "Click on the applet to toggle LookingGlass", "icon": "/files/applets/toggle_LookingGlass@kolle.png", "created": 1328097600, "screenshot": "/git/applets/toggle_LookingGlass@kolle/screenshot.png", "name": "Toggle LookingGlass", "score": 1, "author_user": "none", "file": "/files/applets/toggle_LookingGlass@kolle.zip", "spices-id": 15, "author_id": "0", "last_edited": 1507404386, "uuid": "toggle_LookingGlass@kolle"}, "dgs-bpivaty@gmail.com": {"description": "Manage your DGS games", "icon": "/files/applets/dgs-bpivaty@gmail.com.png", "created": 1505061306, "screenshot": "/git/applets/dgs-bpivaty@gmail.com/screenshot.png", "name": "DGS Applet", "score": 0, "author_user": "bpivaty", "file": "/files/applets/dgs-bpivaty@gmail.com.zip", "spices-id": 299, "author_id": "0", "last_edited": 1505446204, "uuid": "dgs-bpivaty@gmail.com"}, "ScreenShot+RecordDesktop@tech71": {"description": "Take A Snapshot Or Record Your Desktop (recording requires the packages ffmpeg, xdotool & x11-utils to be installed)", "icon": "/files/applets/ScreenShot+RecordDesktop@tech71.png", "created": 1332758307, "screenshot": "/git/applets/ScreenShot+RecordDesktop@tech71/screenshot.png", "name": "ScreenShot+Record Desktop", "score": 13, "author_user": "icarter09", "file": "/files/applets/ScreenShot+RecordDesktop@tech71.zip", "spices-id": 41, "author_id": "0", "last_edited": 1532840997, "uuid": "ScreenShot+RecordDesktop@tech71"}, "clipboard-qr@wrouesnel": {"description": "Create QR codes from clipboard content", "icon": "/files/applets/clipboard-qr@wrouesnel.png", "created": 1419133131, "screenshot": "/git/applets/clipboard-qr@wrouesnel/screenshot.png", "name": "Clipboard QR code applet", "score": 3, "author_user": "wrouesnel", "file": "/files/applets/clipboard-qr@wrouesnel.zip", "spices-id": 213, "author_id": "0", "last_edited": 1520287448, "uuid": "clipboard-qr@wrouesnel"}, "cinnamon-timer@jake1164": {"description": "A timer app with visual and auditory notifications.", "icon": "/files/applets/cinnamon-timer@jake1164.png", "created": 1507925711, "screenshot": "/git/applets/cinnamon-timer@jake1164/screenshot.png", "name": "Timer with notifications", "score": 5, "author_user": "jake1164", "file": "/files/applets/cinnamon-timer@jake1164.zip", "spices-id": 302, "author_id": "0", "last_edited": 1527251595, "uuid": "cinnamon-timer@jake1164"}, "BgRadio@spacy01": {"description": "The most famous bulgarian radio and TV streams. Some of the streams are available only from bulgaria. To watch a TVs, you\\\\\'ll need to install rtmpdump and mpv packages.", "icon": "/files/applets/BgRadio@spacy01.png", "created": 1391005202, "screenshot": "/git/applets/BgRadio@spacy01/screenshot.png", "name": "Bulgarian Radio and TV Streams", "score": 9, "author_user": "spacy01", "file": "/files/applets/BgRadio@spacy01.zip", "spices-id": 174, "author_id": "0", "last_edited": 1514356563, "uuid": "BgRadio@spacy01"}, "places-with-terminal@mtwebster": {"description": "Access your places and bookmarks, or launch a terminal at that location", "icon": "/files/applets/places-with-terminal@mtwebster.png", "created": 1334972010, "screenshot": "/git/applets/places-with-terminal@mtwebster/screenshot.png", "name": "Places with Terminal Launcher", "score": 1, "author_user": "none", "file": "/files/applets/places-with-terminal@mtwebster.zip", "spices-id": 52, "author_id": "0", "last_edited": 1506285278, "uuid": "places-with-terminal@mtwebster"}, "redshift@marvel4u": {"description": "An app to change the red filter level for late night screen time. Requires redshift: sudo apt-get install redshift", "icon": "/files/applets/redshift@marvel4u.png", "created": 1499682606, "screenshot": "/git/applets/redshift@marvel4u/screenshot.png", "name": "Redshift", "score": 10, "author_user": "marvel4u", "file": "/files/applets/redshift@marvel4u.zip", "spices-id": 296, "author_id": "0", "last_edited": 1531684999, "uuid": "redshift@marvel4u"}, "tfmKeyboard@alexpp": {"description": "Touches d\\\\\'invocations personalis\\u00e9es et capture vid\\u00e9o du bureau en MP4", "icon": "/files/applets/tfmKeyboard@alexpp.png", "created": 1415872570, "screenshot": "/git/applets/tfmKeyboard@alexpp/screenshot.png", "name": "Transformice helper", "score": 0, "author_user": "none", "file": "/files/applets/tfmKeyboard@alexpp.zip", "spices-id": 207, "author_id": "0", "last_edited": 1505914100, "uuid": "tfmKeyboard@alexpp"}, "CommandRunner@appdevsw": {"description": "Applet runs script or application periodically and displays its output on the taskbar", "icon": "/files/applets/CommandRunner@appdevsw.png", "created": 1428393064, "screenshot": "/git/applets/CommandRunner@appdevsw/screenshot.png", "name": "CommandRunner", "score": 0, "author_user": "none", "file": "/files/applets/CommandRunner@appdevsw.zip", "spices-id": 226, "author_id": "0", "last_edited": 1532190813, "uuid": "CommandRunner@appdevsw"}, "ifstat@tagadan": {"description": "Show your internet usage in a smartphone style", "icon": "/files/applets/ifstat@tagadan.png", "created": 1404289429, "screenshot": "/git/applets/ifstat@tagadan/screenshot.png", "name": "Tight Network Usage Indicator", "score": 0, "author_user": "none", "file": "/files/applets/ifstat@tagadan.zip", "spices-id": 193, "author_id": "0", "last_edited": 1505491845, "uuid": "ifstat@tagadan"}, "extensions@dalcde": {"description": "Allows enabling and disabling of extensions with one click", "icon": "/files/applets/extensions@dalcde.png", "created": 1337306088, "screenshot": "/git/applets/extensions@dalcde/screenshot.png", "name": "Extensions Manager", "score": 0, "author_user": "none", "file": "/files/applets/extensions@dalcde.zip", "spices-id": 71, "author_id": "0", "last_edited": 1505297405, "uuid": "extensions@dalcde"}, "rwall@typicalfoobar": {"description": "Random Wallpaper Changer\\\\nVersion: 1.0.1", "icon": "/files/applets/rwall@typicalfoobar.png", "created": 1460523531, "screenshot": "/git/applets/rwall@typicalfoobar/screenshot.png", "name": "rwall", "score": 1, "author_user": "none", "file": "/files/applets/rwall@typicalfoobar.zip", "spices-id": 250, "author_id": "0", "last_edited": 1506905803, "uuid": "rwall@typicalfoobar"}, "temperature@fevimu": {"description": "Shows CPU Temperature", "icon": "/files/applets/temperature@fevimu.png", "created": 1355165487, "screenshot": "/git/applets/temperature@fevimu/screenshot.png", "name": "CPU Temperature Indicator", "score": 27, "author_user": "jaszhix", "file": "/files/applets/temperature@fevimu.zip", "spices-id": 106, "author_id": "0", "last_edited": 1526642421, "uuid": "temperature@fevimu"}, "ScreenShot@tech71": {"description": "Take a snapshot of your desktop or individual windows", "icon": "/files/applets/ScreenShot@tech71.png", "created": 1332303883, "screenshot": "/git/applets/ScreenShot@tech71/screenshot.png", "name": "ScreenShot", "score": 3, "author_user": "none", "file": "/files/applets/ScreenShot@tech71.zip", "spices-id": 35, "author_id": "0", "last_edited": 1530540897, "uuid": "ScreenShot@tech71"}, "localipswithsettings@edaubert": {"description": "Shows local IP addresses.", "icon": "/files/applets/localipswithsettings@edaubert.png", "created": 1487975404, "screenshot": "/git/applets/localipswithsettings@edaubert/screenshot.png", "name": "Local IPs with settings", "score": 0, "author_user": "edaubert", "file": "/files/applets/localipswithsettings@edaubert.zip", "spices-id": 283, "author_id": "0", "last_edited": 1502742907, "uuid": "localipswithsettings@edaubert"}, "vpnLookOut@claudiux": {"description": "A Cinnamon applet that watches over the VPN link, displays its status, allows to connect at start-up to the last VPN used, allows to reconnect the VPN link if it incidentally drops, and can stop or restart Transmission according to the state of the VPN.", "icon": "/files/applets/vpnLookOut@claudiux.png", "created": 1513401008, "screenshot": "/git/applets/vpnLookOut@claudiux/screenshot.png", "name": "VPN Look-Out Applet", "score": 5, "author_user": "claudiux", "file": "/files/applets/vpnLookOut@claudiux.zip", "spices-id": 305, "author_id": "0", "last_edited": 1528304201, "uuid": "vpnLookOut@claudiux"}, "sane-menu@nooulaif": {"description": "Cinnamon stock menu applet with improved search.", "icon": "/files/applets/sane-menu@nooulaif.png", "created": 1469114357, "screenshot": "/git/applets/sane-menu@nooulaif/screenshot.png", "name": "Sane Menu", "score": 2, "author_user": "none", "file": "/files/applets/sane-menu@nooulaif.zip", "spices-id": 258, "author_id": "0", "last_edited": 1506905821, "uuid": "sane-menu@nooulaif"}, "host-entries@hoffis-eck.de": {"description": "Enables/Disables Entries in /etc/hosts", "icon": "/files/applets/host-entries@hoffis-eck.de.png", "created": 1458235946, "screenshot": "/git/applets/host-entries@hoffis-eck.de/screenshot.png", "name": "Host Entries", "score": 0, "author_user": "none", "file": "/files/applets/host-entries@hoffis-eck.de.zip", "spices-id": 249, "author_id": "0", "last_edited": 1504146606, "uuid": "host-entries@hoffis-eck.de"}, "timeout@narutrey": {"description": "Automatically controlled time outs and breaks", "icon": "/files/applets/timeout@narutrey.png", "created": 1485904503, "screenshot": "/git/applets/timeout@narutrey/screenshot.png", "name": "Time Out", "score": 1, "author_user": "narutrey", "file": "/files/applets/timeout@narutrey.zip", "spices-id": 278, "author_id": "0", "last_edited": 1507314243, "uuid": "timeout@narutrey"}, "cinnamon-multi-line-taskbar-applet": {"description": "https://github.com/posto/cinnamon-multi-line-taskbar-applet", "icon": "/files/applets/cinnamon-multi-line-taskbar-applet.png", "created": 1364309578, "screenshot": "/git/applets/cinnamon-multi-line-taskbar-applet/screenshot.png", "name": "Cinnamon Multi-Line Taskbar", "score": 1, "author_user": "none", "file": "/files/applets/cinnamon-multi-line-taskbar-applet.zip", "spices-id": 123, "author_id": "0", "last_edited": 1494943805, "uuid": "cinnamon-multi-line-taskbar-applet"}, "sessionManager@scollins": {"description": "Provides easy access to shut down, restart, etc", "icon": "/files/applets/sessionManager@scollins.png", "created": 1391154907, "screenshot": "/git/applets/sessionManager@scollins/screenshot.png", "name": "Session Manager", "score": 10, "author_user": "collinss", "file": "/files/applets/sessionManager@scollins.zip", "spices-id": 175, "author_id": "0", "last_edited": 1526788973, "uuid": "sessionManager@scollins"}, "gpaste-reloaded@feuerfuchs.eu": {"description": "A complete rewrite of the GPaste applet based on the Gnome Shell extension", "icon": "/files/applets/gpaste-reloaded@feuerfuchs.eu.png", "created": 1441908357, "screenshot": "/git/applets/gpaste-reloaded@feuerfuchs.eu/screenshot.png", "name": "GPaste Reloaded", "score": 7, "author_user": "feuerfuchs", "file": "/files/applets/gpaste-reloaded@feuerfuchs.eu.zip", "spices-id": 237, "author_id": "0", "last_edited": 1523790260, "uuid": "gpaste-reloaded@feuerfuchs.eu"}, "radio@driglu4it": {"description": "This simple radio for Cinnamon. Require moc player. In setting you may add, edit and remove stations.", "icon": "/files/applets/radio@driglu4it.png", "created": 1501782307, "screenshot": "/git/applets/radio@driglu4it/screenshot.png", "name": "Radio++", "score": 5, "author_user": "Driglu4it", "file": "/files/applets/radio@driglu4it.zip", "spices-id": 297, "author_id": "0", "last_edited": 1523788665, "uuid": "radio@driglu4it"}, "bettersettings@bownz": {"description": "A Better Cinnamon Settings", "icon": "/files/applets/bettersettings@bownz.png", "created": 1332347980, "screenshot": "/git/applets/bettersettings@bownz/screenshot.png", "name": "Better Cinnamon Settings", "score": 2, "author_user": "none", "file": "/files/applets/bettersettings@bownz.zip", "spices-id": 36, "author_id": "0", "last_edited": 1521124118, "uuid": "bettersettings@bownz"}, "power-off@martin": {"description": "2-clicks power-off", "icon": "/files/applets/power-off@martin.png", "created": 1328097600, "screenshot": "/git/applets/power-off@martin/screenshot.png", "name": "power-off", "score": 0, "author_user": "none", "file": "/files/applets/power-off@martin.zip", "spices-id": 11, "author_id": "0", "last_edited": 1506538880, "uuid": "power-off@martin"}, "workspace-grid@hernejj": {"description": "2D workspace grid and switcher for Cinnamon", "icon": "/files/applets/workspace-grid@hernejj.png", "created": 1360720274, "screenshot": "/git/applets/workspace-grid@hernejj/screenshot.png", "name": "Workspace grid (2D) and switcher", "score": 4, "author_user": "hernejj", "file": "/files/applets/workspace-grid@hernejj.zip", "spices-id": 116, "author_id": "0", "last_edited": 1525543389, "uuid": "workspace-grid@hernejj"}, "website-notifier@cardsurf": {"description": "Shows a notification when a website updates", "icon": "/files/applets/website-notifier@cardsurf.png", "created": 1497629706, "screenshot": "/git/applets/website-notifier@cardsurf/screenshot.png", "name": "Website notifier", "score": 0, "author_user": "cardsurf", "file": "/files/applets/website-notifier@cardsurf.zip", "spices-id": 292, "author_id": "0", "last_edited": 1531549413, "uuid": "website-notifier@cardsurf"}, "hamster@projecthamster.wordpress.com": {"description": "Cinnamon applet for project hamster - the GNOME time tracker", "icon": "/files/applets/hamster@projecthamster.wordpress.com.png", "created": 1371756013, "screenshot": "/git/applets/hamster@projecthamster.wordpress.com/screenshot.png", "name": "Project Hamster Applet", "score": 1, "author_user": "none", "file": "/files/applets/hamster@projecthamster.wordpress.com.zip", "spices-id": 140, "author_id": "0", "last_edited": 1530133866, "uuid": "hamster@projecthamster.wordpress.com"}, "acerhk-ctl@mcnielcho.org": {"description": "Provides software interface to Acer hardware keys.  Requires installation of acerhk.ko.", "icon": "/files/applets/acerhk-ctl@mcnielcho.org.png", "created": 1423646679, "screenshot": "/git/applets/acerhk-ctl@mcnielcho.org/screenshot.png", "name": "AcerHK Control", "score": 0, "author_user": "none", "file": "/files/applets/acerhk-ctl@mcnielcho.org.zip", "spices-id": 219, "author_id": "0", "last_edited": 1505914100, "uuid": "acerhk-ctl@mcnielcho.org"}, "scripts@paucapo.com": {"description": "Menu applet for starting scripts", "icon": "/files/applets/scripts@paucapo.com.png", "created": 1396958696, "screenshot": "/git/applets/scripts@paucapo.com/screenshot.png", "name": "Scripts Menu", "score": 2, "author_user": "none", "file": "/files/applets/scripts@paucapo.com.zip", "spices-id": 185, "author_id": "0", "last_edited": 1525712527, "uuid": "scripts@paucapo.com"}, "placesCenter@scollins": {"description": "Provides an easy-to-read layout to access your places", "icon": "/files/applets/placesCenter@scollins.png", "created": 1365830340, "screenshot": "/git/applets/placesCenter@scollins/screenshot.png", "name": "Places Center", "score": 12, "author_user": "collinss", "file": "/files/applets/placesCenter@scollins.zip", "spices-id": 128, "author_id": "0", "last_edited": 1522103401, "uuid": "placesCenter@scollins"}, "vboxlauncher@mockturtl": {"description": "An applet to launch virtual machines.", "icon": "/files/applets/vboxlauncher@mockturtl.png", "created": 1371218518, "screenshot": "/git/applets/vboxlauncher@mockturtl/screenshot.png", "name": "Vbox Launcher", "score": 2, "author_user": "mockturtl", "file": "/files/applets/vboxlauncher@mockturtl.zip", "spices-id": 138, "author_id": "0", "last_edited": 1523018478, "uuid": "vboxlauncher@mockturtl"}, "xampp-panel@backids99": {"description": "A Panel Menu for XAMPP Web Developers", "icon": "/files/applets/xampp-panel@backids99.png", "created": 1374369951, "screenshot": "/git/applets/xampp-panel@backids99/screenshot.png", "name": "Xampp Panel Menu", "score": 2, "author_user": "none", "file": "/files/applets/xampp-panel@backids99.zip", "spices-id": 146, "author_id": "0", "last_edited": 1521124086, "uuid": "xampp-panel@backids99"}, "turbonote@iksws.com.br": {"description": "TurboNote Plugin Applet Cinnamon", "icon": "/files/applets/turbonote@iksws.com.br.png", "created": 1429280988, "screenshot": "/git/applets/turbonote@iksws.com.br/screenshot.png", "name": "TurboNoteExtension", "score": 1, "author_user": "none", "file": "/files/applets/turbonote@iksws.com.br.zip", "spices-id": 227, "author_id": "0", "last_edited": 1502960106, "uuid": "turbonote@iksws.com.br"}, "azan@fahri.nurul.id": {"description": "Azan is an Islamic prayer times application", "icon": "/files/applets/azan@fahri.nurul.id.png", "created": 1511919006, "screenshot": "/git/applets/azan@fahri.nurul.id/screenshot.png", "name": "Azan", "score": 2, "author_user": "fahrinh", "file": "/files/applets/azan@fahri.nurul.id.zip", "spices-id": 303, "author_id": "0", "last_edited": 1525650849, "uuid": "azan@fahri.nurul.id"}, "cpu-monitor-text@gnemonix": {"description": "A sim'

(Pdb) urlopen(url, timeout=3).read(65147)

*** socket.timeout: The read operation timed out

@deivid-rodriguez
Copy link

Could be related to #7793, maybe?

@collinss
Copy link
Member

collinss commented Aug 8, 2018

Yeah, it would stop at that line. It basically sends a request to the server for more data and then waits until that data arrives at your computer before continuing on. Basically, something is preventing the data from getting back to your computer. There's basically 4 types of things that could be causing that.

  1. The request never leaves your computer
  2. The request is sent but isn't reaching the server
  3. The request reaches the server but something goes wrong and the data never gets sent
  4. The data gets sent but never reaches your computer
    The one thing I am reasonably certain of is that it is not caused by Cinnamon. It could be related to the issue you posted because they both involve an inability to communicate with the server. It would be interesting to know if you could reproduce that issue as well. Both work fine for me, so it might be something about how (or where) you're connecting to the internet.

@collinss
Copy link
Member

collinss commented Aug 8, 2018

Actually, now that I think about it, there could be another possibility. It could just be taking a really long time with that particular byte and it's just hitting the timeout. Try increasing the timeout on line 387 to see if that fixes your issue.

@deivid-rodriguez
Copy link

deivid-rodriguez commented Aug 8, 2018

Since I can't get the "Downloads" window to list any plugins due to this issue, it's impossible that I can reproduce that issue...

I guess this is an issue with python, or my python installation, but it's certainly not my internet connection, since every other program connects just fine to the internet, and even this program connects too. Also, note that this is specific to the URL in cinammon-spices. If I run

urlopen("https://google.com", timeout=3).read(1000000)

on the break point I set, it dumps the full URL properly.

@deivid-rodriguez
Copy link

Nah, increasing the timeout does not help.

@collinss
Copy link
Member

collinss commented Aug 8, 2018

Since I can't get the "Downloads" window to list any plugins due to this issue, it's impossible that I can reproduce that issue...

Oh, good point. Can you open the link directly in your web browser? Just trying to rule stuff out.

@deivid-rodriguez
Copy link

deivid-rodriguez commented Aug 8, 2018

Yeah. As I said, internet connection works just fine everywhere else.

I can reproduce this with a simple script:

#!/usr/bin/python3

from urllib.request import urlopen

data = urlopen("https://cinnamon-spices.linuxmint.com/json/applets.json").read()

print(data)

So cinnamon itself is not the cause as we suspected. Not sure if this is an issue with python, with my python installation or with the cinnamon-spices.linuxmint.com server configuration, maybe?

@deivid-rodriguez
Copy link

It lies probably on my side, since I'm the only one getting this issue, but since this is system's python, and I didn't touch that, it seems weird...

@deivid-rodriguez
Copy link

Now I tried installing another python, and the same issue reproduced, so I guess that rules out something with my specific python installation. I'm lost. 😞

@collinss
Copy link
Member

collinss commented Aug 8, 2018

Do you get the same with themes, extensions and desklets?

@deivid-rodriguez
Copy link

Yes.

@deivid-rodriguez
Copy link

deivid-rodriguez commented Aug 8, 2018

I asked in the python forum and I got suggested to use requests instead. And that did the trick... So to me it looks like a problem with the standard library...

@deivid-rodriguez
Copy link

Using urllib3 directly also works, as expected.

import urllib3

http = urllib3.PoolManager()
response = http.request('GET', 'https://cinnamon-spices.linuxmint.com/json/applets.json')
print(response.data)

@collinss
Copy link
Member

collinss commented Aug 9, 2018

I think the reason we don't use that method is the lack of report hooks - meaning we wouldn't be able to display progress on the slider. I just checked the documentation for urllib3 and I can't find anything in there that would allow us to do that. I still have no idea what's causing your issue either, and without being able to reproduce it myself, I can't really get to the bottom of this. One more thing I wanted to try though, is could you remove the timeout completely from that line? I believe we added that in the most recent version, and it's the most likely culprit I can think of. IIRC when adding it I had some weird issues until I got it to work. If that solves it for you, I might have to implement the timeout manually.

@deivid-rodriguez
Copy link

Hei, thanks for your help. I understand that the inability to reproduce issues makes it harder to help... I maintain software too 😃. But I appreciate a ot that you still take the time to suggest ideas ❤️.

Regarding "report hooks"... I don't fully understand what you mean. As long as you to download the file in chunks, you should be able to do the same thing the code is currently doing and keep those "report hooks", right?

Regarding the timeout. No, that didn't fix it. 😞

@deivid-rodriguez
Copy link

I had an idea an changed my internet connection to use my mobile connection instead of my home's WiFi. That fixed the problem and I was able to install applets again. So it's definitely related to how my WiFi connection works. Not a permanent solution but at least I have a workaround...

@deivid-rodriguez
Copy link

@collinss So I finally got to the bottom of this thanks to the help provided in the python issue tracker. Please read the issue I reported https://bugs.python.org/issue34357 (and the actual problem here which I got pointed to https://bugs.python.org/issue12849).

Apparently, the server is sometimes truncating responses when "Connection: close" is sent, and that's something it should not do. So it might be worth reviewing the configuration of that server. If you don't manage to figure that out, the other approach would be to use the underlying http.client library instead, and explicitly not sent the "Connection: close" header. The better fix would be to fix the server configuration but I'm not sure how hard that could be 🤷‍♂️.

@deivid-rodriguez
Copy link

The following did the trick for me

diff --git a/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py b/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py
index 8f7890f9..79a18ece 100644
--- a/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py
+++ b/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py
@@ -19,7 +19,8 @@ except Exception as detail:
     print(detail)
     sys.exit(1)
 
-from urllib.request import urlopen
+from http.client import HTTPSConnection
+from urllib.parse import urlparse
 
 try:
     import json
@@ -381,21 +382,27 @@ class Spice_Harvester(GObject.Object):
         #interrupted.
         count = 0
         blockSize = 1024 * 8
         blockSize = 1024 * 8
+        parsed_url = urlparse(url)
+        host = parsed_url.netloc
         try:
-            with urlopen(url, timeout=15) as urlobj:
-                assert urlobj.getcode() == 200
-
-                totalSize = int(urlobj.info()['content-length'])
-
-                while not self._is_aborted():
-                    data = urlobj.read(blockSize)
-                    count += 1
-                    if not data:
-                        break
-                    if not binary:
-                        data = data.decode("utf-8")
-                    outfd.write(data)
-                    ui_thread_do(reporthook, count, blockSize, totalSize)
+            connection = HTTPSConnection(host, timeout=15)
+            headers = { "Accept-Encoding": "identity", "Host": host, "User-Agent": "Python/3" }
+            connection.request("GET", parsed_url.path, headers=headers)
+            urlobj = connection.getresponse()
+            assert urlobj.getcode() == 200
+
+            totalSize = int(urlobj.info()['content-length'])
+
+            while not self._is_aborted():
+                data = urlobj.read(blockSize)
+                count += 1
+                if not data:
+                    break
+                if not binary:
+                    data = data.decode("utf-8")
+                outfd.write(data)
+                ui_thread_do(reporthook, count, blockSize, totalSize)
         except Exception as e:
             raise e

@clefebvre
Copy link
Member

Pushed to master. Thanks.

@deivid-rodriguez
Copy link

Wow, thanks @clefebvre!

Curly060 pushed a commit to Curly060/Cinnamon that referenced this issue Jan 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants