Tag Archives: Windows

Streamlink Twitch GUI 1.2.0 Adds Support For Communities And Team Pages, Basic Hotkeys

Streamlink Twitch GUI (previously Livestreamer Twitch GUI) is a multi-platform Twitch.tv browser.

The application is powered by Node.js, Chromium and Streamlink, though it can still use Livestreamer (which is no longer maintained) too.

Streamlink Twitch GUI
Using it, you can easily browse Twitch.tv and open streams in your favorite video player, like VLC, Totem, mpv and others.

Streamlink Twitch GUI features:

  • supports both Streamlink as well as the deprecated Livestreamer;
  • watch streams in the video player of your choice;
  • watch multiple streams at once;
  • integrated Twitch.tv login (OAuth) with access to subscriptions and followed channels and games;
  • follow your favorite channels and games;
  • filter streams by channel or broadcaster language;
  • displays desktop notifications whenever a followed channel starts broadcasting;
  • join the Twitch chat using different chat applications;
  • customizable settings for streams (like default quality and buffer), video player parameters, GUI and more;
  • individual channel settings;
  • tray / appindicator which allows pausing the notifications;
  • light and dark themes.

Streamlink Twitch GUI 1.2.0

Streamlink Twitch GUI 1.2.0 was released recently, upgrading to Twitch API v5. Thanks to this, the application has received support for browsing communities and accessing team pages.

Another fairly important change in this release is the addition of basic hotkeys:
  • 0: go to homepage
  • 1-8: visit various main menu routes (9 reserved for future VODs menu)
  • F1: about
  • F10: watching
  • F11: login/logout
  • F12: settings
  • Slash: focus search bar
  • Esc/Backspace: close modal dialog (or cancel action)
  • Enter: confirm modal dialog and close it
  • C: open chat (stream popup or channel page)
  • F: follow / unfollow channel
  • E: open Twitch emotes website (stream popup or channel page)
  • U: copy channel URL (stream popup or channel page)
  • S: subscribe channel (stream popup or channel page)
  • Q/X: Close stream (stream popup)
  • L: Toggle Streamlink/Livestreamer log (stream popup)

Other changes in Streamlink Twitch GUI 1.2.0 include displaying a confirmation when unfollowing a channel or game, restructured main menu as well as channel pages and followed games menu, along with various bug fixes.
A complete changelog is available on GitHub.

Note that Streamlink Twitch GUI uses VLC to play Twitch streams by default. if VLC is not installed or you want to use a different player, go to the app Settings > Player > Video player, then enter the executable for a different video player (e.g.: “mpv” – without the quotes).

Download Streamlink Twitch GUI

Download Streamlink Twitch GUI (binaries available for Linux: 32bit and 64bit generic binaries, Windows: 32bit and 64bit and macOS 32bit)

For how to install Streamlink Twitch GUI, see THIS page.

Note that to be able to use Streamlink Twitch GUI, you’ll need Streamlink or Livestreamer. However, Livestreamer is no longer maintained and you may encounter issues, so Streamlink is recommended!
To install Streamlink Twitch GUI in Ubuntu, Linux Mint and derivates, use the following instructions.

1. Install the required dependencies

Install Streamlink from the main WebUpd8 PPA (recommended)

Alternatively, you can also install Livestreamer:

sudo apt install livestreamer

If you want to use Livestreamer instead of Streamlink you’ll need to open the Streamlink Twitch GUI settings, and on the Streamlink tab, select Livestreamer.

You’ll also need x11-utils and xdg-utils. Install these packages in Ubuntu / Linux Mint using the following commands:
sudo apt install x11-utils xdg-utils

2. Download and install Streamlink Twitch GUI

Download the latest Streamlink Twitch GUI binary from GitHub, place it in your home folder and extract it. Then, you can use the command below to move it to /opt:
cd && sudo mv streamlink-twitch-gui /opt/

3. Create a menu entry for Streamlink Twitch GUI

To create a menu entry, simply run the menu entry creation script that comes with Streamlink Twitch GUI:
/opt/streamlink-twitch-gui/add-menuitem.sh
If after running the command above you can’t find Streamlink Twitch GUI in the menu / Unity Dash or the icon is missing, restart the session (logout / login).

