diff options
-rw-r--r-- | .SRCINFO | 49 | ||||
-rw-r--r-- | .gitignore | 4 | ||||
-rw-r--r-- | PKGBUILD | 246 |
3 files changed, 200 insertions, 99 deletions
@@ -1,50 +1,52 @@ pkgbase = compiz-git - pkgdesc = Composite manager for Aiglx and Xgl, with plugins and CCSM (development version) - pkgver = 0.9.14.1.r0.gfbe199d6b + pkgdesc = Composite manager for Aiglx and Xgl, with plugins and CCSM + pkgver = 0.9.14.2.r6.g275e8550 pkgrel = 1 url = https://launchpad.net/compiz arch = i686 arch = x86_64 - license = GPL - license = LGPL + license = GPL-2.0-or-later + license = LGPL-2.1-or-later license = MIT makedepends = boost makedepends = cmake - makedepends = git - makedepends = intltool makedepends = cython + makedepends = intltool + makedepends = python-setuptools + makedepends = git depends = boost-libs - depends = xorg-server depends = fuse2 depends = glibmm + depends = glu + depends = libnotify depends = libwnck3 - depends = python-gobject - depends = python-cairo - depends = protobuf + depends = libxslt depends = metacity - depends = glu + depends = protobuf + depends = python-cairo + depends = python-gobject + depends = xorg-server optdepends = xorg-xprop: grab various window properties for use in window matching rules - provides = compiz=0.9.14 - provides = compiz-core=0.9.14 - provides = compiz-bcop=0.9.14 provides = ccsm=0.9.14 - provides = compiz-plugins-main=0.9.14 + provides = compiz-bcop=0.9.14 + provides = compiz-core=0.9.14 provides = compiz-plugins-extra=0.9.14 + provides = compiz-plugins-main=0.9.14 provides = compizconfig-python=0.9.14 provides = libcompizconfig=0.9.14 - conflicts = compiz - conflicts = compiz-core - conflicts = compiz-gtk - conflicts = compiz-bcop + provides = compiz=0.9.14 conflicts = ccsm - conflicts = compiz-fusion-plugins-main - conflicts = compiz-fusion-plugins-extra + conflicts = compiz-bcop + conflicts = compiz-core conflicts = compiz-fusion-plugins-experimental + conflicts = compiz-fusion-plugins-extra + conflicts = compiz-fusion-plugins-main + conflicts = compiz-gtk conflicts = compizconfig-python conflicts = libcompizconfig conflicts = simple-ccsm - replaces = compiz-bzr - source = git+https://git.launchpad.net/compiz + conflicts = compiz + source = compiz::git+https://git.launchpad.net/compiz source = focus-prevention-disable.patch source = gtk-extents.patch source = reverse-unity-config.patch @@ -58,4 +60,3 @@ pkgbase = compiz-git sha256sums = 4ab3277da201314b3f65e30128bc30704ddee584fdbbfc8d0d83c7e0de91fa9a pkgname = compiz-git - diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..018a3de08144 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +* +!PKGBUILD +!.SRCINFO +!.gitignore @@ -1,104 +1,200 @@ -# Maintainer: Charles Bos <charlesbos1 AT gmail> -# Contributor: Rob McCathie <archaur at rmcc dot com dot au -# Contributor: /dev/rs0 <rs0@secretco.de.com> -# Contributor: Iven Hsu <ivenvd AT gmail> -# Contributor: Nathan Hulse <nat.hulse@gmail.com> - -pkgname=compiz-git -pkgver=0.9.14.1.r0.gfbe199d6b +# Maintainer: +# Contributor: Robert Brzozowski <robson75@linux.pl> +# Contributor: Charles Bos <charlesbos1 AT gmail> + +## options +: ${_build_git:=true} + +unset _pkgtype +[[ "${_build_git::1}" == "t" ]] && _pkgtype+="-git" + +## basic info +_pkgname='compiz' +pkgname="$_pkgname${_pkgtype:-}" +pkgver=0.9.14.2.r6.g275e8550 pkgrel=1 -_gitname=compiz -pkgdesc="Composite manager for Aiglx and Xgl, with plugins and CCSM (development version)" -arch=('i686' 'x86_64') +pkgdesc="Composite manager for Aiglx and Xgl, with plugins and CCSM" url="https://launchpad.net/compiz" -license=('GPL' 'LGPL' 'MIT') -depends=('boost-libs' 'xorg-server' 'fuse2' 'glibmm' 'libwnck3' 'python-gobject' 'python-cairo' 'protobuf' 'metacity' 'glu') -makedepends=('boost' 'cmake' 'git' 'intltool' 'cython') -optdepends=( - 'xorg-xprop: grab various window properties for use in window matching rules' +arch=('i686' 'x86_64') +license=( + 'GPL-2.0-or-later' + 'LGPL-2.1-or-later' + 'MIT' ) -conflicts=("${_gitname}" 'compiz-core' 'compiz-gtk' 'compiz-bcop' 'ccsm' 'compiz-fusion-plugins-main' 'compiz-fusion-plugins-extra' 'compiz-fusion-plugins-experimental' 'compizconfig-python' 'libcompizconfig' 'simple-ccsm') -provides=("${_gitname}=${pkgver:0:6}" "compiz-core=${pkgver:0:6}" "compiz-bcop=${pkgver:0:6}" "ccsm=${pkgver:0:6}" "compiz-plugins-main=${pkgver:0:6}" "compiz-plugins-extra=${pkgver:0:6}" "compizconfig-python=${pkgver:0:6}" "libcompizconfig=${pkgver:0:6}") -replaces=('compiz-bzr') -source=("git+https://git.launchpad.net/${_gitname}" - "focus-prevention-disable.patch" - "gtk-extents.patch" - "reverse-unity-config.patch" - "screenshot-launch-fix.patch" - "no-compile-gschemas.patch") -sha256sums=('SKIP' - 'f4897590b0f677ba34767a29822f8f922a750daf66e8adf47be89f7c2550cf4b' - '16ddb6311ce42d958505e21ca28faae5deeddce02cb558d55e648380274ba4d9' - '6ec9c04540ca1649c687d9ab2c8311caea7075831e2cffe719ec7958c9ebab7b' - '89ee91a8ea6b1424ef76661ea9a2db43412366aacddc12d24a7adf5e04bfbc61' - '4ab3277da201314b3f65e30128bc30704ddee584fdbbfc8d0d83c7e0de91fa9a') - -pkgver() { - cd "${_gitname}" - git describe --long --tags | sed 's/.%//;s/\+.*ubuntu.//;s/\([^-]*-g\)/r\1/;s/-/./g' + +# main package +_main_package() { + depends=( + 'boost-libs' + 'fuse2' + 'glibmm' + 'glu' + 'libnotify' + 'libwnck3' + 'libxslt' + 'metacity' + 'protobuf' + 'python-cairo' + 'python-gobject' + 'xorg-server' + ) + makedepends=( + 'boost' + 'cmake' + 'cython' + 'intltool' + 'python-setuptools' + ) + optdepends=( + 'xorg-xprop: grab various window properties for use in window matching rules' + ) + + conflicts=( + 'ccsm' + 'compiz-bcop' + 'compiz-core' + 'compiz-fusion-plugins-experimental' + 'compiz-fusion-plugins-extra' + 'compiz-fusion-plugins-main' + 'compiz-gtk' + 'compizconfig-python' + 'libcompizconfig' + 'simple-ccsm' + ) + provides=( + "ccsm=${pkgver:0:6}" + "compiz-bcop=${pkgver:0:6}" + "compiz-core=${pkgver:0:6}" + "compiz-plugins-extra=${pkgver:0:6}" + "compiz-plugins-main=${pkgver:0:6}" + "compizconfig-python=${pkgver:0:6}" + "libcompizconfig=${pkgver:0:6}" + ) + + if [ "${_build_git::1}" != "t" ] ; then + _main_stable + else + _main_git + fi + + source+=( + "focus-prevention-disable.patch" + "gtk-extents.patch" + "reverse-unity-config.patch" + "screenshot-launch-fix.patch" + "no-compile-gschemas.patch" + ) + sha256sums+=( + 'f4897590b0f677ba34767a29822f8f922a750daf66e8adf47be89f7c2550cf4b' + '16ddb6311ce42d958505e21ca28faae5deeddce02cb558d55e648380274ba4d9' + '6ec9c04540ca1649c687d9ab2c8311caea7075831e2cffe719ec7958c9ebab7b' + '89ee91a8ea6b1424ef76661ea9a2db43412366aacddc12d24a7adf5e04bfbc61' + '4ab3277da201314b3f65e30128bc30704ddee584fdbbfc8d0d83c7e0de91fa9a' + ) +} + +# stable package +_main_stable() { + _pkgsrc="$_pkgname-${pkgver%%.r*}" + _pkgext="tar.xz" + source+=( + "$_pkgsrc.$_pkgext"::"https://launchpad.net/$_pkgname/${pkgver:0:6}/${pkgver%%.r*}/+download/$_pkgsrc.$_pkgext" + ) + sha256sums+=( + 'cfa061e93b032275ff9e7041f582a8f6d5ae271cf8a89e6bc74e3d3635999d3c' + ) + + pkgver() { + echo "${pkgver%%.r*}" + } } +# git package +_main_git() { + makedepends+=('git') + + conflicts+=('compiz') + provides+=("compiz=${pkgver:0:6}") + + _pkgsrc="$_pkgname" + source+=("$_pkgsrc"::"git+https://git.launchpad.net/compiz") + sha256sums+=('SKIP') + + pkgver() { + cd "$_pkgsrc" + git describe --long --tags --abbrev=8 --exclude='*[a-zA-Z][a-zA-Z]*' | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g' + } +} + +# common functions prepare() { - cd "${_gitname}" + cd "$_pkgsrc" # Reverse Unity specific configuration patches - patch -p1 -i "${srcdir}/reverse-unity-config.patch" + patch -p1 -i "$srcdir/reverse-unity-config.patch" # Set focus prevention level to off which means that new windows will always get focus - patch -p1 -i "${srcdir}/focus-prevention-disable.patch" + patch -p1 -i "$srcdir/focus-prevention-disable.patch" # Fix incorrect extents for GTK+ tooltips, csd etc - patch -p1 -i "${srcdir}/gtk-extents.patch" + patch -p1 -i "$srcdir/gtk-extents.patch" # Fix application launching for the screenshot plugin - patch -p1 -i "${srcdir}/screenshot-launch-fix.patch" + patch -p1 -i "$srcdir/screenshot-launch-fix.patch" # Don't try to compile gschemas during make install - patch -p1 -i "${srcdir}/no-compile-gschemas.patch" + patch -p1 -i "$srcdir/no-compile-gschemas.patch" } build() { - cd "${_gitname}" - - mkdir build; cd build - - cmake .. \ - -DCMAKE_INSTALL_PREFIX="/usr" \ - -DCMAKE_INSTALL_LIBDIR="/usr/lib" \ - -DCOMPIZ_DISABLE_SCHEMAS_INSTALL=On \ - -DCOMPIZ_BUILD_WITH_RPATH=Off \ - -DCOMPIZ_PACKAGING_ENABLED=On \ - -DBUILD_GTK=On \ - -DBUILD_METACITY=On \ - -DBUILD_KDE4=Off \ - -DCOMPIZ_BUILD_TESTING=Off \ - -DCOMPIZ_WERROR=Off \ + local _cmake_options=( + -B build + -S "$_pkgsrc" + + -DCMAKE_CXX_STANDARD=17 + -DCMAKE_BUILD_TYPE="Release" + -DCMAKE_INSTALL_PREFIX="/usr" + -DCMAKE_INSTALL_LIBDIR="/usr/lib" + -DCOMPIZ_DISABLE_SCHEMAS_INSTALL=ON + -DCOMPIZ_BUILD_WITH_RPATH=OFF + -DCOMPIZ_PACKAGING_ENABLED=ON + -DBUILD_GTK=ON + -DBUILD_METACITY=ON + -DBUILD_KDE4=OFF -DCOMPIZ_DEFAULT_PLUGINS="composite,opengl,decor,resize,place,move,compiztoolbox,staticswitcher,regex,animation,wall,ccp" - make + -DCOMPIZ_BUILD_TESTING=OFF + -DCOMPIZ_WERROR=OFF + -Wno-dev + ) + + cmake "${_cmake_options[@]}" + cmake --build build } package() { - cd "${_gitname}/build" - make DESTDIR="${pkgdir}" install + DESTDIR="$pkgdir" cmake --install build # findcompiz_install needs COMPIZ_DESTDIR and install needs DESTDIR # make findcompiz_install CMAKE_DIR=$(cmake --system-information | grep '^CMAKE_ROOT' | awk -F\" '{print $2}') - install -dm755 "${pkgdir}${CMAKE_DIR}/Modules/" - install -m644 ../cmake/FindCompiz.cmake "${pkgdir}${CMAKE_DIR}/Modules/" - - # Add documentation - install -dm755 "${pkgdir}/usr/share/doc/compiz/" - install ../{AUTHORS,NEWS,README} "${pkgdir}/usr/share/doc/compiz/" - - # Add gsettings schema files - if ls generated/glib-2.0/schemas/ | grep -qm1 .gschema.xml; then - install -dm755 "${pkgdir}/usr/share/glib-2.0/schemas/" - install -m644 generated/glib-2.0/schemas/*.gschema.xml "${pkgdir}/usr/share/glib-2.0/schemas/" - fi - - # Install licenses - install -dm755 "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 "${srcdir}/${_gitname}"/{COPYING,COPYING.GPL,COPYING.LGPL,COPYING.MIT} "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm644 "$_pkgsrc/cmake/FindCompiz.cmake" \ + -t "${pkgdir}${CMAKE_DIR}/Modules/" + + # documentation + #install -Dm644 "$_pkgsrc"/{AUTHORS,NEWS,README} \ + # -t "$pkgdir/usr/share/doc/compiz/" + + # gsettings schema files + if ls build/generated/glib-2.0/schemas/ | grep -qm1 .gschema.xml; then + install -Dm644 build/generated/glib-2.0/schemas/*.gschema.xml \ + -t "$pkgdir/usr/share/glib-2.0/schemas/" + fi + + # licenses + install -Dm644 "$_pkgsrc"/{COPYING,COPYING.GPL,COPYING.LGPL,COPYING.MIT} \ + -t "$pkgdir/usr/share/licenses/$pkgname" } + +# execute +_main_package |