From d4f8c9d0b860e52ee32ab5f6a375b55383614fd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=85smund=20Balke?= <77496597+balkenix@users.noreply.github.com> Date: Wed, 8 May 2024 04:50:33 +0100 Subject: [PATCH 1/5] update wlroots (#312) --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 21314d67..ab9a3871 100644 --- a/flake.nix +++ b/flake.nix @@ -14,7 +14,7 @@ let mkPackage = pkgs: { swayfx-unwrapped = - (pkgs.swayfx-unwrapped.override { wlroots_0_16 = pkgs.wlroots_0_17; }).overrideAttrs + (pkgs.swayfx-unwrapped.override { wlroots = pkgs.wlroots_0_17; }).overrideAttrs (old: { version = "0.4.0-git"; src = pkgs.lib.cleanSource ./.; From aaa3c7536ee8d7e784106809b748497401f3838b Mon Sep 17 00:00:00 2001 From: William McKinnon Date: Wed, 8 May 2024 00:34:46 -0400 Subject: [PATCH 2/5] removed unneeded build scripts and workflows --- .github/workflows/arch-build-git.yml | 29 ---- .github/workflows/arch-build-stable.yml | 29 ---- .github/workflows/fedora-build.yml | 51 ------- .github/workflows/fedora-copr.yml | 86 ----------- build-scripts/aur-git/50-systemd-user.conf | 16 --- build-scripts/aur-git/PKGBUILD | 83 ----------- build-scripts/aur-git/sway-portals.conf | 6 - build-scripts/aur-git/sway.install | 31 ---- build-scripts/aur/50-systemd-user.conf | 16 --- build-scripts/aur/PKGBUILD | 78 ---------- build-scripts/aur/sway-portals.conf | 6 - build-scripts/aur/sway.install | 31 ---- build-scripts/swayfx.rpkg.spec | 158 --------------------- 13 files changed, 620 deletions(-) delete mode 100644 .github/workflows/arch-build-git.yml delete mode 100644 .github/workflows/arch-build-stable.yml delete mode 100644 .github/workflows/fedora-build.yml delete mode 100644 .github/workflows/fedora-copr.yml delete mode 100644 build-scripts/aur-git/50-systemd-user.conf delete mode 100644 build-scripts/aur-git/PKGBUILD delete mode 100644 build-scripts/aur-git/sway-portals.conf delete mode 100644 build-scripts/aur-git/sway.install delete mode 100644 build-scripts/aur/50-systemd-user.conf delete mode 100644 build-scripts/aur/PKGBUILD delete mode 100644 build-scripts/aur/sway-portals.conf delete mode 100644 build-scripts/aur/sway.install delete mode 100644 build-scripts/swayfx.rpkg.spec diff --git a/.github/workflows/arch-build-git.yml b/.github/workflows/arch-build-git.yml deleted file mode 100644 index 24105811..00000000 --- a/.github/workflows/arch-build-git.yml +++ /dev/null @@ -1,29 +0,0 @@ -name: Check git build for Arch. - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -jobs: - arch-build-git: - container: archlinux:latest - runs-on: ubuntu-latest - - steps: - # It is necessary to checkout into sub-directory, because of some weird ownership problems cause by using containers - - name: Check out sources - uses: actions/checkout@v3 - with: - fetch-depth: 0 - path: swayfx - - - name: Git makepkg build and check - id: makepkg - uses: edlanglois/pkgbuild-action@v1 - with: - pkgdir: ./swayfx/build-scripts/aur-git diff --git a/.github/workflows/arch-build-stable.yml b/.github/workflows/arch-build-stable.yml deleted file mode 100644 index b39121b5..00000000 --- a/.github/workflows/arch-build-stable.yml +++ /dev/null @@ -1,29 +0,0 @@ -name: Check stable build for Arch. - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -jobs: - arch-build-stable: - container: archlinux:latest - runs-on: ubuntu-latest - - steps: - # It is necessary to checkout into sub-directory, because of some weird ownership problems cause by using containers - - name: Check out sources - uses: actions/checkout@v3 - with: - fetch-depth: 0 - path: swayfx - - - name: Stable makepkg build and check - id: makepkg - uses: edlanglois/pkgbuild-action@v1 - with: - pkgdir: ./swayfx/build-scripts/aur diff --git a/.github/workflows/fedora-build.yml b/.github/workflows/fedora-build.yml deleted file mode 100644 index 3044abfe..00000000 --- a/.github/workflows/fedora-build.yml +++ /dev/null @@ -1,51 +0,0 @@ -name: Check build for Fedora. - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -jobs: - fedora-build: - container: fedora:latest - runs-on: ubuntu-latest - - steps: - - name: Install tooling for source RPM build - run: | - dnf -y install @development-tools @rpm-development-tools - dnf -y install rpkg git - dnf -y install 'dnf-command(builddep)' - - # It is necessary to checkout into sub-directory, because of some weird ownership problems cause by using containers - - name: Check out sources - uses: actions/checkout@v3 - with: - fetch-depth: 0 - path: swayfx - - - name: Copy spec into root dir - run: | - cd swayfx - cp ./build-scripts/swayfx.rpkg.spec ./ - - - name: Generate spec - run: | - cd swayfx - mkdir specs - rpkg spec --source --outdir specs - - - name: Install build dependencies - run: | - cd swayfx - dnf -y builddep ./specs/swayfx.rpkg.spec - - - name: Local build - run: | - cd swayfx - mkdir -p out - rpkg local --out `pwd`/out diff --git a/.github/workflows/fedora-copr.yml b/.github/workflows/fedora-copr.yml deleted file mode 100644 index 64f5ab96..00000000 --- a/.github/workflows/fedora-copr.yml +++ /dev/null @@ -1,86 +0,0 @@ -name: Package for Fedora Copr repo - -on: - release: - types: [published] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -jobs: - fedora-copr: - container: fedora:latest - runs-on: ubuntu-latest - - steps: - - name: Install API token for copr-cli - env: - # To generate a new token: https://copr.fedorainfracloud.org/api/. - API_LOGIN: ${{ secrets.COPR_API_LOGIN }} - API_USERNAME: ${{ secrets.COPR_API_USERNAME }} - API_TOKEN_CONTENT: ${{ secrets.COPR_API_TOKEN }} - run: | - mkdir -p "$HOME/.config" - # To generate a new token: https://copr.fedorainfracloud.org/api/. - echo "[copr-cli]" >> "$HOME/.config/copr" - echo "login = $API_LOGIN" >> "$HOME/.config/copr" - echo "username = $API_USERNAME" >> "$HOME/.config/copr" - echo "token = $API_TOKEN_CONTENT" >> "$HOME/.config/copr" - echo "copr_url = https://copr.fedorainfracloud.org" >> "$HOME/.config/copr" - - - name: Install tooling for source RPM build - run: | - dnf -y install @development-tools @rpm-development-tools copr-cli rpkg git 'dnf-command(builddep)' - - # It is necessary to checkout into sub-directory, because of some weird ownership problems cause by using containers - - name: Check out sources - uses: actions/checkout@v3 - with: - fetch-depth: 0 - path: swayfx - - - name: Check out the latest tag - run: | - cp ./swayfx/build-scripts/swayfx.rpkg.spec ./ - cd swayfx - git stash save "Action stashing changes" - latestTag=$(git describe --abbrev=0 --tags) - git checkout $latestTag - - - name: Copy master spec into root dir - run: | - cd swayfx - cp ../swayfx.rpkg.spec ./ - - - name: Generate spec - run: | - cd swayfx - mkdir specs - rpkg spec --source --outdir specs - - - name: Install build dependencies - run: | - cd swayfx - dnf -y builddep ./specs/swayfx.rpkg.spec - - - name: Local build - run: | - cd swayfx - mkdir -p out - rpkg local --out `pwd`/out - - - name: Test if installation of package is successful - run: | - cd swayfx/out - - packages=(`rpmspec -q --nodebuginfo --qf \ - "./%{ARCH}/%{Name}-%{Version}-%{Release}.%{ARCH}.rpm\n" \ - ../specs/swayfx.rpkg.spec`) - for i in "${packages[@]}"; do - dnf -y install "$i" - done - - - name: Submit the build to copr - run: | - cd swayfx - rpkg -v copr-build -w ${{ secrets.COPR_REPO_NAME }} diff --git a/build-scripts/aur-git/50-systemd-user.conf b/build-scripts/aur-git/50-systemd-user.conf deleted file mode 100644 index 8781db92..00000000 --- a/build-scripts/aur-git/50-systemd-user.conf +++ /dev/null @@ -1,16 +0,0 @@ -# sway does not set DISPLAY/WAYLAND_DISPLAY in the systemd user environment -# See FS#63021 -# Adapted from xorg's 50-systemd-user.sh, which achieves a similar goal. - -# Upstream refuses to set XDG_CURRENT_DESKTOP so we have to. -exec systemctl --user set-environment XDG_CURRENT_DESKTOP=sway -exec systemctl --user import-environment DISPLAY \ - SWAYSOCK \ - WAYLAND_DISPLAY \ - XDG_CURRENT_DESKTOP - -exec hash dbus-update-activation-environment 2>/dev/null && \ - dbus-update-activation-environment --systemd DISPLAY \ - SWAYSOCK \ - XDG_CURRENT_DESKTOP=sway \ - WAYLAND_DISPLAY diff --git a/build-scripts/aur-git/PKGBUILD b/build-scripts/aur-git/PKGBUILD deleted file mode 100644 index 585a8c05..00000000 --- a/build-scripts/aur-git/PKGBUILD +++ /dev/null @@ -1,83 +0,0 @@ -# Maintainer: Erik Reider -_pkgname=swayfx -pkgname="$_pkgname-git" -pkgver=r7023.9cd02fc4 -pkgrel=5 -license=("MIT") -pkgdesc="SwayFX: Sway, but with eye candy!" -makedepends=( - "git" - "meson" - "scdoc" - "wayland-protocols" -) -depends=( - "cairo" - "gdk-pixbuf2" - "libevdev.so" - "libinput" - "libjson-c.so" - "libudev.so" - "libwayland-server.so" - "libwlroots.so=11" - "libxcb" - "libxkbcommon.so" - "pango" - "pcre2" - "ttf-font" -) -optdepends=( - "alacritty: Terminal emulator used by the default config" - "dmenu: Application launcher" - "grim: Screenshot utility" - "i3status: Status line" - "mako: Lightweight notification daemon" - "slurp: Select a region" - "swayidle: Idle management daemon" - "swaylock: Screen locker" - "wallutils: Timed wallpapers" - "waybar: Highly customizable bar" - "xdg-desktop-portal-gtk: Default xdg-desktop-portal for file picking" - "xdg-desktop-portal-wlr: xdg-desktop-portal backend" -) -backup=(etc/sway/config) -arch=("i686" "x86_64") -url="https://github.com/WillPower3309/swayfx" -source=("${pkgname%-*}::git+${url}.git" - 50-systemd-user.conf - sway-portals.conf) -sha512sums=( - "SKIP" - "d5f9aadbb4bbef067c31d4c8c14dad220eb6f3e559e9157e20e1e3d47faf2f77b9a15e52519c3ffc53dc8a5202cb28757b81a4b3b0cc5dd50a4ddc49e03fe06e" - "790741df028822bf4d83170dea57e1c63f7d7938cf31969e4cd347b0fc07330322b603c9ec0091b7a3f425132bed9dee6f261074cc273555120858beaaaf5da1") -provides=("sway" "swayfx") -conflicts=("sway" "swayfx") -options=(debug) -install=sway.install - -pkgver() { - cd "$_pkgname" - printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" -} - -build() { - export PKG_CONFIG_PATH='/usr/lib/wlroots0.16/pkgconfig' - arch-meson \ - -Dwerror=false \ - -Dsd-bus-provider=libsystemd \ - "$_pkgname" build - meson compile -C build -} - -package() { - install -Dm644 50-systemd-user.conf -t "$pkgdir/etc/sway/config.d/" - install -Dm644 sway-portals.conf "$pkgdir/usr/share/xdg-desktop-portal/sway-portals.conf" - - DESTDIR="$pkgdir" meson install -C build - - cd "$_pkgname" - install -Dm644 "LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" - for util in autoname-workspaces.py inactive-windows-transparency.py grimshot; do - install -Dm755 "contrib/$util" -t "$pkgdir/usr/share/$pkgname/scripts" - done -} diff --git a/build-scripts/aur-git/sway-portals.conf b/build-scripts/aur-git/sway-portals.conf deleted file mode 100644 index aa046f63..00000000 --- a/build-scripts/aur-git/sway-portals.conf +++ /dev/null @@ -1,6 +0,0 @@ -[preferred] -# Use xdg-desktop-portal-gtk for every portal interface... -default=gtk -# ... except for the ScreenCast and Screenshot -org.freedesktop.impl.portal.ScreenCast=wlr -org.freedesktop.impl.portal.Screenshot=wlr diff --git a/build-scripts/aur-git/sway.install b/build-scripts/aur-git/sway.install deleted file mode 100644 index ef4fe013..00000000 --- a/build-scripts/aur-git/sway.install +++ /dev/null @@ -1,31 +0,0 @@ -post_install() { -cat << EOD -Sway requires additional setup for privilege escalation. Without this setup, -sway will fail to start with session activation permission failures. Choose one -of the two available options (In alphabetical, not recommended, order): - -1. polkit: This will make sway "just work" right after installation but may be - a weightier solution than desired. - -2. seatd: Already required as a sway dependency, this is a lighter-weight - solution but requires some user configuration: Enabling the service, - adding your user to the "seat" group, then logging out/in again. - -Either option should provide the same functionality/stability. Refer to the -Sway wiki page for information. -EOD -} - -post_upgrade() { -cat << EOD -Sway's necessary privileges can now be obtained through seatd as well as the -incumbent polkit package. As such, polkit has been relegated to an optional -dependency. - -Note that using seatd instead of polkit means that a user must be a part of the -"seat" group: Otherwise, the user will not be able to achieve the appropriate -privileged actions. - -For more information, refer to the Sway wiki page. -EOD -} diff --git a/build-scripts/aur/50-systemd-user.conf b/build-scripts/aur/50-systemd-user.conf deleted file mode 100644 index 8781db92..00000000 --- a/build-scripts/aur/50-systemd-user.conf +++ /dev/null @@ -1,16 +0,0 @@ -# sway does not set DISPLAY/WAYLAND_DISPLAY in the systemd user environment -# See FS#63021 -# Adapted from xorg's 50-systemd-user.sh, which achieves a similar goal. - -# Upstream refuses to set XDG_CURRENT_DESKTOP so we have to. -exec systemctl --user set-environment XDG_CURRENT_DESKTOP=sway -exec systemctl --user import-environment DISPLAY \ - SWAYSOCK \ - WAYLAND_DISPLAY \ - XDG_CURRENT_DESKTOP - -exec hash dbus-update-activation-environment 2>/dev/null && \ - dbus-update-activation-environment --systemd DISPLAY \ - SWAYSOCK \ - XDG_CURRENT_DESKTOP=sway \ - WAYLAND_DISPLAY diff --git a/build-scripts/aur/PKGBUILD b/build-scripts/aur/PKGBUILD deleted file mode 100644 index 316b1a85..00000000 --- a/build-scripts/aur/PKGBUILD +++ /dev/null @@ -1,78 +0,0 @@ -# Maintainer: Erik Reider -_pkgname=swayfx -pkgname="$_pkgname" -pkgver=0.3.2 -pkgrel=5 -license=("MIT") -pkgdesc="SwayFX: Sway, but with eye candy!" -makedepends=( - "git" - "meson" - "scdoc" - "wayland-protocols" -) -depends=( - "cairo" - "gdk-pixbuf2" - "libevdev.so" - "libinput" - "libjson-c.so" - "libudev.so" - "libwayland-server.so" - "libwlroots.so=11" - "libxcb" - "libxkbcommon.so" - "pango" - "pcre2" - "ttf-font" -) -optdepends=( - "alacritty: Terminal emulator used by the default config" - "dmenu: Application launcher" - "grim: Screenshot utility" - "i3status: Status line" - "mako: Lightweight notification daemon" - "slurp: Select a region" - "swayidle: Idle management daemon" - "swaylock: Screen locker" - "wallutils: Timed wallpapers" - "waybar: Highly customizable bar" - "xdg-desktop-portal-gtk: Default xdg-desktop-portal for file picking" - "xdg-desktop-portal-wlr: xdg-desktop-portal backend" -) -backup=(etc/sway/config) -arch=("i686" "x86_64") -url="https://github.com/WillPower3309/swayfx" -source=("${_pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/$pkgver.tar.gz" - 50-systemd-user.conf - sway-portals.conf) -sha512sums=( - "SKIP" - "d5f9aadbb4bbef067c31d4c8c14dad220eb6f3e559e9157e20e1e3d47faf2f77b9a15e52519c3ffc53dc8a5202cb28757b81a4b3b0cc5dd50a4ddc49e03fe06e" - "790741df028822bf4d83170dea57e1c63f7d7938cf31969e4cd347b0fc07330322b603c9ec0091b7a3f425132bed9dee6f261074cc273555120858beaaaf5da1") -provides=("sway" "swayfx") -conflicts=("sway" "swayfx") -options=(debug) -install=sway.install - -build() { - export PKG_CONFIG_PATH='/usr/lib/wlroots0.16/pkgconfig' - arch-meson \ - -Dwerror=false \ - -Dsd-bus-provider=libsystemd \ - "${_pkgname}-${pkgver}" build - meson compile -C build -} - -package() { - install -Dm644 50-systemd-user.conf -t "$pkgdir/etc/sway/config.d/" - install -Dm644 sway-portals.conf "$pkgdir/usr/share/xdg-desktop-portal/sway-portals.conf" - - DESTDIR="$pkgdir" meson install -C build - - cd "${_pkgname}-${pkgver}" - install -Dm644 "LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" - for util in autoname-workspaces.py inactive-windows-transparency.py grimshot; do - install -Dm755 "contrib/$util" -t "$pkgdir/usr/share/$pkgname/scripts" - done -} diff --git a/build-scripts/aur/sway-portals.conf b/build-scripts/aur/sway-portals.conf deleted file mode 100644 index aa046f63..00000000 --- a/build-scripts/aur/sway-portals.conf +++ /dev/null @@ -1,6 +0,0 @@ -[preferred] -# Use xdg-desktop-portal-gtk for every portal interface... -default=gtk -# ... except for the ScreenCast and Screenshot -org.freedesktop.impl.portal.ScreenCast=wlr -org.freedesktop.impl.portal.Screenshot=wlr diff --git a/build-scripts/aur/sway.install b/build-scripts/aur/sway.install deleted file mode 100644 index ef4fe013..00000000 --- a/build-scripts/aur/sway.install +++ /dev/null @@ -1,31 +0,0 @@ -post_install() { -cat << EOD -Sway requires additional setup for privilege escalation. Without this setup, -sway will fail to start with session activation permission failures. Choose one -of the two available options (In alphabetical, not recommended, order): - -1. polkit: This will make sway "just work" right after installation but may be - a weightier solution than desired. - -2. seatd: Already required as a sway dependency, this is a lighter-weight - solution but requires some user configuration: Enabling the service, - adding your user to the "seat" group, then logging out/in again. - -Either option should provide the same functionality/stability. Refer to the -Sway wiki page for information. -EOD -} - -post_upgrade() { -cat << EOD -Sway's necessary privileges can now be obtained through seatd as well as the -incumbent polkit package. As such, polkit has been relegated to an optional -dependency. - -Note that using seatd instead of polkit means that a user must be a part of the -"seat" group: Otherwise, the user will not be able to achieve the appropriate -privileged actions. - -For more information, refer to the Sway wiki page. -EOD -} diff --git a/build-scripts/swayfx.rpkg.spec b/build-scripts/swayfx.rpkg.spec deleted file mode 100644 index 6ad2534c..00000000 --- a/build-scripts/swayfx.rpkg.spec +++ /dev/null @@ -1,158 +0,0 @@ -# vim: syntax=spec - -### CHANGE THESE VARIABLES BEFORE RELEASE: -# Change to current Sway base version! -%global SwayBaseVersion 1.8.1 -# Change to current SwayFX tag! -%global Tag 0.3.2 - -Name: {{{ git_dir_name }}} -Version: %{Tag} -Release: 2%{?dist} -Summary: SwayFX: Sway, but with eye candy! -License: MIT -URL: https://github.com/WillPower3309/swayfx -VCS: {{{ git_dir_vcs }}} -Source: {{{ git_dir_pack }}} -Source101: sway-portals.conf - -BuildRequires: gcc-c++ -BuildRequires: gnupg2 -BuildRequires: meson >= 0.60.0 -BuildRequires: pkgconfig(cairo) -BuildRequires: pkgconfig(gdk-pixbuf-2.0) -BuildRequires: pkgconfig(glesv2) -BuildRequires: pkgconfig(json-c) >= 0.13 -BuildRequires: pkgconfig(libdrm) -BuildRequires: pkgconfig(libevdev) -BuildRequires: pkgconfig(libinput) >= 1.21.0 -BuildRequires: pkgconfig(libpcre2-8) -BuildRequires: pkgconfig(libsystemd) >= 239 -BuildRequires: pkgconfig(libudev) -BuildRequires: pkgconfig(pango) -BuildRequires: pkgconfig(pangocairo) -BuildRequires: pkgconfig(pixman-1) -BuildRequires: pkgconfig(scdoc) -BuildRequires: pkgconfig(wayland-client) -BuildRequires: pkgconfig(wayland-cursor) -BuildRequires: pkgconfig(wayland-server) >= 1.21.0 -BuildRequires: pkgconfig(wayland-protocols) >= 1.24 -BuildRequires: (pkgconfig(wlroots) >= 0.16.0 with pkgconfig(wlroots) < 0.17) -BuildRequires: pkgconfig(xcb) -BuildRequires: pkgconfig(xcb-icccm) -BuildRequires: pkgconfig(xkbcommon) -# Dmenu is the default launcher in sway -Recommends: dmenu -# In addition, xargs is recommended for use in such a launcher arrangement -Recommends: findutils -# Install configs and scripts for better integration with systemd user session -Recommends: sway-systemd - -Requires: swaybg -Recommends: swayidle -Recommends: swaylock -# By default the Fedora background is used -Recommends: desktop-backgrounds-compat - -# Lack of graphical drivers may hurt the common use case -Recommends: mesa-dri-drivers -# Minimal installation doesn't include Qt Wayland backend -Recommends: (qt5-qtwayland if qt5-qtbase-gui) -Recommends: (qt6-qtwayland if qt6-qtbase-gui) - -# dmenu (as well as rxvt any many others) requires XWayland on Sway -Requires: xorg-x11-server-Xwayland -# Sway binds the terminal shortcut to one specific terminal. In our case foot -Recommends: foot -# grim is the recommended way to take screenshots on sway 1.0+ -Recommends: grim -%{?systemd_requires} - -Conflicts: sway -Provides: sway = %{SwayBaseVersion} - -%description -SwayFX: Sway, but with eye candy! - -# The artwork is heavy and we don't use it with our default config -%package wallpapers -Summary: Wallpapers for Sway -BuildArch: noarch -License: CC0 - -%description wallpapers -Wallpaper collection provided with Sway - - -%package -n grimshot -Summary: Helper for screenshots within sway -Requires: grim -Requires: jq -Requires: slurp -Requires: /usr/bin/wl-copy -Recommends: /usr/bin/notify-send - -%description -n grimshot -Grimshot is an easy to use screenshot tool for sway. It relies on grim, -slurp and jq to do the heavy lifting, and mostly provides an easy to use -interface. - -%prep -{{{ git_dir_setup_macro }}} - -%build -%meson \ - -Dsd-bus-provider=libsystemd \ - -Dwerror=false - -%meson_build - -%install -%meson_install -# Set Fedora background as default background -sed -i "s|^output \* bg .*|output * bg /usr/share/backgrounds/default.png fill|" %{buildroot}%{_sysconfdir}/sway/config -# Create directory for extra config snippets -install -d -m755 -pv %{buildroot}%{_sysconfdir}/sway/config.d - -# Install portals.conf for xdg-desktop-portal -install -D -m644 -pv %{SOURCE101} %{buildroot}%{_datadir}/xdg-desktop-portal/sway-portals.conf - -# install python scripts from contrib -install -D -m644 -pv -t %{buildroot}%{_datadir}/sway/contrib contrib/*.py - -# install contrib/grimshot tool -scdoc %{buildroot}%{_mandir}/man1/grimshot.1 -install -D -m755 -pv contrib/grimshot %{buildroot}%{_bindir}/grimshot - -%files -%license LICENSE -%doc README.md -%dir %{_sysconfdir}/sway -%dir %{_sysconfdir}/sway/config.d -%config(noreplace) %{_sysconfdir}/sway/config -%{_mandir}/man1/sway* -%{_mandir}/man5/* -%{_mandir}/man7/* -%{_bindir}/sway -%{_bindir}/swaybar -%{_bindir}/swaymsg -%{_bindir}/swaynag -%{_datadir}/sway -%{_datadir}/wayland-sessions/sway.desktop -%dir %{_datadir}/xdg-desktop-portal -%{_datadir}/xdg-desktop-portal/sway-portals.conf -%{bash_completions_dir}/sway* -%{fish_completions_dir}/sway*.fish -%{zsh_completions_dir}/_sway* - -%files wallpapers -%license assets/LICENSE -%{_datadir}/backgrounds/sway - -%files -n grimshot -%{_bindir}/grimshot -%{_mandir}/man1/grimshot.1* - -# Changelog will be empty until you make first annotated Git tag. -%changelog -{{{ git_dir_changelog }}} From 3c621dec7d653231f960d377fcb3ceeed55953e2 Mon Sep 17 00:00:00 2001 From: famfo Date: Thu, 9 May 2024 16:45:44 +0000 Subject: [PATCH 3/5] Update flake.lock (#316) --- flake.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index e383db5a..916448de 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "nixpkgs": { "locked": { - "lastModified": 1713349283, - "narHash": "sha256-2bjFu3+1zPWZPPGqF+7rumTvEwmdBHBhjPva/AMSruQ=", + "lastModified": 1715037484, + "narHash": "sha256-OUt8xQFmBU96Hmm4T9tOWTu4oCswCzoVl+pxSq/kiFc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2e359fb3162c85095409071d131e08252d91a14f", + "rev": "ad7efee13e0d216bf29992311536fce1d3eefbef", "type": "github" }, "original": { @@ -43,11 +43,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1713495445, - "narHash": "sha256-dMvGkhjt72NznwI57HLR+Oc6QMctf16W4zI1XYuwnZI=", + "lastModified": 1715160751, + "narHash": "sha256-S8m7phTU7QYgAq4B0hjH5WdtTjHDcNVhYfPFdhbty+A=", "owner": "wlrfx", "repo": "scenefx", - "rev": "5ada125a56012923c47fcf3d049fab32eb7104ff", + "rev": "2ec3505248e819191c37cb831197629f373326fb", "type": "github" }, "original": { From da559b3ea13addecdd7747b99f3ed498f991d031 Mon Sep 17 00:00:00 2001 From: Erik Reider <35975961+ErikReider@users.noreply.github.com> Date: Sat, 1 Jun 2024 06:24:08 +0200 Subject: [PATCH 4/5] Fixed blurred tiling indicator not drawing on the right coordinates (#319) --- sway/input/seatop_move_tiling.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/sway/input/seatop_move_tiling.c b/sway/input/seatop_move_tiling.c index bbed01a8..a8cc5f75 100644 --- a/sway/input/seatop_move_tiling.c +++ b/sway/input/seatop_move_tiling.c @@ -45,17 +45,27 @@ static void handle_render(struct sway_seat *seat, struct fx_render_context *ctx) memcpy(&box, &e->drop_box, sizeof(struct wlr_box)); scale_box(&box, ctx->output->wlr_output->scale); - // Render blur - pixman_region32_t opaque_region; - pixman_region32_init(&opaque_region); struct decoration_data deco_data = get_undecorated_decoration_data(); deco_data.blur = e->con->blur_enabled; - deco_data.corner_radius = e->con->corner_radius; - struct wlr_fbox src_box = {0}; - render_blur(ctx, NULL, &src_box, &box, false, &opaque_region, deco_data); - pixman_region32_fini(&opaque_region); + deco_data.corner_radius = e->con->corner_radius * ctx->output->wlr_output->scale; - render_rounded_rect(ctx, &box, color, e->con->corner_radius * ctx->output->wlr_output->scale, ALL); + // Render blur + if (deco_data.blur && color[3] < 1.0f) { + pixman_region32_t opaque_region; + pixman_region32_init(&opaque_region); + struct wlr_fbox src_box = {0}; + struct wlr_box blur_box; + memcpy(&blur_box, &e->drop_box, sizeof(struct wlr_box)); + // The render_blur function doesn't use root-relative coordinates + blur_box.x -= ctx->output->lx; + blur_box.y -= ctx->output->ly; + scale_box(&blur_box, ctx->output->wlr_output->scale); + + render_blur(ctx, NULL, &src_box, &blur_box, false, &opaque_region, deco_data); + pixman_region32_fini(&opaque_region); + } + + render_rounded_rect(ctx, &box, color, deco_data.corner_radius, ALL); } } From 4d7ca7d975fb6d8ccae9830765986d5812fd011d Mon Sep 17 00:00:00 2001 From: Erik Reider <35975961+ErikReider@users.noreply.github.com> Date: Mon, 29 Jul 2024 18:13:11 +0200 Subject: [PATCH 5/5] Fixed blur opacity. Fixes #338 (#339) --- sway/desktop/render.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sway/desktop/render.c b/sway/desktop/render.c index 30f1c541..e469d716 100644 --- a/sway/desktop/render.c +++ b/sway/desktop/render.c @@ -208,7 +208,6 @@ void render_blur(struct fx_render_context *ctx, struct wlr_texture *texture, .src_box = *src_box, .dst_box = proj_box, .transform = WL_OUTPUT_TRANSFORM_NORMAL, - .alpha = &deco_data.alpha, .clip = &damage, .filter_mode = WLR_SCALE_FILTER_BILINEAR, },