Read More

Rclone 1.36 Released With SFTP And Local Symlinks Support, More

cloud storage

Rclone 1.36 was released recently, bringing support for SFTP, local symbolic links support, mount improvements, along with many other new features and bug fixes.
For those not familiar with Rclone, this is a cross-platform command line tool for synchronizing files and folders to multiple cloud storages, which supports Dropbox, Google Drive, Amazon S3, Amazon Drive, Microsoft One Drive, Yandex Disk, and more.

It can be used to sync files either from your machine or from one cloud storage to another.
As a reminder, Rclone doesn’t provide real-time file monitoring, and the synchronization is performed on demand (so you must run it manually or using a script, etc.)

For more about Rclone, check out our initial article.

Important changes in Rclone 1.36 include:

  • SFTP remote;
  • re-implement sync routine to work a directory at a time reducing memory usage;
  • logging revamped to be more inline with rsync;
  • implement –backup-dir and –suffix;
  • implement –track-renames;
  • add time-based bandwidth limits;
  • rclone cryptcheck: checks integrity of crypt remotes;
  • allow all config file variables and options to be set from environment variables;
  • add –buffer-size parameter to control buffer size for copy;
  • comply with XDG Base Directory specification (this moves the default location of the config file in a backwards compatible way);
  • MIPS/Linux big and little endian support;
  • local:
    • implement -L, –copy-links flag to allow rclone to follow symlinks;
    • open files in write only mode so rclone can write to an rclone mount;
  • mount:
    • implement proper directory handling (mkdir, rmdir, renaming);
    • make include and exclude filters apply to mount;
    • implement read and write async buffers – control with –buffer-size;
  • crypt:
    • add –crypt-show-mapping to show encrypted file mapping;
    • fix crypt writer getting stuck in a loop (this bug had the potential to cause data corruption when reading data from a network based remote and writing to a crypt on Google Drive).

For a complete changelog, see THIS page.

To use Rclone with a graphical user interface, you may want to check out RcloneBrowser (WebUpd8 provides an Ubuntu PPA for RcloneBrowser so you can easily installing updates).

Download Rclone

(binaries available for Linux: 32bit, 64bit, arm, arm64 and mips big and little endian, Windows :32bit and 64bit, MacOS: 32bit and 64bit, FreeBSD: 32bit, 64bit and arm, and more)

In Linux distributions that support snap packages (Ubuntu and many others), you can install rclone using the following command:

sudo snap install rclone --classic

If you already had Rclone installed using a snap, it should already be up to date (this depends on the snapd version you’re using). Alternatively, you can update it using the following command:

sudo snap refresh rclone --classic

For how to use Rclone, you may want to check out its documentation.

Important: if you use the Rclone snap package, you won’t be able to mount any cloud storage (bug report). When attempting to mount Google Drive, Dropbox, etc., you’ll get an error similar to the following:
Fatal error: failed to mount FUSE fs: fusermount: exec: "fusermount": executable file not found in $PATH
The solution, at least for now, use the Rclone binary downloaded from its website.

To download the source, report bugs, etc., see the Rclone GitHub page.

Read More

Import Your Geotagged Photos In Google Earth With Mapollage (KML File Generator)

Mapollage is a Java tool that can be used to put your geotagged photos on the map by creating an KML file that can be used with Google Earth.
mapollage google earth

Here’s a quick demo of a KML file I created using Mapollage, loaded in Google Earth for Linux:

mapollage google earth

Mapollage features:

  • Create kml folders by directory name, date pattern and regex;
  • Placemark names can be set to filename and date pattern;
  • Placemark symbol can be set to pin or photo, with customizable scale and zoom;
  • Dynamic description generator;
  • Customizable photo reference and size;
  • Draw path between placemarks.

The application was updated to version 1.0.4 recently, bringing options to rotate thumbnails, add .jpg extension to thumbnails, as well as a filter that allows excluding file paths using a filter.
To use Mapollage, you’ll need Java 8 (both OpenJDK and Oracle Java 8 should work), and obviously, geotagged photos. If your photos are not geotagged, there are various tools out there to do this manually, like ExifTool (here’s a quick guide for geotagging photos using ExifTool).

