/d' \
346 | -e '//N;/
\n.*\(We invite\|Chromium supports Vorbis\)/,/<\/p>/d' \
347 | -e '/^
3 | Date: Wed, 29 May 2024 00:10:25 +0000
4 | Subject: [PATCH] [ozone+wayland] Allow ANGLEImplementation::kVulkan when ozone
5 | platform is Wayland
6 |
7 | When passing `gl=egl-angle,angle=vulkan` flags on
8 | a device with an AMD graphics card and using
9 | `ozone wayland`, since
10 | `gl::ANGLEImplementation::kVulkan` is not in
11 | `WaylandSurfaceFactory::GetAllowedGLImplementations`,
12 | As a result, it cannot be initialized normally.
13 |
14 | This CL adds `gl::ANGLEImplementation::kVulkan` to
15 | `WaylandSurfaceFactory::GetAllowedGLImplementations`
16 | to ensure that it can be initialized normally.
17 |
18 | In addition, the changes made in this CL have been
19 | verified by many developers or users in the Linux
20 | community, and should not break other things
21 | without passing specific flags.
22 |
23 | Get VAAPI acceleration working on amdgpus,such as
24 | Radeon 780M.
25 |
26 | Bug: 334275637,40722838,41392107
27 | Change-Id: Id1c9720159ee6149b620e12e5dc7b9df89d38409
28 | Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5568860
29 | Commit-Queue: Ho Cheung
30 | Reviewed-by: Kramer Ge
31 | Reviewed-by: Nick Yamane
32 | Cr-Commit-Position: refs/heads/main@{#1307136}
33 | ---
34 | ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc | 1 +
35 | 1 file changed, 1 insertion(+)
36 |
37 | diff --git a/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc b/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc
38 | index b6e99324c02b..7602a6b8e693 100644
39 | --- a/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc
40 | +++ b/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc
41 | @@ -214,6 +214,7 @@ WaylandSurfaceFactory::GetAllowedGLImplementations() {
42 | impls.emplace_back(gl::ANGLEImplementation::kOpenGL);
43 | impls.emplace_back(gl::ANGLEImplementation::kOpenGLES);
44 | impls.emplace_back(gl::ANGLEImplementation::kSwiftShader);
45 | + impls.emplace_back(gl::ANGLEImplementation::kVulkan);
46 | impls.emplace_back(gl::kGLImplementationEGLGLES2);
47 | }
48 | return impls;
49 |
--------------------------------------------------------------------------------
/ungoogled-chromium/compiler-rt-adjust-paths.patch:
--------------------------------------------------------------------------------
1 | diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
2 | index d4de2e0cca0..57359c32121 100644
3 | --- a/build/config/clang/BUILD.gn
4 | +++ b/build/config/clang/BUILD.gn
5 | @@ -130,12 +130,15 @@ template("clang_lib") {
6 | } else if (is_linux || is_chromeos) {
7 | if (current_cpu == "x64") {
8 | _dir = "x86_64-unknown-linux-gnu"
9 | + _suffix = "-x86_64"
10 | } else if (current_cpu == "x86") {
11 | _dir = "i386-unknown-linux-gnu"
12 | + _suffix = "-i386"
13 | } else if (current_cpu == "arm") {
14 | _dir = "armv7-unknown-linux-gnueabihf"
15 | } else if (current_cpu == "arm64") {
16 | _dir = "aarch64-unknown-linux-gnu"
17 | + _suffix = "-aarch64"
18 | } else {
19 | assert(false) # Unhandled cpu type
20 | }
21 | @@ -166,6 +169,11 @@ template("clang_lib") {
22 | assert(false) # Unhandled target platform
23 | }
24 |
25 | + # Bit of a hack to make this find builtins from compiler-rt >= 16
26 | + if (is_linux || is_chromeos) {
27 | + _dir = "linux"
28 | + }
29 | +
30 | _clang_lib_dir = "$clang_base_path/lib/clang/$clang_version/lib"
31 | _lib_file = "${_prefix}clang_rt.${_libname}${_suffix}.${_ext}"
32 | libs = [ "$_clang_lib_dir/$_dir/$_lib_file" ]
33 |
--------------------------------------------------------------------------------
/ungoogled-chromium/drop-flag-unsupported-by-clang17.patch:
--------------------------------------------------------------------------------
1 | diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
2 | index 6efe967eb0a1..590a2c274ac1 100644
3 | --- a/build/config/compiler/BUILD.gn
4 | +++ b/build/config/compiler/BUILD.gn
5 | @@ -568,24 +568,6 @@ config("compiler") {
6 | }
7 | }
8 |
9 | - # TODO(crbug.com/40283598): This causes binary size growth and potentially
10 | - # other problems.
11 | - # TODO(crbug.com/40284925): This isn't supported by Cronet's mainline llvm version.
12 | - if (default_toolchain != "//build/toolchain/cros:target" &&
13 | - !llvm_android_mainline) {
14 | - cflags += [
15 | - "-mllvm",
16 | - "-split-threshold-for-reg-with-hint=0",
17 | - ]
18 | - if (use_thin_lto && is_a_target_toolchain) {
19 | - if (is_win) {
20 | - ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
21 | - } else {
22 | - ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
23 | - }
24 | - }
25 | - }
26 | -
27 | # TODO(crbug.com/40192287): Investigate why/if this should be needed.
28 | if (is_win) {
29 | cflags += [ "/clang:-ffp-contract=off" ]
30 |
--------------------------------------------------------------------------------
/ungoogled-chromium/ninja-out-of-order-generation-fix.patch:
--------------------------------------------------------------------------------
1 | --- a/content/browser/BUILD.gn
2 | +++ b/content/browser/BUILD.gn
3 | @@ -73,6 +73,7 @@
4 | "//cc/animation",
5 | "//cc/mojo_embedder",
6 | "//cc/paint",
7 | + "//chrome/common:buildflags",
8 | "//components/attribution_reporting:mojom",
9 | "//components/back_forward_cache:enum",
10 | "//components/browsing_topics/common:common",
11 | @@ -83,6 +84,7 @@
12 | "//components/download/public/common:public",
13 | "//components/file_access",
14 | "//components/filename_generation",
15 | + "//components/lens:buildflags",
16 | "//components/link_header_util",
17 | "//components/metrics",
18 | "//components/metrics:single_sample_metrics",
19 | --- a/chrome/browser/extensions/BUILD.gn
20 | +++ b/chrome/browser/extensions/BUILD.gn
21 | @@ -898,6 +898,7 @@
22 | "//components/resources",
23 | "//components/safe_browsing:buildflags",
24 | "//components/safe_browsing/content/browser/web_ui:web_ui",
25 | + "//components/safe_browsing/content/common/proto:download_file_types_proto",
26 | "//components/safe_browsing/core/browser/db:database_manager",
27 | "//components/safe_browsing/core/common",
28 | "//components/safe_browsing/core/common:safe_browsing_prefs",
29 | --- a/chrome/common/BUILD.gn
30 | +++ b/chrome/common/BUILD.gn
31 | @@ -605,6 +605,7 @@
32 | "//components/optimization_guide/optimization_guide_internals/webui:url_constants",
33 | "//components/password_manager/content/common",
34 | "//components/safe_browsing/core/common",
35 | + "//components/supervised_user/core/common:buildflags",
36 | "//device/vr/buildflags",
37 | ]
38 | }
39 |
--------------------------------------------------------------------------------
/ungoogled-chromium/update-patches.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | patches=(
4 | 0001-adjust-buffer-format-order.patch
5 | 0001-enable-linux-unstable-deb-target.patch
6 | 0001-ozone-wayland-implement-text_input_manager-fixes.patch
7 | 0001-ozone-wayland-implement-text_input_manager_v3.patch
8 | 0001-vaapi-flag-ozone-wayland.patch
9 | ninja-out-of-order-generation-fix.patch
10 | )
11 |
12 | mkdir tmp
13 | mv "${patches[@]}" tmp
14 |
15 | rm ./*.patch
16 | git clone https://gitlab.archlinux.org/archlinux/packaging/packages/chromium
17 | #(cd chromium && git checkout 29d40a45d11a56a36027bb128f70c9cd1a90edf3)
18 | mv chromium/*.patch .
19 | nvim -d PKGBUILD chromium/PKGBUILD
20 | makepkg --printsrcinfo > .SRCINFO
21 | rm -rf chromium
22 |
23 | mv tmp/* .
24 | rmdir tmp
25 |
--------------------------------------------------------------------------------
/ungoogled-chromium/use-oauth2-client-switches-as-default.patch:
--------------------------------------------------------------------------------
1 | diff --git a/google_apis/google_api_keys-inc.cc b/google_apis/google_api_keys-inc.cc
2 | index 4d13e697a54d..61aac7b48662 100644
3 | --- a/google_apis/google_api_keys-inc.cc
4 | +++ b/google_apis/google_api_keys-inc.cc
5 | @@ -193,11 +193,11 @@ class APIKeyCache {
6 | std::string default_client_id = CalculateKeyValue(
7 | GOOGLE_DEFAULT_CLIENT_ID,
8 | STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(),
9 | - nullptr, std::string(), environment.get(), command_line, gaia_config);
10 | + ::switches::kOAuth2ClientID, std::string(), environment.get(), command_line, gaia_config);
11 | std::string default_client_secret = CalculateKeyValue(
12 | GOOGLE_DEFAULT_CLIENT_SECRET,
13 | STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), std::string(),
14 | - nullptr, std::string(), environment.get(), command_line, gaia_config);
15 | + ::switches::kOAuth2ClientSecret, std::string(), environment.get(), command_line, gaia_config);
16 |
17 | // We currently only allow overriding the baked-in values for the
18 | // default OAuth2 client ID and secret using a command-line
19 |
--------------------------------------------------------------------------------
/xf86-video-amdgpu-git/.SRCINFO:
--------------------------------------------------------------------------------
1 | pkgbase = xf86-video-amdgpu-git
2 | pkgdesc = X.org amdgpu video driver (git version)
3 | pkgver = 21.0.0.r1.g6936552
4 | pkgrel = 1
5 | url = https://xorg.freedesktop.org/
6 | arch = x86_64
7 | groups = xorg-drivers
8 | license = custom
9 | makedepends = xorg-server-devel-git
10 | makedepends = systemd
11 | makedepends = git
12 | makedepends = pixman
13 | depends = systemd-libs
14 | depends = mesa
15 | provides = xf86-video-amdgpu
16 | conflicts = xf86-video-amdgpu
17 | conflicts = xorg-server<1.20.0
18 | source = xf86-video-amdgpu-git::git+https://gitlab.freedesktop.org/xorg/driver/xf86-video-amdgpu.git
19 | sha256sums = SKIP
20 |
21 | pkgname = xf86-video-amdgpu-git
22 |
--------------------------------------------------------------------------------
/xf86-video-amdgpu-git/.gitignore:
--------------------------------------------------------------------------------
1 | xf86-video-amdgpu-git
2 | src
3 | pkg
4 | *.pkg.*
5 | *.log
6 |
--------------------------------------------------------------------------------
/xf86-video-amdgpu-git/PKGBUILD:
--------------------------------------------------------------------------------
1 | # Maintainer: Yurii Kolesnykov
2 | # based on extra/xf86-video-amdgpu by:
3 | # Laurent Carlier
4 |
5 | pkgname=xf86-video-amdgpu-git
6 | _pkgname=xf86-video-amdgpu
7 | pkgver=21.0.0.r1.g6936552
8 | pkgrel=1
9 | pkgdesc="X.org amdgpu video driver (git version)"
10 | arch=('x86_64')
11 | url="https://xorg.freedesktop.org/"
12 | license=('custom')
13 | depends=('systemd-libs' 'mesa')
14 | makedepends=('xorg-server-devel-git' 'systemd' 'git' 'pixman')
15 | conflicts=('xf86-video-amdgpu' 'xorg-server<1.20.0')
16 | provides=('xf86-video-amdgpu')
17 | groups=('xorg-drivers')
18 | source=("${pkgname}::git+https://gitlab.freedesktop.org/xorg/driver/${_pkgname}.git")
19 | sha256sums=('SKIP')
20 |
21 | pkgver() {
22 | cd ${pkgname}
23 | git describe --long --tags | sed 's/^xf86.video.amdgpu.//;s/\([^-]*-g\)/r\1/;s/-/./g'
24 | }
25 |
26 | build() {
27 | cd ${pkgname}
28 |
29 | # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
30 | # With them, module fail to load with undefined symbol.
31 | # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845
32 | export CFLAGS=${CFLAGS/-fno-plt}
33 | export CXXFLAGS=${CXXFLAGS/-fno-plt}
34 | export LDFLAGS=${LDFLAGS/,-z,now}
35 |
36 | #CFLAGS+=' -fcommon' # https://wiki.gentoo.org/wiki/Gcc_10_porting_notes/fno_common
37 |
38 | ./autogen.sh --prefix=/usr \
39 | --enable-glamor
40 | make
41 | }
42 |
43 | check() {
44 | cd ${pkgname}
45 | make check
46 | }
47 |
48 | package() {
49 | cd ${pkgname}
50 |
51 | make "DESTDIR=${pkgdir}" install
52 | install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
53 | install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
54 | }
55 |
--------------------------------------------------------------------------------
/xf86-video-intel-git/.SRCINFO:
--------------------------------------------------------------------------------
1 | pkgbase = xf86-video-intel-git
2 | pkgdesc = X.org Intel i810/i830/i915/945G/G965+ video drivers
3 | pkgver = 2.99.917+909+g5ca3ac1a
4 | pkgrel = 1
5 | epoch = 1
6 | url = https://01.org/linuxgraphics
7 | install = xf86-video-intel.install
8 | arch = x86_64
9 | groups = xorg-drivers
10 | license = custom
11 | makedepends = xorg-server-devel
12 | makedepends = libx11
13 | makedepends = libxrender
14 | makedepends = libxv
15 | makedepends = libxrandr
16 | makedepends = libxinerama
17 | makedepends = libxcursor
18 | makedepends = libxtst
19 | makedepends = libxss
20 | makedepends = libxfont2
21 | makedepends = git
22 | depends = mesa
23 | depends = libxvmc
24 | depends = pixman
25 | depends = xcb-util>=0.3.9
26 | depends = systemd-libs
27 | optdepends = libxrandr: for intel-virtual-output
28 | optdepends = libxinerama: for intel-virtual-output
29 | optdepends = libxcursor: for intel-virtual-output
30 | optdepends = libxtst: for intel-virtual-output
31 | optdepends = libxss: for intel-virtual-output
32 | provides = xf86-video-intel
33 | provides = xf86-video-intel-uxa
34 | provides = xf86-video-intel-sna
35 | conflicts = xf86-video-intel
36 | conflicts = xorg-server<1.20
37 | conflicts = xf86-video-intel-sna
38 | conflicts = xf86-video-intel-sna
39 | conflicts = xf86-video-intel-uxa
40 | conflicts = xf86-video-i810
41 | conflicts = xf86-video-intel-legacy
42 | replaces = xf86-video-intel-uxa
43 | replaces = xf86-video-intel-sna
44 | source = xf86-video-intel::git+https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git
45 | sha256sums = SKIP
46 |
47 | pkgname = xf86-video-intel-git
48 |
49 |
--------------------------------------------------------------------------------
/xf86-video-intel-git/.gitignore:
--------------------------------------------------------------------------------
1 | xf86-video-intel-git
2 | src
3 | pkg
4 | *.pkg.*
5 | *.log
--------------------------------------------------------------------------------
/xf86-video-intel-git/PKGBUILD:
--------------------------------------------------------------------------------
1 | # Maintainer: Yurii Kolesnykov
2 | # Contributor: AndyRTR
3 | # Contributor: Jan de Groot
4 |
5 | pkgname=xf86-video-intel-git
6 | _pkgname=xf86-video-intel
7 | pkgver=2.99.917+909+g5ca3ac1a
8 | pkgrel=1
9 | epoch=1
10 | arch=(x86_64)
11 | url="https://01.org/linuxgraphics"
12 | license=('custom')
13 | install="${_pkgname}.install"
14 | pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
15 | depends=('mesa' 'libxvmc' 'pixman' 'xcb-util>=0.3.9' 'systemd-libs')
16 | makedepends=('xorg-server-devel' 'libx11' 'libxrender' 'libxv'
17 | # additional deps for intel-virtual-output
18 | 'libxrandr' 'libxinerama' 'libxcursor' 'libxtst' 'libxss'
19 | 'libxfont2'
20 | # additional for git snapshot
21 | 'git') # 'meson' 'valgrind')
22 | optdepends=('libxrandr: for intel-virtual-output'
23 | 'libxinerama: for intel-virtual-output'
24 | 'libxcursor: for intel-virtual-output'
25 | 'libxtst: for intel-virtual-output'
26 | 'libxss: for intel-virtual-output')
27 | replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
28 | provides=("${_pkgname}" 'xf86-video-intel-uxa' 'xf86-video-intel-sna')
29 | conflicts=("${_pkgname}" 'xorg-server<1.20' 'xf86-video-intel-sna'
30 | 'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 'xf86-video-intel-legacy')
31 | groups=('xorg-drivers')
32 | source=("${_pkgname}::git+https://gitlab.freedesktop.org/xorg/driver/${_pkgname}.git")
33 | sha256sums=('SKIP')
34 |
35 | pkgver() {
36 | cd "${_pkgname}"
37 | git describe --tags | sed 's/-/+/g'
38 | }
39 |
40 | prepare() {
41 | cd "${_pkgname}"
42 | NOCONFIGURE=1 ./autogen.sh
43 |
44 | # mkdir build
45 | }
46 |
47 | build() {
48 | cd "${_pkgname}"
49 |
50 | # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
51 | # With them, module fail to load with undefined symbol.
52 | # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845
53 | export CFLAGS=${CFLAGS/-fno-plt}
54 | export CXXFLAGS=${CXXFLAGS/-fno-plt}
55 | export LDFLAGS=${LDFLAGS/,-z,now}
56 |
57 | ./configure --prefix=/usr \
58 | --libexecdir=/usr/lib \
59 | --with-default-dri=3
60 | make
61 | # cd build
62 | # arch-meson $pkgname build \
63 | # -Dwith-default-dri=3
64 | # ninja -C build
65 | }
66 |
67 | check() {
68 | cd "${_pkgname}"
69 | make check
70 | # meson test -C build
71 | }
72 |
73 | package() {
74 | cd "${_pkgname}"
75 |
76 | make DESTDIR="${pkgdir}" install
77 |
78 | # DESTDIR="$pkgdir" ninja -C build install
79 |
80 | install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
81 | install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
82 | }
83 |
--------------------------------------------------------------------------------
/xf86-video-intel-git/xf86-video-intel.install:
--------------------------------------------------------------------------------
1 | post_install() {
2 | cat <>> This driver now uses DRI3 as the default Direct Rendering
4 | Infrastructure. You can try falling back to DRI2 if you run
5 | into trouble. To do so, save a file with the following
6 | content as /etc/X11/xorg.conf.d/20-intel.conf :
7 | Section "Device"
8 | Identifier "Intel Graphics"
9 | Driver "intel"
10 | Option "DRI" "2" # DRI3 is now default
11 | #Option "AccelMethod" "sna" # default
12 | #Option "AccelMethod" "uxa" # fallback
13 | EndSection
14 | MSG
15 | }
16 |
17 | post_upgrade() {
18 | if (( $(vercmp $2 1:2.99.917+684+g6988b87-3) < 0 )); then
19 | post_install
20 | fi
21 | }
22 |
--------------------------------------------------------------------------------
/xorg-server-git/.SRCINFO:
--------------------------------------------------------------------------------
1 | pkgbase = xorg-server-git
2 | pkgver = 21.1.99.1.r1061.ge61bd1e5f
3 | pkgrel = 1
4 | url = https://xorg.freedesktop.org
5 | arch = x86_64
6 | groups = xorg
7 | license = custom
8 | makedepends = xorgproto-git
9 | makedepends = pixman
10 | makedepends = libx11
11 | makedepends = mesa
12 | makedepends = mesa-libgl
13 | makedepends = xtrans
14 | makedepends = libxkbfile
15 | makedepends = libxfont2
16 | makedepends = libpciaccess
17 | makedepends = libxv
18 | makedepends = libxcvt
19 | makedepends = libxmu
20 | makedepends = libxrender
21 | makedepends = libxi
22 | makedepends = libxaw
23 | makedepends = libxtst
24 | makedepends = libxres
25 | makedepends = xorg-xkbcomp
26 | makedepends = xorg-util-macros
27 | makedepends = xorg-font-util
28 | makedepends = libepoxy
29 | makedepends = xcb-util
30 | makedepends = xcb-util-image
31 | makedepends = xcb-util-renderutil
32 | makedepends = xcb-util-wm
33 | makedepends = xcb-util-keysyms
34 | makedepends = libxshmfence
35 | makedepends = libunwind
36 | makedepends = systemd
37 | makedepends = meson
38 | makedepends = git
39 | options = debug
40 | source = git+https://gitlab.freedesktop.org/xorg/xserver.git
41 | source = xvfb-run
42 | source = xvfb-run.1
43 | sha512sums = SKIP
44 | sha512sums = 87c79b4a928e74463f96f58d277558783eac9b8ea6ba00d6bbbb67ad84c4d65b3792d960ea2a70089ae18162e82ae572a49ad36df169c974cc99dbaa51f63eb2
45 | sha512sums = de5e2cb3c6825e6cf1f07ca0d52423e17f34d70ec7935e9dd24be5fb9883bf1e03b50ff584931bd3b41095c510ab2aa44d2573fd5feaebdcb59363b65607ff22
46 |
47 | pkgname = xorg-server-git
48 | pkgdesc = Xorg X server (git version)
49 | install = xorg-server-git.install
50 | depends = libepoxy
51 | depends = libxfont2
52 | depends = pixman
53 | depends = xorg-server-common-git
54 | depends = libunwind
55 | depends = dbus
56 | depends = libgl
57 | depends = xf86-input-libinput
58 | depends = nettle
59 | depends = libpciaccess
60 | depends = libdrm
61 | depends = libxshmfence
62 | depends = libxcvt
63 | provides = X-ABI-VIDEODRV_VERSION=25.3
64 | provides = X-ABI-XINPUT_VERSION=24.4
65 | provides = X-ABI-EXTENSION_VERSION=10.0
66 | provides = x-server
67 | provides = xorg-server
68 | conflicts = xorg-server
69 | conflicts = nvidia-utils<=331.20
70 | conflicts = glamor-egl
71 | conflicts = xf86-video-modesetting
72 | replaces = glamor-egl
73 | replaces = xf86-video-modesetting
74 |
75 | pkgname = xorg-server-common-git
76 | pkgdesc = Xorg server common files (git version)
77 | depends = xkeyboard-config
78 | depends = xorg-xkbcomp
79 | depends = xorg-setxkbmap
80 | provides = xorg-server-common
81 | conflicts = xorg-server-common
82 |
83 | pkgname = xorg-server-devel-git
84 | pkgdesc = Development files for the X.Org X server (git version)
85 | depends = xorgproto-git
86 | depends = mesa
87 | depends = libpciaccess
88 | depends = xorg-util-macros
89 | provides = xorg-server-devel
90 | conflicts = xorg-server-devel
91 |
92 | pkgname = xorg-server-xephyr-git
93 | pkgdesc = A nested X server that runs as an X application (git version)
94 | depends = libxfont2
95 | depends = libgl
96 | depends = libepoxy
97 | depends = libunwind
98 | depends = systemd-libs
99 | depends = libxv
100 | depends = pixman
101 | depends = xorg-server-common-git
102 | depends = xcb-util-image
103 | depends = xcb-util-renderutil
104 | depends = xcb-util-wm
105 | depends = xcb-util-keysyms
106 | depends = nettle
107 | depends = libtirpc
108 | provides = xorg-server-xephyr
109 | conflicts = xorg-server-xephyr
110 |
111 | pkgname = xorg-server-xnest-git
112 | pkgdesc = A nested X server that runs as an X application (git version)
113 | depends = libxfont2
114 | depends = libunwind
115 | depends = libxext
116 | depends = pixman
117 | depends = xorg-server-common-git
118 | depends = nettle
119 | depends = libtirpc
120 | depends = systemd-libs
121 | provides = xorg-server-xnest
122 | conflicts = xorg-server-xnest
123 |
124 | pkgname = xorg-server-xvfb-git
125 | pkgdesc = Virtual framebuffer X server (git version)
126 | depends = libxfont2
127 | depends = libunwind
128 | depends = pixman
129 | depends = xorg-server-common-git
130 | depends = xorg-xauth
131 | depends = libgl
132 | depends = nettle
133 | depends = libtirpc
134 | depends = systemd-libs
135 | provides = xorg-server-xvfb
136 | conflicts = xorg-server-xvfb
137 |
--------------------------------------------------------------------------------
/xorg-server-git/.gitignore:
--------------------------------------------------------------------------------
1 | xserver/
2 | src/
3 | pkg/
4 | *.pkg.*
5 | *.log
6 | PKG-orig
7 |
--------------------------------------------------------------------------------
/xorg-server-git/PKGBUILD:
--------------------------------------------------------------------------------
1 | # Maintainer: JustKidding
2 | # Co-maintainer: Yurii Kolesnykov
3 | # Based on extra/xorg-server by
4 | # AndyRTR
5 | # Jan de Groot
6 |
7 | pkgbase=xorg-server-git
8 | pkgname=(
9 | 'xorg-server-git'
10 | 'xorg-server-common-git'
11 | 'xorg-server-devel-git'
12 | 'xorg-server-xephyr-git'
13 | 'xorg-server-xnest-git'
14 | 'xorg-server-xvfb-git'
15 | )
16 | _pkgbase='xserver'
17 | pkgver=21.1.99.1.r1061.ge61bd1e5f
18 | pkgrel=1
19 | arch=('x86_64')
20 | license=('custom')
21 | groups=('xorg')
22 | url="https://xorg.freedesktop.org"
23 | options=('debug')
24 | makedepends=('xorgproto-git' 'pixman' 'libx11' 'mesa' 'mesa-libgl' 'xtrans'
25 | 'libxkbfile' 'libxfont2' 'libpciaccess' 'libxv' 'libxcvt'
26 | 'libxmu' 'libxrender' 'libxi' 'libxaw' 'libxtst' 'libxres'
27 | 'xorg-xkbcomp' 'xorg-util-macros' 'xorg-font-util' 'libepoxy'
28 | 'xcb-util' 'xcb-util-image' 'xcb-util-renderutil' 'xcb-util-wm' 'xcb-util-keysyms'
29 | 'libxshmfence' 'libunwind' 'systemd' 'meson' 'git')
30 | _srcurl=git+https://gitlab.freedesktop.org/xorg/xserver.git
31 | source=($_srcurl
32 | xvfb-run # with updates from FC master
33 | xvfb-run.1
34 | )
35 | sha512sums=('SKIP'
36 | '87c79b4a928e74463f96f58d277558783eac9b8ea6ba00d6bbbb67ad84c4d65b3792d960ea2a70089ae18162e82ae572a49ad36df169c974cc99dbaa51f63eb2'
37 | 'de5e2cb3c6825e6cf1f07ca0d52423e17f34d70ec7935e9dd24be5fb9883bf1e03b50ff584931bd3b41095c510ab2aa44d2573fd5feaebdcb59363b65607ff22')
38 |
39 | pkgver() {
40 | cd "${_pkgbase}"
41 |
42 | # replace latest tag with version from meson
43 | local _meson_ver=`grep -m 1 version meson.build | cut -d\' -f 2`
44 | # cutting off 'xorg.server.' prefix that presents in the git tag
45 | local _git_ver=`git describe --long --tags | sed 's/^xorg.server.//;s/\([^-]*-g\)/r\1/;s/-/./g'`
46 | local _git_tag=`git describe --tags --abbrev=0 | sed 's/^xorg.server.//'`
47 |
48 | printf "${_git_ver/$_git_tag/$_meson_ver}"
49 | }
50 |
51 | build() {
52 | # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
53 | # With them, module fail to load with undefined symbol.
54 | # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845
55 | export CFLAGS=${CFLAGS/-fno-plt}
56 | export CXXFLAGS=${CXXFLAGS/-fno-plt}
57 | export LDFLAGS=${LDFLAGS/-Wl,-z,now}
58 |
59 | arch-meson "${_pkgbase}" build \
60 | -D ipv6=true \
61 | -D xvfb=true \
62 | -D xnest=true \
63 | -D xcsecurity=true \
64 | -D xorg=true \
65 | -D xephyr=true \
66 | -D glamor=true \
67 | -D udev=true \
68 | -D dtrace=false \
69 | -D systemd_logind=true \
70 | -D suid_wrapper=true \
71 | -D xkb_dir=/usr/share/X11/xkb \
72 | -D xkb_output_dir=/var/lib/xkb \
73 | -D libunwind=true
74 |
75 | # Print config
76 | meson configure build
77 | ninja -C build
78 |
79 | # fake installation to be seperated into packages
80 | DESTDIR="${srcdir}/fakeinstall" ninja -C build install
81 | }
82 |
83 | check() {
84 | meson test -C build
85 | }
86 |
87 | _install() {
88 | local src f dir
89 | for src; do
90 | f="${src#fakeinstall/}"
91 | dir="${pkgdir}/${f%/*}"
92 | install -m755 -d "${dir}"
93 | # use copy so a new file is created and fakeroot can track properties such as setuid
94 | cp -av "${src}" "${dir}/"
95 | rm -rf "${src}"
96 | done
97 | }
98 |
99 | package_xorg-server-common-git() {
100 | pkgdesc="Xorg server common files (git version)"
101 | depends=(xkeyboard-config xorg-xkbcomp xorg-setxkbmap)
102 | provides=('xorg-server-common')
103 | conflicts=('xorg-server-common')
104 |
105 | _install fakeinstall/usr/lib/xorg/protocol.txt
106 | _install fakeinstall/usr/share/man/man1/Xserver.1
107 |
108 | install -m644 -Dt "${pkgdir}/var/lib/xkb/" "${_pkgbase}"/xkb/README.compiled
109 | # license
110 | install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${_pkgbase}"/COPYING
111 | }
112 |
113 | package_xorg-server-git() {
114 | pkgdesc="Xorg X server (git version)"
115 | depends=(libepoxy libxfont2 pixman xorg-server-common-git libunwind
116 | dbus libgl xf86-input-libinput nettle
117 | libpciaccess libdrm libxshmfence libxcvt) # FS#52949
118 | # see xorg-server-*/hw/xfree86/common/xf86Module.h for ABI versions - we provide major numbers that drivers can depend on
119 | # and /usr/lib/pkgconfig/xorg-server.pc in xorg-server-devel pkg
120 | provides=('X-ABI-VIDEODRV_VERSION=25.3' 'X-ABI-XINPUT_VERSION=24.4' 'X-ABI-EXTENSION_VERSION=10.0' 'x-server' 'xorg-server')
121 | conflicts=('xorg-server' 'nvidia-utils<=331.20' 'glamor-egl' 'xf86-video-modesetting')
122 | replaces=('glamor-egl' 'xf86-video-modesetting')
123 | install=xorg-server-git.install
124 |
125 | _install fakeinstall/usr/bin/{X,Xorg,gtf}
126 | _install fakeinstall/usr/lib/Xorg{,.wrap}
127 | _install fakeinstall/usr/lib/xorg/modules/*
128 | _install fakeinstall/usr/share/X11/xorg.conf.d/10-quirks.conf
129 | _install fakeinstall/usr/share/man/man1/{Xorg,Xorg.wrap,gtf}.1
130 | _install fakeinstall/usr/share/man/man4/{exa,fbdevhw,inputtestdrv,modesetting}.4
131 | _install fakeinstall/usr/share/man/man5/{Xwrapper.config,xorg.conf,xorg.conf.d}.5
132 |
133 | # distro specific files must be installed in /usr/share/X11/xorg.conf.d
134 | install -m755 -d "${pkgdir}/etc/X11/xorg.conf.d"
135 |
136 | # license
137 | install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${_pkgbase}"/COPYING
138 | }
139 |
140 | package_xorg-server-xephyr-git() {
141 | pkgdesc="A nested X server that runs as an X application (git version)"
142 | depends=(libxfont2 libgl libepoxy libunwind systemd-libs libxv pixman xorg-server-common-git
143 | xcb-util-image xcb-util-renderutil xcb-util-wm xcb-util-keysyms
144 | nettle libtirpc)
145 | provides=('xorg-server-xephyr')
146 | conflicts=('xorg-server-xephyr')
147 |
148 | _install fakeinstall/usr/bin/Xephyr
149 | _install fakeinstall/usr/share/man/man1/Xephyr.1
150 |
151 | # license
152 | install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${_pkgbase}"/COPYING
153 | }
154 |
155 | package_xorg-server-xvfb-git() {
156 | pkgdesc="Virtual framebuffer X server (git version)"
157 | depends=(libxfont2 libunwind pixman xorg-server-common-git xorg-xauth
158 | libgl nettle libtirpc systemd-libs)
159 | provides=('xorg-server-xvfb')
160 | conflicts=('xorg-server-xvfb')
161 |
162 | _install fakeinstall/usr/bin/Xvfb
163 | _install fakeinstall/usr/share/man/man1/Xvfb.1
164 |
165 | install -m755 "${srcdir}/xvfb-run" "${pkgdir}/usr/bin/"
166 | install -m644 "${srcdir}/xvfb-run.1" "${pkgdir}/usr/share/man/man1/" # outda
167 |
168 | # license
169 | install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${_pkgbase}"/COPYING
170 | }
171 |
172 | package_xorg-server-xnest-git() {
173 | pkgdesc="A nested X server that runs as an X application (git version)"
174 | depends=(libxfont2 libunwind libxext pixman xorg-server-common-git nettle libtirpc systemd-libs)
175 | provides=('xorg-server-xnest')
176 | conflicts=('xorg-server-xnest')
177 |
178 | _install fakeinstall/usr/bin/Xnest
179 | _install fakeinstall/usr/share/man/man1/Xnest.1
180 |
181 | # license
182 | install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${_pkgbase}"/COPYING
183 | }
184 |
185 | package_xorg-server-devel-git() {
186 | pkgdesc="Development files for the X.Org X server (git version)"
187 | depends=('xorgproto-git' 'mesa' 'libpciaccess'
188 | # not technically required but almost every Xorg pkg needs it to build
189 | 'xorg-util-macros')
190 | provides=('xorg-server-devel')
191 | conflicts=('xorg-server-devel')
192 |
193 | _install fakeinstall/usr/include/xorg/*
194 | _install fakeinstall/usr/lib/pkgconfig/xorg-server.pc
195 | _install fakeinstall/usr/share/aclocal/xorg-server.m4
196 |
197 | # license
198 | install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${_pkgbase}"/COPYING
199 |
200 | # make sure there are no files left to install
201 | #find fakeinstall -depth -print0 | xargs -0 rmdir
202 | }
203 |
--------------------------------------------------------------------------------
/xorg-server-git/xorg-server-git.install:
--------------------------------------------------------------------------------
1 | post_upgrade() {
2 | if (( $(vercmp $2 1.16.0-3) < 0 )); then
3 | post_install
4 | fi
5 | }
6 |
7 | post_install() {
8 | cat <>> xorg-server has now the ability to run without root rights with
10 | the help of systemd-logind. xserver will fail to run if not launched
11 | from the same virtual terminal as was used to log in.
12 | Without root rights, log files will be in ~/.local/share/xorg/ directory.
13 |
14 | Old behavior can be restored through Xorg.wrap config file.
15 | See Xorg.wrap man page (man xorg.wrap).
16 | MSG
17 | }
18 |
19 |
--------------------------------------------------------------------------------
/xorg-server-git/xvfb-run:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | # --- T2-COPYRIGHT-NOTE-BEGIN ---
3 | # This copyright note is auto-generated by ./scripts/Create-CopyPatch.
4 | #
5 | # T2 SDE: package/.../xorg-server/xvfb-run.sh
6 | # Copyright (C) 2005 The T2 SDE Project
7 | # Copyright (C) XXXX - 2005 Debian
8 | #
9 | # More information can be found in the files COPYING and README.
10 | #
11 | # This program is free software; you can redistribute it and/or modify
12 | # it under the terms of the GNU General Public License as published by
13 | # the Free Software Foundation; version 2 of the License. A copy of the
14 | # GNU General Public License can be found in the file COPYING.
15 | # --- T2-COPYRIGHT-NOTE-END ---
16 |
17 | # $Id$
18 | # from: http://necrotic.deadbeast.net/xsf/XFree86/trunk/debian/local/xvfb-run
19 |
20 | # This script starts an instance of Xvfb, the "fake" X server, runs a command
21 | # with that server available, and kills the X server when done. The return
22 | # value of the command becomes the return value of this script.
23 | #
24 | # If anyone is using this to build a Debian package, make sure the package
25 | # Build-Depends on xvfb, xbase-clients, and xfonts-base.
26 |
27 | set -e
28 |
29 | PROGNAME=xvfb-run
30 | SERVERNUM=99
31 | AUTHFILE=
32 | ERRORFILE=/dev/null
33 | STARTWAIT=3
34 | XVFBARGS="-screen 0 640x480x24"
35 | LISTENTCP="-nolisten tcp"
36 | XAUTHPROTO=.
37 |
38 | # Query the terminal to establish a default number of columns to use for
39 | # displaying messages to the user. This is used only as a fallback in the event
40 | # the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the
41 | # script is running, and this cannot, only being calculated once.)
42 | DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true
43 | if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" >/dev/null 2>&1; then
44 | DEFCOLUMNS=80
45 | fi
46 |
47 | # Display a message, wrapping lines at the terminal width.
48 | message () {
49 | echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS}
50 | }
51 |
52 | # Display an error message.
53 | error () {
54 | message "error: $*" >&2
55 | }
56 |
57 | # Display a usage message.
58 | usage () {
59 | if [ -n "$*" ]; then
60 | message "usage error: $*"
61 | fi
62 | cat <&2
142 | exit 2
143 | fi
144 |
145 | if ! type xauth >/dev/null; then
146 | error "xauth command not found"
147 | exit 3
148 | fi
149 |
150 | # Set up the temp dir for the pid and X authorization file
151 | XVFB_RUN_TMPDIR="$(mktemp --directory --tmpdir $PROGNAME.XXXXXX)"
152 | # If the user did not specify an X authorization file to use, set up a temporary
153 | # directory to house one.
154 | if [ -z "$AUTHFILE" ]; then
155 | AUTHFILE=$(mktemp -p "$XVFB_RUN_TMPDIR" Xauthority.XXXXXX)
156 | fi
157 |
158 | # Start Xvfb.
159 | MCOOKIE=$(mcookie)
160 |
161 | if [ -z "$AUTO_DISPLAY" ]; then
162 | # Old style using a pre-computed SERVERNUM
163 | XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP >>"$ERRORFILE" \
164 | 2>&1 &
165 | XVFBPID=$!
166 | else
167 | # New style using Xvfb to provide a free display
168 | PIDFILE=$(mktemp -p "$XVFB_RUN_TMPDIR" pid.XXXXXX)
169 | SERVERNUM=$(XAUTHORITY=$AUTHFILE Xvfb -displayfd 1 $XVFBARGS $LISTENTCP \
170 | 2>"$ERRORFILE" & echo $! > $PIDFILE)
171 | XVFBPID=$(cat $PIDFILE)
172 | fi
173 | sleep "$STARTWAIT"
174 |
175 | XAUTHORITY=$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1
176 | add :$SERVERNUM $XAUTHPROTO $MCOOKIE
177 | EOF
178 |
179 | # Start the command and save its exit status.
180 | set +e
181 | DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@"
182 | RETVAL=$?
183 | set -e
184 |
185 | # Kill Xvfb now that the command has exited.
186 | kill $XVFBPID
187 |
188 | # Clean up.
189 | XAUTHORITY=$AUTHFILE xauth remove ":$SERVERNUM" >"$ERRORFILE" 2>&1
190 | if [ -n "$XVFB_RUN_TMPDIR" ]; then
191 | if ! rm -r "$XVFB_RUN_TMPDIR"; then
192 | error "problem while cleaning up temporary directory"
193 | exit 5
194 | fi
195 | fi
196 |
197 | # Return the executed command's exit status.
198 | exit $RETVAL
199 |
200 | # vim:set ai et sts=4 sw=4 tw=80:
201 |
--------------------------------------------------------------------------------
/xorg-server-git/xvfb-run.1:
--------------------------------------------------------------------------------
1 | .\" $Id: xvfb-run.1 2138 2005-01-17 23:40:27Z branden $
2 | .\"
3 | .\" Copyright 1998-2004 Branden Robinson .
4 | .\"
5 | .\" This is free software; you may redistribute it and/or modify
6 | .\" it under the terms of the GNU General Public License as
7 | .\" published by the Free Software Foundation; either version 2,
8 | .\" or (at your option) any later version.
9 | .\"
10 | .\" This is distributed in the hope that it will be useful, but
11 | .\" WITHOUT ANY WARRANTY; without even the implied warranty of
12 | .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | .\" GNU General Public License for more details.
14 | .\"
15 | .\" You should have received a copy of the GNU General Public License with
16 | .\" the Debian operating system, in /usr/share/common-licenses/GPL; if
17 | .\" not, write to the Free Software Foundation, Inc., 59 Temple Place,
18 | .\" Suite 330, Boston, MA 02111-1307 USA
19 | .\"
20 | .\" We need the URL macro from groff's www macro package, but also want
21 | .\" things to work all right for people who don't have it. So we define
22 | .\" our own URL macro and let the www macro package override it if it's
23 | .\" available.
24 | .de URL
25 | \\$2 \(laURL: \\$1 \(ra\\$3
26 | ..
27 | .if \n[.g] .mso www.tmac
28 | .TH xvfb\-run 1 "2004\-11\-12" "Debian Project"
29 | .SH NAME
30 | xvfb\-run \- run specified X client or command in a virtual X server environment
31 | .SH SYNOPSIS
32 | .B xvfb\-run
33 | [
34 | .I options
35 | ]
36 | .I command
37 | .SH DESCRIPTION
38 | .B xvfb\-run
39 | is a wrapper for the
40 | .BR Xvfb (1x)
41 | command which simplifies the task of running commands (typically an X
42 | client, or a script containing a list of clients to be run) within a virtual
43 | X server environment.
44 | .PP
45 | .B xvfb\-run
46 | sets up an X authority file (or uses an existing user\-specified one),
47 | writes a cookie to it (see
48 | .BR xauth (1x))
49 | and then starts the
50 | .B Xvfb
51 | X server as a background process.
52 | The process ID of
53 | .B Xvfb
54 | is stored for later use.
55 | The specified
56 | .I command
57 | is then run using the X display corresponding to the
58 | .B Xvfb
59 | server
60 | just started and the X authority file created earlier.
61 | .PP
62 | When the
63 | .I command
64 | exits, its status is saved, the
65 | .B Xvfb
66 | server is killed (using the process ID stored earlier), the X authority
67 | cookie removed, and the authority file deleted (if the user did not specify
68 | one to use).
69 | .B xvfb\-run
70 | then exits with the exit status of
71 | .IR command .
72 | .PP
73 | .B xvfb\-run
74 | requires the
75 | .B xauth
76 | command to function.
77 | .SH OPTIONS
78 | .TP
79 | .B \-a\fR,\fB \-\-auto\-servernum
80 | Try to get a free server number, starting at 99, or the argument to
81 | .BR \-\-server\-num .
82 | .TP
83 | .BI \-e\ file \fR,\fB\ \-\-error\-file= file
84 | Store output from
85 | .B xauth
86 | and
87 | .B Xvfb
88 | in
89 | .IR file .
90 | The default is
91 | .IR /dev/null .
92 | .TP
93 | .BI \-f\ file \fR,\fB\ \-\-auth\-file= file
94 | Store X authentication data in
95 | .IR file .
96 | By default, a temporary directory called
97 | .IR xvfb\-run. PID
98 | (where PID is the process ID of
99 | .B xvfb\-run
100 | itself) is created in the directory specified by the environment variable
101 | .B TMPDIR
102 | (or
103 | .I /tmp
104 | if that variable is null or unset), and the
105 | .BR tempfile (1)
106 | command is used to create a file in that temporary directory called
107 | .IR Xauthority .
108 | .TP
109 | .B \-h\fR,\fB \-\-help
110 | Display a usage message and exit.
111 | .TP
112 | .BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber
113 | Use
114 | .I servernumber
115 | as the server number (but see the
116 | .B \-a\fR,\fB \-\-auto\-servernum
117 | option above).
118 | The default is 99.
119 | .TP
120 | .B \-l\fR,\fB \-\-listen\-tcp
121 | Enable TCP port listening in the X server.
122 | For security reasons (to avoid denial\-of\-service attacks or exploits),
123 | TCP port listening is disabled by default.
124 | .TP
125 | .BI \-p\ protocolname \fR,\fB\ \-\-xauth\-protocol= protocolname
126 | Use
127 | .I protocolname
128 | as the X authority protocol to use.
129 | The default is \(oq.\(cq, which
130 | .B xauth
131 | interprets as its own default protocol, which is MIT\-MAGIC\-COOKIE\-1.
132 | .TP
133 | .BI \-s\ arguments \fR,\fB\ \-\-server\-args= arguments
134 | Pass
135 | .I arguments
136 | to the
137 | .B Xvfb
138 | server.
139 | Be careful to quote any whitespace characters that may occur within
140 | .I arguments
141 | to prevent them from regarded as separators for
142 | .BR xvfb\-run 's
143 | own arguments.
144 | Also, note that specification of \(oq\-nolisten tcp\(cq in
145 | .I arguments
146 | may override the function of
147 | .BR xvfb\-run 's
148 | own
149 | .B \-l\fR,\fB \-\-listen\-tcp
150 | option, and that specification of the server number (e.g., \(oq:1\(cq) may
151 | be ignored because of the way the X server parses its argument list.
152 | Use the
153 | .B xvfb\-run
154 | option
155 | .BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber
156 | to achieve the latter function.
157 | The default is \(oq\-screen 0 640x480x8\(cq.
158 | .TP
159 | .BI \-w\ delay \fR,\fB\ \-\-wait= delay
160 | Wait
161 | .I delay
162 | seconds after launching
163 | .B Xvfb
164 | before attempting to start the specified command.
165 | The default is 3.
166 | .SH ENVIRONMENT
167 | .TP
168 | .B COLUMNS
169 | indicates the width of the terminal device in character cells.
170 | This value is used for formatting diagnostic messages.
171 | If not set, the terminal is queried using
172 | .BR stty (1)
173 | to determine its width.
174 | If that fails, a value of \(oq80\(cq is assumed.
175 | .TP
176 | .B TMPDIR
177 | specifies the directory in which to place
178 | .BR xvfb\-run 's
179 | temporary directory for storage of the X authority file; only used if the
180 | .B \-f
181 | or
182 | .B \-\-auth\-file
183 | options are not specified.
184 | .SH "OUTPUT FILES"
185 | .PP
186 | Unless the
187 | .B \-f
188 | or
189 | .B \-\-auth\-file
190 | options are specified, a temporary
191 | directory and file within it are created (and deleted) to store the X
192 | authority cookies used by the
193 | .B Xvfb
194 | server and client(s) run under it.
195 | See
196 | .BR tempfile (1).
197 | If \-f or \-\-auth\-file are used, then the specified X authority file is
198 | only written to, not created or deleted (though
199 | .B xauth
200 | creates an authority file itself if told to use use that does not already
201 | exist).
202 | .PP
203 | An error file with a user\-specified name is also created if the
204 | .B \-e
205 | or
206 | .B \-\-error\-file
207 | options are specifed; see above.
208 | .SH "EXIT STATUS"
209 | .B xvfb\-run
210 | uses its exit status as well as output to standard error to communicate
211 | diagnostics.
212 | The exit status of \(oq1\(cq is not used, and should be interpreted as failure
213 | of the specified command.
214 | .TP
215 | 0
216 | .B xvfb\-run
217 | only uses this exit status if the
218 | .B \-h\fR,\fB \-\-help
219 | option is given.
220 | In all other situations, this may be interpreted as success of the specified
221 | command.
222 | .TP
223 | 2
224 | No command to run was specified.
225 | .TP
226 | 3
227 | The
228 | .B xauth
229 | command is not available.
230 | .TP
231 | 4
232 | The temporary directory that was going to be used already exists; since
233 | .B xvfb\-run
234 | produces a uniquely named directory, this may indicate an attempt by another
235 | process on the system to exploit a temporary file race condition.
236 | .TP
237 | 5
238 | A problem was encountered while cleaning up the temporary directory.
239 | .TP
240 | 6
241 | A problem was encountered while using
242 | .BR getopt (1)
243 | to parse the command\-line arguments.
244 | .SH EXAMPLES
245 | .TP
246 | .B xvfb\-run \-\-auto\-servernum \-\-server\-num=1 xlogo
247 | runs the
248 | .BR xlogo (1x)
249 | demonstration client inside the
250 | .B Xvfb
251 | X server on the first available server number greater than or equal to 1.
252 | .TP
253 | .B xvfb\-run \-\-server\-args="\-screen 0 1024x768x24" ico \-faces
254 | runs the
255 | .BR ico (1x)
256 | demonstration client (and passes it the
257 | .B \-faces
258 | argument) inside the
259 | .B Xvfb
260 | X server, configured with a root window of 1024 by 768 pixels and a color
261 | depth of 24 bits.
262 | .PP
263 | Note that the demo X clients used in the above examples will not exit on
264 | their own, so they will have to be killed before
265 | .B xvfb\-run
266 | will exit.
267 | .SH BUGS
268 | See
269 | .URL "http://bugs.debian.org/xvfb" "the Debian Bug Tracking System" .
270 | If you wish to report a bug in
271 | .BR xvfb\-run ,
272 | please use the
273 | .BR reportbug (1)
274 | command.
275 | .SH AUTHOR
276 | .B xfvb\-run
277 | was written by Branden Robinson and Jeff Licquia with sponsorship from
278 | Progeny Linux Systems.
279 | .SH "SEE ALSO"
280 | .BR Xvfb (1x),
281 | .BR xauth (1x)
282 | .\" vim:set et tw=80:
283 |
--------------------------------------------------------------------------------
/xorgproto-git/.SRCINFO:
--------------------------------------------------------------------------------
1 | pkgbase = xorgproto-git
2 | pkgdesc = combined X.Org X11 Protocol headers (git version)
3 | pkgver = 2021.5.1.r2711.g914d8f5
4 | pkgrel = 1
5 | url = https://xorg.freedesktop.org/
6 | arch = any
7 | license = custom
8 | checkdepends = python-libevdev
9 | makedepends = git
10 | makedepends = xorg-util-macros
11 | makedepends = meson
12 | provides = xorgproto
13 | conflicts = xorgproto
14 | source = xorgproto-git::git+https://gitlab.freedesktop.org/xorg/proto/xorgproto.git
15 | sha512sums = SKIP
16 |
17 | pkgname = xorgproto-git
18 |
--------------------------------------------------------------------------------
/xorgproto-git/.gitignore:
--------------------------------------------------------------------------------
1 | xorgproto-git
2 | src
3 | pkg
4 | *.pkg.*
5 | *.log
6 |
--------------------------------------------------------------------------------
/xorgproto-git/PKGBUILD:
--------------------------------------------------------------------------------
1 | # Maintainer: Yurii Kolesnykov
2 | # Based on [extra]'s xorgproto by AndyRTR
3 |
4 | _pkgname=xorgproto
5 | pkgname=$_pkgname-git
6 | pkgver=2021.5.1.r2711.g914d8f5
7 | pkgrel=1
8 | pkgdesc='combined X.Org X11 Protocol headers (git version)'
9 | arch=('any')
10 | url="https://xorg.freedesktop.org/"
11 | license=('custom')
12 | makedepends=('git' 'xorg-util-macros' 'meson')
13 | checkdepends=('python-libevdev')
14 | provides=('xorgproto')
15 | conflicts=('xorgproto')
16 | _srcurl="$pkgname::git+https://gitlab.freedesktop.org/xorg/proto/xorgproto.git"
17 | source=($_srcurl)
18 | sha512sums=('SKIP')
19 |
20 | pkgver() {
21 | cd "$pkgname"
22 | echo $(git describe --long | cut -d "-" -f2-3 | tr - .).r$(git rev-list HEAD --count).$(git describe --long | cut -d "-" -f4)
23 | }
24 |
25 | prepare() {
26 | mkdir build
27 | }
28 |
29 | build() {
30 | arch-meson "$pkgname" build
31 | ninja -C build
32 | }
33 |
34 | check() {
35 | meson test -C build
36 | }
37 |
38 | package() {
39 | DESTDIR="$pkgdir" ninja -C build install
40 |
41 | # missing docs
42 | install -m755 -d "${pkgdir}/usr/share/doc/${_pkgname}"
43 | install -m644 "$pkgname"/PM_spec "${pkgdir}/usr/share/doc/${_pkgname}/"
44 |
45 | # licenses
46 | install -m755 -d "${pkgdir}/usr/share/licenses/${_pkgname}"
47 | install -m644 "$pkgname"/COPYING* "${pkgdir}/usr/share/licenses/${_pkgname}/"
48 | # remove licences of legacy stuff we don't ship anymore
49 | rm -f "${pkgdir}"/usr/share/licenses/${_pkgname}/COPYING-{evieproto,fontcacheproto,lg3dproto,printproto,xcalibrateproto,xf86rushproto}
50 |
51 | # cleanup
52 | rm -f "${pkgdir}"/usr/include/X11/extensions/apple*
53 | rm -f "${pkgdir}"/usr/share/licenses/${_pkgname}/COPYING-{apple,windows}wmproto
54 | rm -f "${pkgdir}"/usr/share/pkgconfig/applewmproto.pc
55 | }
56 |
--------------------------------------------------------------------------------