diff --git a/pkgs/applications/misc/wbg/default.nix b/pkgs/applications/misc/wbg/default.nix new file mode 100644 index 000000000000..4f385ef21740 --- /dev/null +++ b/pkgs/applications/misc/wbg/default.nix @@ -0,0 +1,52 @@ +{ stdenv +, lib +, fetchgit +, meson +, ninja +, pkg-config +, git +, scdoc +, cairo +, fcft +, libpng +, librsvg +, libxkbcommon +, pixman +, tllist +, wayland +, wayland-protocols +, wlroots +}: + +stdenv.mkDerivation rec { + pname = "wbg"; + version = "unstable-2020-08-01"; + + src = fetchgit { + url = "https://codeberg.org/dnkl/wbg"; + rev = "1b05bd80d0f40e3ba1e977002d0653f532649269"; + sha256 = "0i1j7aqvj0vl2ww5cvffqci1kjqjn0sw6sp2j0ljblaif6qk9asc"; + }; + + nativeBuildInputs = [ pkg-config meson ninja scdoc git ]; + buildInputs = [ + cairo + fcft + libpng + librsvg + libxkbcommon + pixman + tllist + wayland + wayland-protocols + wlroots + ]; + + meta = with lib; { + description = "Wallpaper application for Wayland compositors"; + homepage = "https://codeberg.org/dnkl/wbg"; + license = licenses.isc; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = with platforms; linux; + }; +} diff --git a/pkgs/applications/misc/yambar/default.nix b/pkgs/applications/misc/yambar/default.nix new file mode 100644 index 000000000000..47d02a0cec93 --- /dev/null +++ b/pkgs/applications/misc/yambar/default.nix @@ -0,0 +1,86 @@ +{ stdenv +, lib +, fetchgit +, pkg-config +, meson +, ninja +, scdoc +, alsaLib +, fcft +, json_c +, libmpdclient +, libxcb +, libyaml +, pixman +, tllist +, udev +, wayland +, wayland-protocols +, xcbutil +, xcbutilcursor +, xcbutilerrors +, xcbutilwm +}: + +stdenv.mkDerivation rec { + pname = "yambar"; + version = "1.6.1"; + + src = fetchgit { + url = "https://codeberg.org/dnkl/yambar.git"; + rev = version; + sha256 = "p47tFsEWsYNe6IVV65xGG211u6Vm2biRf4pmUDylBOQ="; + }; + + nativeBuildInputs = [ pkg-config meson ninja scdoc ]; + buildInputs = [ + alsaLib + fcft + json_c + libmpdclient + libxcb + libyaml + pixman + tllist + udev + wayland + wayland-protocols + xcbutil + xcbutilcursor + xcbutilerrors + xcbutilwm + ]; + + meta = with lib; { + homepage = "https://codeberg.org/dnkl/yambar"; + description = "Modular status panel for X11 and Wayland"; + longDescription = '' + yambar is a lightweight and configurable status panel (bar, for short) for + X11 and Wayland, that goes to great lengths to be both CPU and battery + efficient - polling is only done when absolutely necessary. + + It has a number of modules that provide information in the form of + tags. For example, the clock module has a date tag that contains the + current date. + + The modules do not know how to present the information though. This is + instead done by particles. And the user, you, decides which particles (and + thus how to present the data) to use. + + Furthermore, each particle can have a decoration - a background color or a + graphical underline, for example. + + There is no support for images or icons. use an icon font (e.g. Font + Awesome, or Material Icons) if you want a graphical representation. + + There are a number of modules and particles builtin. More can be added as + plugins. You can even write your own! + + To summarize: a bar displays information provided by modules, using + particles and decorations. How is configured by you. + ''; + license = licenses.mit; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = with platforms; unix; + }; +} diff --git a/pkgs/development/libraries/tllist/default.nix b/pkgs/development/libraries/tllist/default.nix index 9134ade0e187..11e61e93a0c1 100644 --- a/pkgs/development/libraries/tllist/default.nix +++ b/pkgs/development/libraries/tllist/default.nix @@ -1,26 +1,41 @@ -{ stdenv, lib, fetchgit, meson, ninja }: +{ stdenv +, lib +, fetchgit +, meson +, ninja +}: stdenv.mkDerivation rec { pname = "tllist"; - version = "1.0.4"; + version = "1.0.5"; src = fetchgit { url = "https://codeberg.org/dnkl/tllist.git"; rev = version; - sha256 = "sha256-+u8p/VmI61SGRhZHaJBwgcVNetNOrYzg2NVQehbfRqg="; + sha256 = "wJEW7haQBtCR2rffKOFyqH3aq0eBr6H8T6gnBs2bNRg="; }; - nativeBuildInputs = [ - meson ninja - ]; + nativeBuildInputs = [ meson ninja ]; doCheck = true; meta = with lib; { homepage = "https://codeberg.org/dnkl/tllist"; description = "C header file only implementation of a typed linked list"; - maintainers = with maintainers; [ fionera ]; + longDescription = '' + Most C implementations of linked list are untyped. That is, their data + carriers are typically void *. This is error prone since your compiler + will not be able to help you correct your mistakes (oh, was it a + pointer-to-a-pointer... I thought it was just a pointer...). + + tllist addresses this by using pre-processor macros to implement dynamic + types, where the data carrier is typed to whatever you want; both + primitive data types are supported as well as aggregated ones such as + structs, enums and unions. + ''; + license = licenses.mit; + maintainers = with maintainers; [ fionera AndersonTorres ]; platforms = with platforms; linux; }; } diff --git a/pkgs/servers/mpd/clientlib.nix b/pkgs/servers/mpd/libmpdclient.nix similarity index 73% rename from pkgs/servers/mpd/clientlib.nix rename to pkgs/servers/mpd/libmpdclient.nix index e0df9458f878..4ff45b527b14 100644 --- a/pkgs/servers/mpd/clientlib.nix +++ b/pkgs/servers/mpd/libmpdclient.nix @@ -1,12 +1,18 @@ -{ lib, stdenv, fetchFromGitHub, meson, ninja, fixDarwinDylibNames }: +{ lib +, stdenv +, fetchFromGitHub +, meson +, ninja +, fixDarwinDylibNames +}: stdenv.mkDerivation rec { - version = "2.19"; pname = "libmpdclient"; + version = "2.19"; src = fetchFromGitHub { owner = "MusicPlayerDaemon"; - repo = "libmpdclient"; + repo = pname; rev = "v${version}"; sha256 = "01agvjscdxagw6jcfx0wg81c4b6p8rh0hp3slycmjs2b835kvmq2"; }; @@ -17,8 +23,8 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Client library for MPD (music player daemon)"; homepage = "https://www.musicpd.org/libs/libmpdclient/"; - license = licenses.gpl2; + license = licenses.bsd2; + maintainers = with maintainers; [ ehmry AndersonTorres ]; platforms = platforms.unix; - maintainers = with maintainers; [ ehmry ]; }; } diff --git a/pkgs/tools/misc/lnch/default.nix b/pkgs/tools/misc/lnch/default.nix index 8f41499ca06b..a9c736525390 100644 --- a/pkgs/tools/misc/lnch/default.nix +++ b/pkgs/tools/misc/lnch/default.nix @@ -2,20 +2,21 @@ buildGoPackage rec { pname = "lnch"; - version = "2017-02-16"; + version = "unstable-2021-02-10"; goPackagePath = "github.com/oem/${pname}"; src = fetchFromGitHub { owner = "oem"; repo = pname; - rev = "f24eed5392f01d2c8a9cfe9cdf70dcfbbf4b6b36"; - sha256 = "0skzrjnbxq1yj7y64cq7angp4wqnrgw1xp9v8vw9zp8f8zwmpy0y"; + rev = "6ed336dd893afa071178b8ac6f6297d23fc55514"; + sha256 = "K2TV+mx6C3/REJyDpC6a/Zn/ZZFxkDMC3EnkveH6YNQ="; }; meta = with lib; { homepage = "https://github.com/oem/lnch"; - description = "A small go app that launches a process and moves it out of the process group"; - license = licenses.publicDomain; # really I don't know + description = "Launches a process and moves it out of the process group"; + license = licenses.mit; + platforms = with platforms; all; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index eb154c004272..6b91ac6a9ac0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17918,7 +17918,8 @@ in inherit (callPackages ../servers/mpd { }) mpd mpd-small mpdWithFeatures; - mpd_clientlib = callPackage ../servers/mpd/clientlib.nix { }; + mpd_clientlib = libmpdclient; + libmpdclient = callPackage ../servers/mpd/libmpdclient.nix { }; mpdscribble = callPackage ../tools/misc/mpdscribble { }; @@ -22792,6 +22793,8 @@ in waybar = callPackage ../applications/misc/waybar {}; + wbg = callPackage ../applications/misc/wbg { }; + hikari = callPackage ../applications/window-managers/hikari { }; i3 = callPackage ../applications/window-managers/i3 { @@ -23851,6 +23854,8 @@ in i3GapsSupport = false; }; + yambar = callPackage ../applications/misc/yambar { }; + polyphone = libsForQt514.callPackage ../applications/audio/polyphone { }; portfolio = callPackage ../applications/office/portfolio {