Running Mapollage in Linux is fairly easy. Either directly double click the .jar file or right click it and select Open With > Oracle Java 8 Runtime or OpenJDK Java 8 Runtime.
Note that for OpenJDK, you’ll need to make the file executable (with Nemo / Nautilus, right click the file, select Properties, then on the Permissions tab, enable “Allow executing file as program”).
Once you start Mappolage, create a new profile (1), add a folder (2) containing geotagged photos and click the start button (3) to generate a KML file:

mapollage

You can change the placemark symbol (photo / pin) and name (filename / date / no name) from the Placemark tab.
That’s it. The newly created KML file can now be opened with Google Earth. Your photos should show up under Temporary Places, as you can see in the Google Earth screenshot above.

Download Mapollage

Arch Linux users can install Mapollage via AUR.

To report bugs, download the source code, etc., see the Mapollage GitHub page.

Read More

Firefox 52 Released With WebAssembly Support, Removes NPAPI Plugins Other Than Flash (Java, Silverlight)

Firefox 52 was released today and it includes two major changes: support for WebAssembly and the removal of support for NPAPI (Netscape Plugin API) plugins like Silverlight, Java, and others, with the exception of Flash.

Firefox 52 plugins

Dropping support for NPAPI plugins isn’t something new in the web browsers world – Google Chrome did this back in 2015, leaving Mozilla Firefox as the best choice for those who had to use such plugins. But that’s about to end, with Firefox 52.

Furthermore, Mozilla plans to activate Flash in Firefox only with user consent. This change is expected “later this year”.

In case you’re wondering about the Firefox NPAPI plugin that allows installing extensions for GNOME Shell, it no longer works. However, Chrome GNOME Shell doesn’t only support Chrome-based web browsers, but also Firefox.

As for Google Hangouts, audio and video calls currently don’t work in Firefox 52 due to dropping support for NPAPI plugins, however, Google is working on a “fix”.

I should also add that while Firefox 52 no longer supports NPAPI plugins other than Flash, there’s a way around this – see below.

Another major change in the latest Firefox 52 is the addition of WebAssembly, a standard that allows running complex web-based games and applications at near-native performance, without using plugins.

You can learn more about WebAssembly by watching the video below:


(direct video link)

Other changes in the latest Firefox 52 include:
  • Sync can now send and open tabs from one device to another;
  • improved the download experience:
    • added notifications in the toolbar when downloads fail;
    • Firefox now provides quick access to the latest 5 downloads instead of 3;
    • the buttons for canceling and restarting downloads are now larger;
  • security / privacy:
    • implemented the Strict Secure Cookies specification which forbids insecure HTTP sites from setting cookies with the “secure” attribute;
    • added warnings for non-secure HTTP pages with logins;
    • removed Battery Status API to reduce fingerprinting of users by trackers;
  • developer:
    • enabled CSS Grid Layout;
    • improved screen sharing security, which now shows a preview and no longer requires a whitelisted domain;
    • redesigned the Responsive Design Mode (can be accessed from the Web Developer submenu) to include device selection, network throttling, and more.

A complete list of changes can be found HERE.

How to continue using NPAPI plugins like Java with Firefox 52

Firefox 52 ESR plugins

If you need to use NPAPI plugins such as Java, you may think you can simply not upgrade to the latest Firefox 52, but that’s a bad idea beause you won’t take advantage of the latest security updates.

However, there is a way to continue using NPAPI plugins in Firefox – use Firefox ESR (Extended Support Release) instead.

The latest Firefox 52 ESR continues to allow using NPAPI plugins, and it is supported until May 2018.

Download Mozilla Firefox

For Ubuntu / Linux Mint users, the latest Firefox 52 should be available in the official repositories soon.

To continue using NPAPI plugins other than Flash, get Firefox ESR (not yet updated to version 52 at the time I’m posting this article).
After downloading the latest Firefox ESR for Linux, extract it and simply double click on the “firefox” executable to run it. To create a launcher for it (so it shows up in the menu), you can use a tool such as MenuLibre (it’s available in the official Ubuntu / Linux Mint repositories).

Read More

Lightweight Paint Software mtPaint 3.50 Dev Available In PPA For Ubuntu or Linux Mint

