From 92551dccf24c724a19937871fea029b16666861a Mon Sep 17 00:00:00 2001 From: Eragon Date: Wed, 8 Feb 2023 13:02:56 +0100 Subject: Create package --- .SRCINFO | 47 +++++++++++++++++++++++++++++++ PKGBUILD | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++++ meson-build.patch | 29 ++++++++++++++++++++ meson_options.patch | 24 ++++++++++++++++ 4 files changed, 179 insertions(+) create mode 100644 .SRCINFO create mode 100644 PKGBUILD create mode 100644 meson-build.patch create mode 100644 meson_options.patch diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 0000000..caa564b --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,47 @@ +pkgbase = waybar-hyprland-no-systemd + pkgdesc = Highly customizable Wayland bar for Sway and Wlroots based compositors, with workspaces support for Hyprland, without systemd dependency + pkgver = 0.9.17 + pkgrel = 0 + url = https://github.com/Alexays/Waybar/ + arch = any + license = MIT + makedepends = cmake + makedepends = catch2 + makedepends = meson + makedepends = scdoc + makedepends = wayland-protocols + depends = gtkmm3 + depends = libjsoncpp.so + depends = libsigc++ + depends = fmt + depends = jack + depends = libjack.so + depends = wayland + depends = libdate-tz.so + depends = libspdlog.so + depends = gtk-layer-shell + depends = libupower-glib.so + depends = upower + depends = libevdev + depends = libinput + depends = libpulse + depends = libnl + depends = libappindicator-gtk3 + depends = libdbusmenu-gtk3 + depends = libmpdclient + depends = libsndio.so + depends = libxkbcommon + depends = wireplumber + optdepends = otf-font-awesome: Icons in the default configuration + provides = waybar + conflicts = waybar + backup = etc/xdg/waybar/config + backup = etc/xdg/waybar/style.css + source = https://github.com/Alexays/Waybar/archive/0.9.17.tar.gz + source = meson-build.patch + source = meson_options.patch + sha256sums = da6f448be343a593ee092486fb4744502aa1e6ad85f4eccc3670d0b84a2a4266 + sha256sums = 2a403854363b08024f446d17c6056a9a6ae61364f4c14c8f9b4c972d07dab78b + sha256sums = 146d1d8b0bc8216b7d29f93f934c4a3716ec091e1dd140b68e79aa487d28afa1 + +pkgname = waybar-hyprland-no-systemd diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..36e00ad --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,79 @@ +# Contributor: Bruno Ancona +# Maintainer: Eragon + +pkgname=waybar-hyprland-no-systemd +_pkgname=Waybar +pkgver=0.9.17 +pkgrel=0 +pkgdesc='Highly customizable Wayland bar for Sway and Wlroots based compositors, with workspaces support for Hyprland, without systemd dependency' +arch=('any') +url='https://github.com/Alexays/Waybar/' +license=('MIT') +provides=('waybar') +conflicts=('waybar') +depends=( + 'gtkmm3' + 'libjsoncpp.so' + 'libsigc++' + 'fmt' + 'jack' 'libjack.so' + 'wayland' + 'libdate-tz.so' + 'libspdlog.so' + 'gtk-layer-shell' + 'libupower-glib.so' + 'upower' + 'libevdev' + 'libinput' + 'libpulse' + 'libnl' + 'libappindicator-gtk3' + 'libdbusmenu-gtk3' + 'libmpdclient' + 'libsndio.so' + 'libxkbcommon' + 'wireplumber') +makedepends=( + 'cmake' + 'catch2' + 'meson' + 'scdoc' + 'wayland-protocols') +backup=( + etc/xdg/waybar/config + etc/xdg/waybar/style.css) +optdepends=('otf-font-awesome: Icons in the default configuration') +source=("https://github.com/Alexays/Waybar/archive/$pkgver.tar.gz" + meson-build.patch + meson_options.patch) +sha256sums=('da6f448be343a593ee092486fb4744502aa1e6ad85f4eccc3670d0b84a2a4266' + '2a403854363b08024f446d17c6056a9a6ae61364f4c14c8f9b4c972d07dab78b' + '146d1d8b0bc8216b7d29f93f934c4a3716ec091e1dd140b68e79aa487d28afa1') + +prepare() { + cd "${srcdir}/${_pkgname}-${pkgver}" + patch -p1 < ../meson-build.patch + patch -p1 < ../meson_options.patch +} + +build() { + cd "${srcdir}/${_pkgname}-${pkgver}" + + sed -i 's/zext_workspace_handle_v1_activate(workspace_handle_);/const std::string command = "hyprctl dispatch workspace " + name_;\n\tsystem(command.c_str());/g' src/modules/wlr/workspace_manager.cpp # use hyprctl to switch workspaces + + meson --prefix=/usr \ + --buildtype=plain \ + --auto-features=enabled \ + --wrap-mode=nodownload \ + -Dtests=disabled \ + build + meson configure -Dexperimental=true build + ninja -C build +} + +package() { + cd "${srcdir}/${_pkgname}-${pkgver}" + + DESTDIR="$pkgdir" ninja -C build install + install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/" +} diff --git a/meson-build.patch b/meson-build.patch new file mode 100644 index 0000000..8ccd25b --- /dev/null +++ b/meson-build.patch @@ -0,0 +1,29 @@ +--- a/meson.build 2022-11-01 19:25:51.209738128 +0100 ++++ b/meson.build 2022-11-01 19:26:48.767739772 +0100 +@@ -117,7 +117,7 @@ + gtk_layer_shell = dependency('gtk-layer-shell-0', + required: get_option('gtk-layer-shell'), + fallback : ['gtk-layer-shell', 'gtk_layer_shell_dep']) +-systemd = dependency('systemd', required: get_option('systemd')) ++ + tz_dep = dependency('date', + required: false, + default_options : [ 'use_system_tzdb=true' ], +@@ -131,17 +131,6 @@ + + add_project_arguments('-DSYSCONFDIR="/@0@"'.format(join_paths(prefix, sysconfdir)), language : 'cpp') + +-if systemd.found() +- user_units_dir = systemd.get_pkgconfig_variable('systemduserunitdir') +- +- configure_file( +- configuration: conf_data, +- input: './resources/waybar.service.in', +- output: '@BASENAME@', +- install_dir: user_units_dir +- ) +-endif +- + src_files = files( + 'src/factory.cpp', + 'src/AModule.cpp', diff --git a/meson_options.patch b/meson_options.patch new file mode 100644 index 0000000..527ddf5 --- /dev/null +++ b/meson_options.patch @@ -0,0 +1,24 @@ +*** a/meson_options.txt Wed Feb 8 13:01:19 2023 +--- b/meson_options.txt Wed Feb 8 13:01:25 2023 +*************** +*** 6,12 **** + option('pulseaudio', type: 'feature', value: 'auto', description: 'Enable support for pulseaudio') + option('upower_glib', type: 'feature', value: 'auto', description: 'Enable support for upower') + option('mpris', type: 'feature', value: 'auto', description: 'Enable support for mpris') +- option('systemd', type: 'feature', value: 'auto', description: 'Install systemd user service unit') + option('dbusmenu-gtk', type: 'feature', value: 'auto', description: 'Enable support for tray') + option('man-pages', type: 'feature', value: 'auto', description: 'Generate and install man pages') + option('mpd', type: 'feature', value: 'auto', description: 'Enable support for the Music Player Daemon') +--- 6,11 ---- +*************** +*** 17,20 **** + option('tests', type: 'feature', value: 'auto', description: 'Enable tests') + option('experimental', type : 'boolean', value : false, description: 'Enable experimental features') + option('jack', type: 'feature', value: 'auto', description: 'Enable support for JACK') +! option('wireplumber', type: 'feature', value: 'auto', description: 'Enable support for WirePlumber') +\ No newline at end of file +--- 16,19 ---- + option('tests', type: 'feature', value: 'auto', description: 'Enable tests') + option('experimental', type : 'boolean', value : false, description: 'Enable experimental features') + option('jack', type: 'feature', value: 'auto', description: 'Enable support for JACK') +! option('wireplumber', type: 'feature', value: 'auto', description: 'Enable support for WirePlumber') -- cgit v1.2.3