From: Luke Bonham Date: Mon, 14 Aug 2017 16:34:46 +0000 (+0200) Subject: widget.contrib.gpmdp: moved to awesome-www recipes; closes #354 #343 #342 X-Git-Url: https://git.madduck.net/etc/awesome.git/commitdiff_plain/252df73e572f4befdd1f7849c77656187b86dc61?ds=inline;hp=0ef78642276735127d2206be184c1e071ad6b0ed widget.contrib.gpmdp: moved to awesome-www recipes; closes #354 #343 #342 --- diff --git a/lain-git.rockspec b/lain-git.rockspec index a264384..1b42903 100644 --- a/lain-git.rockspec +++ b/lain-git.rockspec @@ -7,15 +7,15 @@ source = { description = { summary = "Layout, widgets and utilities for Awesome WM", detailed = [[ - Successor of awesome-vain, this module provides new layouts, a set of widgets and utility functions, with the aim of improving Awesome usability and configurability. + Successor of awesome-vain, this module provides alternative layouts, asynchronous widgets and utility functions for Awesome WM. - Optional dependency: curl (for IMAP and weather widgets). + Optional dependency: curl (for IMAP, MPD and weather widgets). ]], homepage = "https://github.com/copycat-killer/lain", license = "GPL v2" } dependencies = { - "lua >= 5.3", + "lua >= 5.1", "awesome >= 4.0", "curl" } diff --git a/widget/contrib/gpmdp.lua b/widget/contrib/gpmdp.lua deleted file mode 100644 index e980209..0000000 --- a/widget/contrib/gpmdp.lua +++ /dev/null @@ -1,88 +0,0 @@ - ---[[ - - Licensed under GNU General Public License v2 - * (c) 2016, Alexandre Terrien - ---]] - -local helpers = require("lain.helpers") -local json = require("lain.util.dkjson") -local focused = require("awful.screen").focused -local pread = require("awful.util").pread -local naughty = require("naughty") -local wibox = require("wibox") -local next, getenv, table = next, os.getenv, table - --- Google Play Music Desktop infos --- lain.widget.contrib.gpmdp --- requires: curl - -local function factory(args) - local gpmdp = { widget = wibox.widget.textbox() } - local args = args or {} - local timeout = args.timeout or 2 - local notify = args.notify or "off" - local followtag = args.followtag or false - local file_location = args.file_location or - getenv("HOME") .. "/.config/Google Play Music Desktop Player/json_store/playback.json" - local settings = args.settings or function() end - - gpmdp_notification_preset = { - title = "Now playing", - timeout = 6 - } - - helpers.set_map("gpmdp_current", nil) - - function gpmdp.update() - local filelines = helpers.lines_from(file_location) - - if not next(filelines) then - local gpm_now = { running = false, playing = false } - else - dict, pos, err = json.decode(table.concat(filelines), 1, nil) - local gpm_now = {} - gpm_now.artist = dict.song.artist - gpm_now.album = dict.song.album - gpm_now.title = dict.song.title - gpm_now.cover_url = dict.song.albumArt - gpm_now.playing = dict.playing - end - - if pread("pidof 'Google Play Music Desktop Player'") ~= '' then - gpm_now.running = true - else - gpm_now.running = false - end - - gpmdp_notification_preset.text = string.format("%s (%s) - %s", gpm_now.artist, gpm_now.album, gpm_now.title) - widget = gpmdp.widget - settings() - - if gpm_now.playing then - if notify == "on" and gpm_now.title ~= helpers.get_map("gpmdp_current") then - helpers.set_map("gpmdp_current", gpm_now.title) - - if followtag then gpmdp_notification_preset.screen = focused() end - - helpers.async(string.format("curl %d -o /tmp/gpmcover.png", gpm_now.cover_url), - function(f) - gpmdp.id = naughty.notify({ - preset = gpmdp_notification_preset, - icon = "/tmp/gpmcover.png", - replaces_id = gpmdp.id - }).id - end) - end - elseif not gpm_now.running then - helpers.set_map("gpmdp_current", nil) - end - end - - gpmdp.timer = helpers.newtimer("gpmdp", timeout, gpmdp.update, true, true) - - return gpmdp -end - -return factory diff --git a/wiki b/wiki index cc064cb..defe526 160000 --- a/wiki +++ b/wiki @@ -1 +1 @@ -Subproject commit cc064cb376f34844abba70ab58de2df1e397955b +Subproject commit defe526c692107374f13274bf82efbcbe8c818de