mtPaint is a lightweight open source paint application for Linux and Windows. It is is aimed at creating indexed palette images and pixel art, and is designed to be simple and easy to use.

mtPaint 3.50

While the last stable mtPaint version was released back in 2011, there have been quite a few development releases since then, with the last one dating to June, 2016. I couldn’t find a PPA with the latest mtPaint 3.50 development releases, so I created one to make it easy to install in Ubuntu and Linux Mint.


mtPaint features:

  • image manipulation:
    • quickly transform image gamma, brightness, contrast, saturation, hue, posterize from a single dialog, and preview the results in real time;
    • apply various effects such as invert, greyscale, isometric transformations, edge detect, sharpen, unsharp mask, soften, Gaussian blur, emboss, bacteria;
    • use gamma correction on effects to improve the quality of various effects;
    • crop images;
    • resize and rescale the canvas;
  • pixel art:
    • edit indexed palette or RGB images;
    • open and save as BMP, GIF, JPEG, LSS, PNG, TGA, TIFF, XPM, XBM files;
    • extensive palette features – load, save, sort, edit, posterize, quantize, remove duplicate colors, remove unused colors, color protection, palette shifting;
    • supports up to 100 layers;
    • create animations by moving layers, or shifting palettes;
    • create animated GIF’s using Gifsicle;
    • tools to shuffle pixels, flood fill, draw straight lines, smudge, clone, paste text, draw/fill rectangle/ellipses;
  • interface:
    • keyboard shortcuts;
    • easily toggle toolbars on/off;
    • horizontal and vertical split view mode;
    • pixel grid for guidance at high levels of zoom;
    • up to 1000 undo steps.

The latest mtPaint 3.50 development release (3.49.12) ships with a huge list of new features and improvements, most notably:
  • scripting (from the menu select Image > Script) and command line (allows adding a script without the GUI, by using “mtpaint –cmd”) mode added;
  • rendering now uses multiple threads to utilize all available CPU cores;
  • keyboard shortcuts can now be customized (Help > Keyboard shortcuts);
  • added optional gamma correction for painting and masking (Preferences > General > Use gamma correction when painting);
  • text tools now allow selection of DPI value, and alignment for multiline text;
  • composite images now can have alpha transparency, when background is non-opaque;
  • color transform and source selection added to blend mode options;
  • multiple clone tool improvements;
  • raw RGB palette files (6-bit PAL and 8-bit ACT) can now be loaded/saved via the Palette menu;
  • new image format PMM (Portable MultiMap) added for interoperable storage and exchange of images;
  • dimensions can now be specified when loading SVG files;
  • lasso tool can be configured to shrink selection based on the selection channel – right click the tool icon;
  • zoom is now up to 8000%;
  • animation frames now can be saved in any suitable supported file format;
  • many other changes and bug fixes.

A complete changelog can be found HERE.

Install the latest mtPaint development release in Ubuntu or Linux Mint via PPA

mtPaint 3.40 (stable) is available in the official repositories so if you want to use the old version, released back in 2011, you can install it using the following command:
sudo apt install mtpaint

To install the latest mtPaint 3.50 development release (version 3.49.12 at the time I’m writing this article) in Ubuntu or Linux Mint, you can use the new WebUpd8 mtPaint PPA. 
I decided to create a new PPA so you can easily purge the PPA to go back to the version available in the official Ubuntu / Linux Mint repositories, without affecting other packages.
Add the PPA and install the latest mtPaint 3.50 development release in Ubuntu 16.10, 16.04 or 14.04 / Linux Mint 18.x or 17.x by using the following commands:
sudo add-apt-repository ppa:webupd8team/mtpaint
sudo apt update
sudo apt install mtpaint

I also uploaded the latest mtPaint documentation to the PPA, as a separate package. To install it (it’s listed as a “recommended” package and it will be automatically installed in Ubuntu in most cases, but not in Linux Mint), after adding the PPA, use the following command:
sudo apt install mtpaint-handbook

The documentation can be accessed from the mtPaint Help menu.

If you don’t want to add the PPA, you can grab the deb from HERE (but you won’t receive any updates!).
For other Linux distributions, download the latest mtPaint source code from GitHub.
Windows users can download mtPaint stable from SourceForge.

