├── .gitignore ├── README.md ├── .SRCINFO ├── .github └── workflows │ └── pkgbuild.yml └── PKGBUILD /.gitignore: -------------------------------------------------------------------------------- 1 | pkg 2 | src 3 | *.deb 4 | *.tar* -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![PKGBUILD CI](https://github.com/abcfy2/deepin-wine5-aur/workflows/PKGBUILD%20CI/badge.svg)](https://github.com/abcfy2/deepin-wine5-aur/actions) 2 | [![AUR version](https://img.shields.io/aur/version/deepin-wine5?style=plastic)](https://aur.archlinux.org/packages/deepin-wine5/) 3 | [![AUR votes](https://img.shields.io/aur/votes/deepin-wine5?style=plastic)](https://aur.archlinux.org/packages/deepin-wine5/) 4 | 5 | # deepin-wine5-aur 6 | 7 | 本项目存储[deepin-wine5](https://aur.archlinux.org/packages/deepin-wine5/)的 AUR 构建脚本。本仓库接受 PR,一旦 push 到 master 分支将会触发 github action 的 CI 流程,自动发布至 AUR [deepin-wine5](https://aur.archlinux.org/packages/deepin-wine5/)。 8 | 9 | 感谢 deepin 的开发,感谢[deepin-wine](https://aur.archlinux.org/packages/deepin-wine/)的构建脚本提供参考。 10 | 11 | > 本项目初步完成 AUR 打包,可能不是很完善,一些兼容性处理比较粗糙,欢迎提交 PR 和修正意见 12 | 13 | ## 安装 14 | 15 | 直接通过 AUR 仓库安装: 16 | 17 | ```shell 18 | yay -S deepin-wine5 19 | ``` 20 | 21 | 本地打包直接安装: 22 | 23 | ```shell 24 | # 如果未添加 archlinuxcn 仓库,需要提前从 AUR 安装 deepin-udis86 这个依赖 25 | yay -S deepin-udis86 26 | makepkg -si 27 | ``` 28 | 29 | ## 持续集成说明 30 | 31 | 本项目使用 [Github Action](https://github.com/features/actions) 做持续集成,所有 push 和 PR 的代码会先运行打包测试,然后自动生成 `.SRCINFO`。 32 | 33 | 对于 push 到中央仓库`master`分支的代码将会自动提交到[deepin-wine5](https://aur.archlinux.org/packages/deepin-wine5/)。 34 | 35 | 由于仅做了打包和安装的测试,并未做其他完善的运行测试。为了保证软件包的质量,请确保在本地运行之后再提交。 36 | -------------------------------------------------------------------------------- /.SRCINFO: -------------------------------------------------------------------------------- 1 | pkgbase = deepin-wine5 2 | pkgdesc = Deepin Wine5 3 | pkgver = 5.0.16 4 | pkgrel = 1 5 | url = http://www.deepin.org 6 | arch = i686 7 | arch = x86_64 8 | license = Proprietary 9 | makedepends = tar 10 | noextract = deepin-wine5_5.0.16-1_i386.deb 11 | noextract = deepin-wine5-i386_5.0.16-1_i386.deb 12 | source = https://community-store-packages.deepin.com/appstore/pool/appstore/d/deepin-wine5/deepin-wine5_5.0.16-1_i386.deb 13 | source = https://community-store-packages.deepin.com/appstore/pool/appstore/d/deepin-wine5/deepin-wine5-i386_5.0.16-1_i386.deb 14 | sha256sums = c50f7095baa3c8f9ff330ad5215c439362a8f3e0f7621a20ecea0890e9e3c621 15 | sha256sums = ea3f354438483a0f8f48e015905bc52a41a06d6ff27910c8b71f22f7fb223bdf 16 | 17 | pkgname = deepin-wine5 18 | depends = deepin-wine5-i386 19 | 20 | pkgname = deepin-wine5-i386 21 | depends = lib32-alsa-plugins 22 | depends = lib32-glib2 23 | depends = lib32-glibc 24 | depends = libgphoto2 25 | depends = lib32-gst-plugins-base-libs 26 | depends = lib32-lcms2 27 | depends = lib32-libldap 28 | depends = lib32-mpg123 29 | depends = lib32-openal 30 | depends = lib32-libpcap 31 | depends = lib32-libcanberra-pulse 32 | depends = lib32-libudev0-shim 33 | depends = lib32-libusb 34 | depends = lib32-vkd3d 35 | depends = lib32-libx11 36 | depends = lib32-libxext 37 | depends = lib32-libxml2 38 | depends = lib32-ocl-icd 39 | depends = deepin-udis86 40 | depends = lib32-zlib 41 | depends = lib32-ncurses 42 | depends = lib32-fontconfig 43 | depends = lib32-freetype2 44 | depends = lib32-gettext 45 | depends = lib32-libxcursor 46 | depends = lib32-mesa 47 | depends = lib32-libjpeg6 48 | depends = lib32-libxrandr 49 | depends = lib32-libxi 50 | depends = lib32-glu 51 | 52 | -------------------------------------------------------------------------------- /.github/workflows/pkgbuild.yml: -------------------------------------------------------------------------------- 1 | name: PKGBUILD CI 2 | 3 | on: 4 | push: 5 | paths: 6 | - "PKGBUILD" 7 | - ".SRCINFO" 8 | - "*.patch" 9 | pull_request: 10 | paths: 11 | - "PKGBUILD" 12 | - ".SRCINFO" 13 | - "*.patch" 14 | 15 | jobs: 16 | pkg_build: 17 | runs-on: ubuntu-latest 18 | container: "oblique/archlinux-yay" 19 | steps: 20 | - name: Checkout 21 | uses: actions/checkout@v2 22 | - name: Install and check 23 | run: | 24 | chown -R aur:aur . 25 | sudo -u aur yay --noconfirm -Syu 26 | sudo -u aur yay --noconfirm --asdeps -S deepin-udis86 27 | sudo -u aur makepkg -si --needed --noconfirm 28 | deepin-wine5 --version 29 | - name: Refresh .SRCINFO 30 | run: | 31 | sudo -u aur makepkg --printsrcinfo > .SRCINFO 32 | git config --local user.email "action@github.com" 33 | git config --local user.name "GitHub Action" 34 | git commit -m "chore: refresh .SRCINFO [skip build]" .SRCINFO || true 35 | - name: Push changes 36 | if: github.event_name == 'push' 37 | uses: ad-m/github-push-action@master 38 | with: 39 | github_token: ${{ secrets.GITHUB_TOKEN }} 40 | push-aur: 41 | runs-on: ubuntu-latest 42 | needs: pkg_build 43 | if: "github.repository == 'abcfy2/deepin-wine5-aur' && github.event_name == 'push' && github.ref == 'refs/heads/master'" 44 | steps: 45 | - name: Checkout 46 | uses: actions/checkout@v2 47 | # Force checkout latest version so that .SRCINFO could push to AUR 48 | with: 49 | ref: "refs/heads/master" 50 | - name: Push AUR 51 | run: | 52 | eval $(ssh-agent -s) 53 | echo "${AUR_SSH_PRIVATE_KEY}" | ssh-add - 54 | git config --global user.email "action@github.com" 55 | git config --global user.name "GitHub Action" 56 | export GIT_SSH_COMMAND="ssh -o StrictHostKeyChecking=no" 57 | git clone --depth 1 ssh://aur@aur.archlinux.org/deepin-wine5.git /tmp/deepin-wine5 58 | cd /tmp/deepin-wine5 59 | rm -fr "${GITHUB_WORKSPACE}/.git" 60 | cp -fr "${GITHUB_WORKSPACE}/." . 61 | # AUR does not allow push sub directories 62 | find -mindepth 1 -maxdepth 1 -type d -prune -not -path './.git' -print0 | xargs -0 rm -fr 63 | git add -A 64 | git commit -m "chore: automatic push via github action" || true 65 | git push 66 | env: 67 | AUR_SSH_PRIVATE_KEY: ${{ secrets.AUR_SSH_PRIVATE_KEY }} 68 | -------------------------------------------------------------------------------- /PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: abcfy2 2 | 3 | pkgname=('deepin-wine5' 'deepin-wine5-i386') 4 | pkgver=5.0.16 5 | pkgrel=1 6 | pkgdesc="Deepin Wine5" 7 | arch=('i686' 'x86_64') 8 | url="http://www.deepin.org" 9 | license=('Proprietary') 10 | makedepends=('tar') 11 | source=( 12 | "https://community-store-packages.deepin.com/appstore/pool/appstore/d/deepin-wine5/deepin-wine5_${pkgver}-${pkgrel}_i386.deb" 13 | "https://community-store-packages.deepin.com/appstore/pool/appstore/d/deepin-wine5/deepin-wine5-i386_${pkgver}-${pkgrel}_i386.deb" 14 | ) 15 | noextract=( 16 | "deepin-wine5_${pkgver}-${pkgrel}_i386.deb" 17 | "deepin-wine5-i386_${pkgver}-${pkgrel}_i386.deb" 18 | ) 19 | sha256sums=( 20 | 'c50f7095baa3c8f9ff330ad5215c439362a8f3e0f7621a20ecea0890e9e3c621' 21 | 'ea3f354438483a0f8f48e015905bc52a41a06d6ff27910c8b71f22f7fb223bdf' 22 | ) 23 | 24 | package_deepin-wine5() { 25 | depends=('deepin-wine5-i386') 26 | 27 | mkdir -p "deepin-wine5_${pkgver}-${pkgrel}" 28 | ar -x "deepin-wine5_${pkgver}-${pkgrel}_i386.deb" data.tar.xz --output "deepin-wine5_${pkgver}-${pkgrel}" 29 | tar -xf "deepin-wine5_${pkgver}-${pkgrel}/data.tar.xz" --directory="deepin-wine5_${pkgver}-${pkgrel}" 30 | rm -f "deepin-wine5_${pkgver}-${pkgrel}/data.tar.xz" 31 | # Removed conflict files with wine 32 | rm -fr "deepin-wine5_${pkgver}-${pkgrel}/usr/share/man" 33 | cp -r "deepin-wine5_${pkgver}-${pkgrel}/." "${pkgdir}/" 34 | } 35 | 36 | package_deepin-wine5-i386() { 37 | # deepin-wine5-i386 deb dependencies (Note: i386): 38 | # Depends: libasound2 (>= 1.0.16), libc6 (>= 2.28), libglib2.0-0 (>= 2.12.0), libgphoto2-6 (>= 2.5.10), libgphoto2-port12 (>= 2.5.10), libgstreamer-plugins-base1.0-0 (>= 1.0.0), libgstreamer1.0-0 (>= 1.4.0), liblcms2-2 (>= 2.2+git20110628), libldap-2.4-2 (>= 2.4.7), libmpg123-0 (>= 1.13.7), libopenal1 (>= 1.14), libpcap0.8 (>= 0.9.8), libpulse0 (>= 0.99.1), libudev1 (>= 183), libusb-1.0-0 (>= 2:1.0.16), libvkd3d1 (>= 1.0), libx11-6, libxext6, libxml2 (>= 2.9.0), ocl-icd-libopencl1 | libopencl1, udis86, zlib1g (>= 1:1.1.4), libasound2-plugins, libncurses6 | libncurses5 | libncurses 39 | # Recommends: libcapi20-3, libcups2, libdbus-1-3, libfontconfig1, libfreetype6, libglu1-mesa | libglu1, libgnutls30 | libgnutls28 | libgnutls26, libgsm1, libgssapi-krb5-2, libjpeg62-turbo | libjpeg8, libkrb5-3, libodbc1, libosmesa6, libpng16-16 | libpng12-0, libsane | libsane1, libsdl2-2.0-0, libtiff5, libv4l-0, libxcomposite1, libxcursor1, libxfixes3, libxi6, libxinerama1, libxrandr2, libxrender1, libxslt1.1, libxxf86vm1 40 | depends=( 41 | 'lib32-alsa-plugins' 'lib32-glib2' 'lib32-glibc' 'libgphoto2' 42 | 'lib32-gst-plugins-base-libs' 'lib32-lcms2' 'lib32-libldap' 'lib32-mpg123' 43 | 'lib32-openal' 'lib32-libpcap' 'lib32-libcanberra-pulse' 'lib32-libudev0-shim' 44 | 'lib32-libusb' 'lib32-vkd3d' 'lib32-libx11' 'lib32-libxext' 'lib32-libxml2' 45 | 'lib32-ocl-icd' 'deepin-udis86' 'lib32-zlib' 'lib32-ncurses' 'lib32-fontconfig' 46 | 'lib32-freetype2' 'lib32-gettext' 'lib32-libxcursor' 'lib32-mesa' 'lib32-libjpeg6' 47 | 'lib32-libxrandr' 'lib32-libxi' 'lib32-glu' 48 | ) 49 | 50 | mkdir -p "deepin-wine5-i386_${pkgver}-${pkgrel}" 51 | ar -x "deepin-wine5-i386_${pkgver}-${pkgrel}_i386.deb" data.tar.xz --output "deepin-wine5-i386_${pkgver}-${pkgrel}" 52 | tar -xf "deepin-wine5-i386_${pkgver}-${pkgrel}/data.tar.xz" --directory="deepin-wine5-i386_${pkgver}-${pkgrel}" 53 | rm -f "deepin-wine5-i386_${pkgver}-${pkgrel}/data.tar.xz" 54 | # Rename conflict files with deepin-wine 55 | mv -f "deepin-wine5-i386_${pkgver}-${pkgrel}/usr/bin/deepin-winegcc32" "deepin-wine5-i386_${pkgver}-${pkgrel}/usr/bin/deepin-wine5gcc32" 56 | # Removed conflict files with wine 57 | rm -fr "deepin-wine5-i386_${pkgver}-${pkgrel}/usr/share/man" 58 | cp -r "deepin-wine5-i386_${pkgver}-${pkgrel}/." "${pkgdir}/" 59 | } 60 | --------------------------------------------------------------------------------