about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorSeong Yong-ju <sei40kr@gmail.com>2022-01-16 01:26:33 +0900
committerSeong Yong-ju <sei40kr@gmail.com>2022-03-10 23:26:01 +0900
commit512483d9108b430db9d6fba09ae2676b095c5473 (patch)
tree03d54640bc6b8cf54483dcaf5e8d515873725598 /pkgs/applications
parent9548cdc0a529b3df4baba3f34f631e404d0d1b22 (diff)
nwg-bar: init at unstable-2021-09-23
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/misc/nwg-bar/default.nix39
-rw-r--r--pkgs/applications/misc/nwg-bar/fix-paths.patch47
2 files changed, 86 insertions, 0 deletions
diff --git a/pkgs/applications/misc/nwg-bar/default.nix b/pkgs/applications/misc/nwg-bar/default.nix
new file mode 100644
index 0000000000000..28e736b008fb4
--- /dev/null
+++ b/pkgs/applications/misc/nwg-bar/default.nix
@@ -0,0 +1,39 @@
+{ lib, buildGoModule, fetchFromGitHub, pkg-config, gtk3, gtk-layer-shell }:
+
+buildGoModule rec {
+  pname = "nwg-bar";
+  version = "unstable-2021-09-23";
+
+  src = fetchFromGitHub {
+    owner = "nwg-piotr";
+    repo = pname;
+    rev = "7dd7df3cd9a9e78fe477e88e0f3cb97309d50ff5";
+    sha256 = "sha256-piysF19WDjb/EGI9MBepYrOrQL9C1fsoq05AP8CYN58=";
+  };
+
+  patches = [ ./fix-paths.patch ];
+  postPatch = ''
+    substituteInPlace config/bar.json --subst-var out
+    substituteInPlace tools.go --subst-var out
+  '';
+
+  vendorSha256 = "sha256-dgOwflNRb+11umFykozL8DQ50dLbhbMCmCyKmLlW7rw=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ gtk3 gtk-layer-shell ];
+
+  preInstall = ''
+    mkdir -p $out/share/nwg-bar
+    cp -r config/* images $out/share/nwg-bar
+  '';
+
+  meta = with lib; {
+    description =
+      "GTK3-based button bar for sway and other wlroots-based compositors";
+    homepage = "https://github.com/nwg-piotr/nwg-bar";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ sei40kr ];
+  };
+}
diff --git a/pkgs/applications/misc/nwg-bar/fix-paths.patch b/pkgs/applications/misc/nwg-bar/fix-paths.patch
new file mode 100644
index 0000000000000..9d4e98e9a7b76
--- /dev/null
+++ b/pkgs/applications/misc/nwg-bar/fix-paths.patch
@@ -0,0 +1,47 @@
+diff --git a/config/bar.json b/config/bar.json
+index 6c456e7..98527cb 100644
+--- a/config/bar.json
++++ b/config/bar.json
+@@ -2,21 +2,21 @@
+   {
+     "label": "Lock",
+     "exec": "swaylock -f -c 000000",
+-    "icon": "/usr/share/nwg-bar/images/system-lock-screen.svg"
++    "icon": "@out@/share/nwg-bar/images/system-lock-screen.svg"
+   },
+   {
+     "label": "Logout",
+     "exec": "swaymsg exit",
+-    "icon": "/usr/share/nwg-bar/images/system-log-out.svg"
++    "icon": "@out@/share/nwg-bar/images/system-log-out.svg"
+   },
+   {
+     "label": "Reboot",
+     "exec": "systemctl reboot",
+-    "icon": "/usr/share/nwg-bar/images/system-reboot.svg"
++    "icon": "@out@/share/nwg-bar/images/system-reboot.svg"
+   },
+   {
+     "label": "Shutdown",
+     "exec": "systemctl -i poweroff",
+-    "icon": "/usr/share/nwg-bar/images/system-shutdown.svg"
++    "icon": "@out@/share/nwg-bar/images/system-shutdown.svg"
+   }
+ ]
+\ No newline at end of file
+diff --git a/tools.go b/tools.go
+index f97751e..987163e 100644
+--- a/tools.go
++++ b/tools.go
+@@ -45,10 +45,7 @@ func configDir() string {
+ }
+ 
+ func getDataHome() string {
+-	if os.Getenv("XDG_DATA_HOME") != "" {
+-		return os.Getenv("XDG_DATA_HOME")
+-	}
+-	return "/usr/share/"
++	return "@out@/share/"
+ }
+ 
+ func createDir(dir string) {