How to downgrade mtPaint to the version available in the Ubuntu repositories

If for some reason you don’t want to use the latest mtPaint 3.50 development release and you want to go back to the version available in the official Ubuntu repositories, you can use PPA Purge. 
PPA purge will disable the WebUpd8 mtPaint PPA and downgrade mtPaint. To do this, use the following commands:
sudo apt install ppa-purge
sudo ppa-purge ppa:webupd8team/mtpaint

Read More

How To Use Plex To Cast Local Videos To Chromecast (From Your Desktop w/ Optional Mobile App)

This is a long overdue article and I decided to post it so I can simply send it to all those who ask me about the best but also easiest way to play local videos on a Chromecast.

Some may prefer other ways of playing local videos on Chromecast, including using a command line tool such as stream2chromecast, pulseaudio-dlna to  play music from a computer to a Chromecast, as well as the VideoStream Chromecast extension (which I hear is unreliable lately).

Plex Ubuntu

Plex is, however, the complete solution for all local media streaming to Chromecast needs, and is fairly easy to set up, despite my long article.
It can be used to stream local videos (and can transcode videos not supported by Chromecast), music, and photos, both in your local network as well as remotely, e.g. to a hotel or a friend’s house.
Furthermore, Plex Media Server is cross-platform, so it can be installed on an a Linux, FreeBSD, Windows or Mac computer, as well as on NAS.

I should also mention that while Plex is freemium, using it to cast local media to a Chromecast doesn’t require any paid features, for either Plex Media Server, or the mobile applications.
Plex can be used with a lot of players, like smart TV and game console apps, it’s DLNA compliant, etc., but I focus on using it with a Chromecast.

This article includes an short introduction to Plex for those who are not familiar with it, installing and running Plex for the first time, some configuration tips and using Plex with a Chromecast (from a desktop, by using the Plex web app, or from an Android or iOS device, by using the Plex mobile app, which can be used to cast, as well as a remote).

Quick Plex introduction

Plex is a freemium client-server media player which consists on two components.
The first is the server component, Plex Media Server, which needs to be installed on a Computer (running Linux, Mac, Windows, FreeBDS) or a NAS, and is used to index, organize, stream the the local content, and optionally transcode it.
The second component is the player, used to stream the content from the Plex Media Server on other devices. There are Plex applications available for mobile devices, smart TVs, and more, as well as a web UI which comes by default with Plex Media Server.

I should also note that Plex Home Theater, a GUI desktop player for Plex, was discontinued. There’s another desktop app, called Plex Media Player, which uses mpv under the hood, but sadly, there are no Linux binaries and building it from source requires quite a bit of work.

One such player is the Plex mobile app (available for Android and iOS), which can be used to play media from your Plex Media Server on your mobile device (but this feature is not free), or to cast to a Chromecast device (feature which is free) and control the playback.

Plex Android

If you’re interested in what are the limitation / free functionality of the Android and iOS apps, visit the following links:

I won’t get into details about all the features supported by Plex here. Instead, see its features page – make sure to also check out the free vs premium feature list. Don’t worry though, pretty much any feature you’d need for using Plex with a Chromecast is available for free.
I do have to mention that one of the most important Plex features, which is its addons support. Plex addons are called “channels”, and include video websites, news apps, and much more.

Plex Media Server channels

There are both official and third-party Plex channels. There are even unofficial channels that allow streaming Torrents, similar to the famous PopcornTime app (some may be illegal in your country!).
You can read more about Plex channels HERE.
I also want to mention a couple of features that are pretty important for using Plex to stream local content to a Chromecast.
One such feature is the ability to transcode videos that aren’t supported by Chromecast. This is very important because by default, Chromecast devices have limited media support.
Another important feature, at least for non-native English speakers, is subtitles support. Plex not only supports local subtitles, but it can also automatically download subtitles from OpenSubtitles. Furthermore, it can even download subtitles for multiple languages.

Download / install Plex Media Server (and mobile apps)

Before proceeding, it’s important to mention that Plex has a couple of requirements
The first is that you’ll need to create a Plex account (free)
And the second, which is pretty important, is that Plex Media Server needs to run on a decent PC for transcoding (Intel Core i3 or fast is listed as a minimum requirement). Without transcoding, some videos won’t be playable on your Chromecast.

