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 }}}