That said, let’s proceed.

1. Create a free Plex account

2. Download Plex Plex Media Server (for your computer / NAS)

The Plex downloads page offers binaries for Linux, Windows, Mac, NAS, as well as Linux (Ubuntu, Fedora, CentOS), and it’s very easy to install.

I do have a note there though. If you use Ubuntu, you can add the Plex official repository, which is useful to get automatic updates without having to download the packages manually. To add the Plex Ubuntu repository, use the following commands:
echo "deb https://downloads.plex.tv/repo/deb/ public main" | sudo tee /etc/apt/sources.list.d/plexmediaserver.list
wget https://downloads.plex.tv/plex-keys/PlexSign.key -O - | sudo apt-key add -
sudo apt update

Optionally, you can skip downloading the Plex Media Center binary manually and simply install it from the newly added repository:
sudo apt install plexmediaserver

There’s also a CentOS and Fedora repository which you’ll find HERE.

3. (Optional) Download the Plex Android or iOS app

Running Plex and some optional configuration tips

Plex can pretty much be used immediately after setting up your local library, but there are a few things to note.

Once installed, Plex should start automatically on Linux (start it from the menu on Windows). To access the Plex hosted web app, visit https://plex.tv/web and using your Plex account login.

You can also launch the local Plex web app, by visiting http://localhost:32400/web in a web browser. This is useful for managing the server without an Internet connection.

An Internet connection is required to stream from Plex to a Chromecast device though – in fact, Chromecast doesn’t work without an Internet connection anyway.

The first time you visit this URL, you’ll need to complete the initial setup, which asks you to enter a name to your new Plex server, enable or disable an option to allow accessing your Plex Media Server remotely, and add your media library.
Here are a few server settings I recommend changing after completing the initial setup:

1. Enable library auto-updating.

By default, the library is not updated when new files are added. I suggest you change this. Go to Settings > Server > Library and enable “Update my library automatically” and “Run a partial scan when changes are detected”:

Plex library update settings

On Linux, you’ll also see an option to include music libraries in automatic updates (you need to click “Show Advanced” in the top right-hand side to access this option), but that may cause issues if you have a large music library.

2. Enable subtitles.

To enable automatic subtitle downloading from opensubtitles.org, head to Settings > Server > Agents and:

– for Movies, click on the “Movies” tab. Then on the the “Plex Movie” or “The Movie Database” sub-tabs (yes, that’s a bit confusing) – depending which one you choose for your collection (or you can just do this for both) -, check the box next to “OpenSubtitles.org:

Plex subtitle settings

– for TV shows, click on the “Shows” tab, then on the “TheTVDB” or “The Movie Database” subtabs (or both), and enable “OpenSubtitles.org”:

Plex subtitle settings

You may also want to configure the OpenSubtitles.org agent – to do this, click on the gear icon on the right. This allows logging in to your OpenSubtitles.org account and selecting the subtitle language. It even allows selecting multiple languages:

Plex subtitle settings

For local subtitles, in the same places (Movies/Shows tabs), enable “Local Media Assets”:

Plex subtitle settings

To set the preferred subtitle language and mode, see the Settings > Server > Languages page:

Plex subtitle settings
For more subtitle options, including extra subtitle providers, I recommend the Sub-Zero Plex addon (available in the Official Plex Channel Directory). 
For changing subtitles automatically to UTF-8, so they are displayed properly on Plex, you may want to check out the SRT2UTF-8 addon (unofficial).

3. Transcoding configuration.

By default, Plex transcodes only media that’s not supported by the device that tries to play it. That should be ok for most users, but depending on your computer, you can change this to prefer higher speed encoding, higher quality encoding, along with an option to “make my CPU hurt”.

These options are available in the Server settings, under “Transcoder”:

Plex subtitle settings

Using Plex (web app / mobile app) to stream to a Chromecast

To cast from a browser / desktop, you’ll need Google Chrome (the Cast extension is no longer required, and it has been discontinued).
Note that the Plex Web App streams content directly to the Chromecast (to the Plex Chromecast app). It does not cast the tab! That means you can even close the web browser after starting casting, and Plex will continue to cast.
To cast from Google Chrome, you need to click on the Plex cast icon (not the browser cast icon!), select “Cast…”, then select your Chromecast device:

Plex Chrome Chromecast stream
Plex Chrome Chromecast stream

That’s it. You can now simply click on some video, or other media, and it should be streamed to your Chromecast:

Streaming from Android or iOS is the same as for any other mobile application with Chromecast support. Simply click the Cast icon and select the Chromecast:

Sometimes the Plex Android app doesn’t find any Chromecast device for me, but that’s solved by clicking on the refresh icon from the Cast menu.
What’s important to mention here is that if you started casting from your desktop, using Google Chrome, you can then control the playback using the Plex mobile application. The other way around works as well.
For more about using Plex, check out its documentation.

Read More

WeatherDesk Changes Your Wallpaper Based On Current Weather Conditions

WeatherDesk is a Python3 tool that allows using a wallpaper that changes based on the weather and optionally, time of day. It supports most Linux desktop environments as well as Windows and Mac.

WeatherDesk weather-based wallpaper Linux

WeatherDesk features:

  • change the background based on the current weather conditions;
  • optionally change the background based on the time of day. This supports 4 variations: day/night, day/evening/night and morning/day/evening/night;
  • supports most Linux desktop environments, including Cinnamon, GNOME, Unity, Xfce, LXDE, LXQt, Pantheon, MATE, and more;
  • automatically detects your current city using ipinfo.io. In case this fails or you simply want to use a different city, you can manually specify the city as a command line argument
  • you can specify the image format, update interval, and more.

KDE Plasma 5 is not listed as supported on the WeatherDesk GitHub page, but looking at the code it appears that it might work. If you test WeatherDesk with Plasma 5, let us know if it works in the comments!
The tool requires a set of images named according to some naming rules, so don’t expect it to alter your current desktop background or anything like that.

WeatherDesk weather-based wallpaper Linux

While WeatherDesk doesn’t come with a built-in wallpaper set, its GitHub page points to a premade set, called FireWatch, available HERE (here’s how it looks), which I’ll use in the instructions below.

The FireWatch wallpaper set doesn’t seem to differentiate between cloudy, normal and windy weather, but you can further tweak it yourself if you want it to be more accurate and your GIMP / Photoshop skills allow it. The set does include proper images for rain, snow, and thunder.

Installing and using WeatherDesk

1. Download / install WeatherDesk

WeatherDesk is available as two simple Python3 scripts that can run from the directory you download them to. You can grab the code from GitHub or simply click here to download the latest code from Git as .tar.gz.

To simplify things, you can use the commands below to download the latest WeatherDesk code from Git, install WeatherDesk in /opt/ and create a symbolic link to its executable in /usr/local/bin/:
sudo apt install wget #in case it's not already installed
wget https://github.com/bharadwaj-raju/WeatherDesk/archive/master.tar.gz -O /tmp/weatherdesk.tar.gz
tar -xvf /tmp/weatherdesk.tar.gz -C /tmp/
sudo mkdir /opt/weatherdesk
sudo cp /tmp/WeatherDesk-master/*.py /opt/weatherdesk/
sudo chmod +x /opt/weatherdesk/WeatherDesk.py
sudo ln -s /opt/weatherdesk/WeatherDesk.py /usr/local/bin/weatherdesk

After this, you can simply use “weatherdesk” in a terminal to run the tool.

2. Download the FireWatch WeatherDesk wallpaper pack

But wait, we’re not done yet! That’s because you’ll also need some wallpapers to change based on current weather conditions and the time of day.

The wallpapers must be named according to some naming rules and placed in the ~/.weatherdesk_walls/ folder for WeatherDesk to pick them up. To make this easy, the WeatherDesk GitHub page points to a pack called FireWatch, which already contains images named according to the WeatherDesk rules.

To create the ~/.weatherdesk_walls folder, download the FireWatch WeatherDesk wallpaper set and extract it into the ~/.weatherdesk_walls folder, you can use the following commands:

mkdir ~/.weatherdesk_walls
wget https://github.com/bharadwaj-raju/FireWatch-WeatherDesk-Pack/archive/master.tar.gz -O /tmp/firewatchpack.tar.gz
tar -xvf /tmp/firewatchpack.tar.gz -C ~/.weatherdesk_walls/ --strip-components=1

3. Run WeatherDesk

That’s it. Now you can simply run “weatherdesk” in a terminal and the app should automatically change your wallpaper based on the current weather conditions and time of day, using the FireWatch wallpaper pack:

weatherdesk

If you want to use different wallpapers, you must rename them according to the WeatherDesk naming rules and place them in the ~/.weatherdesk_walls/ folder.

To see all the available WeatherDesk options, run the following command:
weatherdesk --help

For example, to force WeatherDesk to use the weather information for London instead of the automatically detected city, use:
weatherdesk -c london

To get WeatherDesk to also change the wallpaper based on the current time of day, and not just based on the current weather, run it with the “-t” option, like this:
weatherdesk -t

By default this will use the “day / evening / night” variation. To use the “morning / day / evening / night” variation (for more info about this, run “weatherdesk –info“), run it like this:

weatherdesk -t 4

If you want WeatherDesk to change the wallpaper based on current weather conditions every time you login, make sure to add it to your startup applications (in Ubuntu with Unity, launch Startup Applications, click “Add” and use “weatherdesk” as the command).

To report bugs, grab the source code, etc., see the WeatherDesk GitHub page.
Tip: to display the current weather temperature on top of the wallpaper, you could use WeatherDesk in conjunction with Deskweather (I din’t try this, but it could be interesting).

Read More

Jam: Listen To Google Play Music From The Console

A couple of weeks ago I wrote about GPMDP, a Google Play Music desktop application that integrates Google Play Music with the desktop and adds various features on top. If you don’t need all those desktop features and all you need is a lightweight, console Google Play Music client, you can try Jam.

Jam Google Play Music console player

Jam is a new Google Play Music console player for Linux and Windows. The application, which is written in Go, had its first alpha release about two weeks ago, and it’s currently at version 0.4.0.

Jam features a console interface very similar to that of Cmus, with easy keyboard navigation. While the interface is easy to use, it currently lacks a help screen, so for a list of keyboard shortcuts, see the Jam GitHub page.

Jam features:

  • console interface inspired by Cmus;
  • Last.fm scrobbling;
  • play, pause (this is buggy), stop, previous / next track;
  • populates a local database with the artists and albums you saved through the web interface (or by any other means) and allows searching artists in this database.

Jam is still very new, so it lacks a few features, but its developer hopes to improve it further, by making its interface detachable like MOC or to allow controlling the playback via command line arguments. If there’s some feature you’d like to see in Jam, you can submit a bug report.
It’s important to mention for Jam to work, you need to login using the same account used for Google Music on your mobile device. Without this, you will get a “no valid devices” error when trying to login with Jam.
If you use the Google two-factor authentication, you’ll need to generate an app password for Jam. You can do this by visiting THIS link.

Download Jam (64bit binary)

Download Jam (64bit binaries are available for Linux and Windows)

To install the 64bit binary on Linux, download it from GitHub (it’s the first one, called simply “jam”) and place it in your home folder. Then to install it to /usr/local/bin/ (so it’s available in your PATH), use the following command:
sudo install jam /usr/local/bin/

How to install Jam from source

Note: the instructions below were tested on Ubuntu 16.04+ / Linux Mint 18.x and may not work on older Ubuntu versions (golang-go may be too old).

To install Jam from source, you’ll need Go, Git and libpulse-dev. Install these in Ubuntu / Debian / Linux Mint using the following command:

sudo apt install golang-go git libpulse-dev

Next, you’ll need to set the GOPATH environment variable and make the GOPATH/bin folder available in your PATH. To do this (and use ~/.go as GOPATH), use the commands below:
mkdir ~/.go
echo "export GOPATH=$HOME/.go" >> ~/.bashrc
echo "export PATH=$PATH:$GOROOT/bin:$GOPATH/bin" >> ~/.bashrc
source ~/.bashrc

And finally, install Jam from source (the binary will be available in ~/.go/bin/) using the following command:

go get github.com/budkin/jam

If you encounter bugs, report them @ GitHub.

Read More