diff options
Diffstat (limited to 'media-libs/alvr/alvr-16.0.0.ebuild')
-rw-r--r-- | media-libs/alvr/alvr-16.0.0.ebuild | 608 |
1 files changed, 608 insertions, 0 deletions
diff --git a/media-libs/alvr/alvr-16.0.0.ebuild b/media-libs/alvr/alvr-16.0.0.ebuild new file mode 100644 index 000000000..dc722748c --- /dev/null +++ b/media-libs/alvr/alvr-16.0.0.ebuild @@ -0,0 +1,608 @@ +# Copyright 2021-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# You will need games-util/steam-client-meta from the steam-overlay for this to work + +# List generated by 'cargo ebuild --manifest-path [absolute path]/alvr/*/Cargo.toml' and sorted by sort -u *.ebuild + +EAPI=8 + +CRATES=" + ab_glyph-0.2.11 + ab_glyph_rasterizer-0.1.4 + addr2line-0.15.1 + adler-1.0.2 + ahash-0.3.8 + ahash-0.4.7 + ahash-0.7.4 + aho-corasick-0.7.18 + alcro-0.5.3 + alsa-0.5.0 + alsa-sys-0.3.1 + andrew-0.3.1 + android_glue-0.2.3 + android_logger-0.10.1 + android_log-sys-0.2.0 + ansi_term-0.11.0 + anyhow-1.0.40 + approx-0.5.0 + arrayvec-0.5.2 + ash-0.32.1 + associative-cache-1.0.1 + atk-0.9.0 + atk-sys-0.10.0 + atomic_refcell-0.1.7 + atty-0.2.14 + autocfg-1.0.1 + backtrace-0.3.59 + base64-0.13.0 + base-x-0.2.8 + bincode-1.3.3 + bindgen-0.56.0 + bindgen-0.58.1 + bindgen-0.59.0 + bitflags-1.2.1 + bit-set-0.5.2 + bitvec-0.19.5 + bit-vec-0.6.3 + block-0.1.6 + block-buffer-0.9.0 + bumpalo-3.6.1 + byteorder-1.4.3 + bytes-1.0.1 + cairo-rs-0.9.1 + cairo-sys-rs-0.10.0 + calloop-0.6.5 + cc-1.0.67 + cesu8-1.1.0 + cexpr-0.4.0 + cexpr-0.5.0 + cfg_aliases-0.1.1 + cfg-if-0.1.10 + cfg-if-1.0.0 + cgl-0.3.2 + chrono-0.4.19 + chunked_transfer-1.4.0 + clang-sys-1.2.0 + clap-2.33.3 + claxon-0.4.3 + clipboard-win-3.1.1 + cocoa-0.24.0 + cocoa-foundation-0.1.0 + codespan-reporting-0.11.1 + combine-4.5.2 + console_log-0.2.0 + const_fn-0.4.7 + copyless-0.1.5 + copypasta-0.7.1 + coreaudio-rs-0.10.0 + coreaudio-sys-0.2.8 + core-foundation-0.7.0 + core-foundation-0.9.1 + core-foundation-sys-0.6.2 + core-foundation-sys-0.7.0 + core-foundation-sys-0.8.2 + core-graphics-0.19.2 + core-graphics-0.22.2 + core-graphics-types-0.1.1 + core-text-19.2.0 + core-video-sys-0.1.4 + cpal-0.13.3 + cpufeatures-0.1.4 + crossbeam-0.8.0 + crossbeam-channel-0.5.1 + crossbeam-deque-0.8.0 + crossbeam-epoch-0.9.4 + crossbeam-queue-0.3.1 + crossbeam-utils-0.8.4 + d3d12-0.4.0 + dark-light-0.1.1 + darling-0.10.2 + darling_core-0.10.2 + darling_macro-0.10.2 + dashmap-4.0.2 + derivative-2.2.0 + digest-0.9.0 + dirs-3.0.2 + dirs-sys-0.3.6 + discard-1.0.4 + dispatch-0.2.0 + dlib-0.4.2 + dlib-0.5.0 + doc-comment-0.3.3 + downcast-rs-1.2.0 + drm-fourcc-2.1.1 + druid-0.7.0 + druid-derive-0.4.0 + druid-shell-0.7.0 + dwrote-0.11.0 + eframe-0.13.1 + egui-0.13.1 + egui_glium-0.13.1 + egui_web-0.13.0 + either-1.6.1 + emath-0.13.0 + encoding_rs-0.8.28 + encoding_rs_io-0.1.7 + env_logger-0.8.3 + epaint-0.13.0 + epi-0.13.0 + errno-0.2.7 + errno-dragonfly-0.1.1 + exec-0.3.1 + external-memory-0.0.1 + failure-0.1.8 + fern-0.6.0 + fixedbitset-0.2.0 + fluent-0.16.0 + fluent-bundle-0.12.0 + fluent-bundle-0.15.1 + fluent-langneg-0.13.0 + fluent-syntax-0.11.0 + fluent-syntax-0.9.3 + fnv-1.0.7 + foreign-types-0.3.2 + foreign-types-shared-0.1.1 + form_urlencoded-1.0.1 + fs_extra-1.2.0 + funty-1.1.0 + futures-0.3.15 + futures-channel-0.3.15 + futures-core-0.3.15 + futures-executor-0.3.15 + futures-io-0.3.15 + futures-macro-0.3.15 + futures-sink-0.3.15 + futures-task-0.3.15 + futures-timer-3.0.2 + futures-util-0.3.15 + fxhash-0.2.1 + gcc-0.3.55 + gdk-0.13.2 + gdk-pixbuf-0.9.0 + gdk-pixbuf-sys-0.10.0 + gdk-sys-0.10.0 + generic-array-0.14.4 + getrandom-0.2.2 + gfx-auxil-0.10.0 + gfx-backend-dx11-0.9.0 + gfx-backend-dx12-0.9.1 + gfx-backend-empty-0.9.0 + gfx-backend-gl-0.9.0 + gfx-backend-metal-0.9.1 + gfx-backend-vulkan-0.9.0 + gfx-hal-0.9.0 + gfx-renderdoc-0.1.0 + gimli-0.24.0 + gio-0.9.1 + gio-sys-0.10.1 + gl_generator-0.14.0 + glib-0.10.3 + glib-macros-0.10.1 + glib-sys-0.10.1 + glium-0.30.1 + glob-0.3.0 + glow-0.9.0 + glutin-0.27.0 + glutin_egl_sys-0.1.5 + glutin_emscripten_sys-0.1.1 + glutin_gles2_sys-0.1.5 + glutin_glx_sys-0.1.7 + glutin_wgl_sys-0.1.5 + gobject-sys-0.10.0 + governor-0.3.2 + gpu-alloc-0.4.7 + gpu-alloc-types-0.2.0 + gpu-descriptor-0.1.1 + gpu-descriptor-types-0.1.1 + gtk-0.9.2 + gtk-sys-0.10.0 + h2-0.3.3 + hashbrown-0.8.2 + hashbrown-0.9.1 + headers-0.3.4 + headers-core-0.2.0 + heck-0.3.2 + hermit-abi-0.1.18 + hound-3.4.0 + http-0.2.4 + httparse-1.4.1 + http-body-0.4.2 + httpdate-1.0.0 + humantime-2.1.0 + hyper-0.14.7 + hyper-tls-0.5.0 + ident_case-1.0.1 + idna-0.2.3 + indexmap-1.6.2 + Inflector-0.11.4 + inplace_it-0.3.3 + instant-0.1.9 + intl-memoizer-0.5.1 + intl_pluralrules-7.0.1 + ipnet-2.3.0 + itertools-0.9.0 + itoa-0.4.7 + jni-0.18.0 + jni-0.19.0 + jni-sys-0.3.0 + jobserver-0.1.22 + js-sys-0.3.51 + keyboard-types-0.5.0 + khronos_api-3.1.0 + khronos-egl-4.1.0 + kurbo-0.7.1 + lazy-bytes-cast-5.0.1 + lazycell-1.3.0 + lazy_static-1.4.0 + lewton-0.10.2 + libc-0.2.94 + libloading-0.6.7 + libloading-0.7.0 + locale_config-0.3.0 + lock_api-0.4.4 + log-0.4.14 + mach-0.3.2 + malloc_buf-0.0.6 + matches-0.1.8 + matrixmultiply-0.3.1 + maybe-uninit-2.0.0 + memchr-2.4.0 + memmap2-0.1.0 + memmap2-0.2.3 + memoffset-0.6.3 + metal-0.23.0 + mime-0.3.16 + minimp3-0.5.1 + minimp3-sys-0.3.2 + miniz_oxide-0.4.4 + mio-0.7.11 + mio-misc-1.2.1 + miow-0.3.7 + msgbox-0.6.0 + naga-0.5.0 + nalgebra-0.28.0 + nalgebra-macros-0.1.0 + native-tls-0.2.7 + ndk-0.3.0 + ndk-glue-0.3.0 + ndk-macro-0.2.0 + ndk-sys-0.2.1 + nix-0.18.0 + nix-0.19.1 + nix-0.20.0 + nom-5.1.2 + nom-6.1.2 + nonzero_ext-0.2.0 + no-std-compat-0.4.1 + ntapi-0.3.6 + num-complex-0.4.0 + num_cpus-1.13.0 + num-derive-0.3.3 + num_enum-0.5.1 + num_enum_derive-0.5.1 + num-integer-0.1.44 + num-rational-0.4.0 + num-traits-0.2.14 + objc-0.2.7 + objc_exception-0.1.2 + objc-foundation-0.1.1 + objc_id-0.1.1 + object-0.24.0 + oboe-0.4.1 + oboe-sys-0.4.0 + ogg-0.8.0 + once_cell-1.7.2 + opaque-debug-0.3.0 + openssl-0.10.34 + openssl-probe-0.1.4 + openssl-sys-0.9.63 + ordered-float-2.7.0 + osmesa-sys-0.1.2 + os_str_bytes-3.1.0 + ouroboros-0.9.5 + ouroboros_macro-0.9.5 + owned_ttf_parser-0.12.1 + owned_ttf_parser-0.6.0 + pango-0.9.1 + pango-sys-0.10.0 + parking_lot-0.11.1 + parking_lot_core-0.8.3 + paste-1.0.5 + peeking_take_while-0.1.2 + pem-0.8.3 + percent-encoding-2.1.0 + petgraph-0.5.1 + pico-args-0.4.1 + piet-0.3.1 + piet-cairo-0.3.0 + piet-common-0.3.2 + piet-coregraphics-0.3.0 + piet-direct2d-0.3.0 + piet-web-0.3.1 + pin-project-1.0.7 + pin-project-internal-1.0.7 + pin-project-lite-0.2.6 + pin-utils-0.1.0 + pkg-config-0.3.19 + ppv-lite86-0.2.10 + proc-macro2-1.0.26 + proc-macro-crate-0.1.5 + proc-macro-error-1.0.4 + proc-macro-error-attr-1.0.4 + proc-macro-hack-0.5.19 + proc-macro-nested-0.1.7 + profiling-1.0.3 + quanta-0.4.1 + quote-1.0.9 + radium-0.5.3 + rand-0.8.3 + rand_chacha-0.3.0 + rand_core-0.6.2 + rand_hc-0.3.0 + range-alloc-0.1.2 + rawpointer-0.2.1 + raw-window-handle-0.3.3 + rayon-1.5.0 + rayon-core-1.9.0 + rcgen-0.8.11 + redox_syscall-0.2.8 + redox_users-0.4.0 + regex-1.5.4 + regex-syntax-0.6.25 + remove_dir_all-0.5.3 + renderdoc-sys-0.7.1 + rental-0.5.6 + rental-impl-0.5.5 + reqwest-0.11.3 + ring-0.16.20 + rodio-0.14.0 + rose_tree-0.2.0 + runas-0.2.1 + rustc-demangle-0.1.19 + rustc-hash-1.1.0 + rustc_version-0.2.3 + rustls-0.19.1 + rusttype-0.9.2 + ryu-1.0.5 + same-file-1.0.6 + schannel-0.1.19 + scoped-tls-1.0.0 + scopeguard-1.1.0 + sct-0.6.1 + security-framework-2.2.0 + security-framework-sys-2.2.0 + semver-0.9.0 + semver-1.0.3 + semver-parser-0.7.0 + serde-1.0.127 + serde_derive-1.0.127 + serde_json-1.0.66 + serde_urlencoded-0.7.0 + sha1-0.6.0 + sha-1-0.9.6 + shared_library-0.1.9 + shlex-0.1.1 + shlex-1.0.0 + signal-hook-registry-1.3.0 + simba-0.5.1 + simple_logger-1.11.0 + single-instance-0.3.1 + slab-0.4.3 + slice-deque-0.3.0 + slotmap-0.4.2 + smallvec-1.6.1 + smithay-client-toolkit-0.12.3 + smithay-client-toolkit-0.14.0 + smithay-clipboard-0.6.4 + socket2-0.4.0 + spin-0.5.2 + spirv_cross-0.23.1 + stable_deref_trait-1.2.0 + standback-0.2.17 + stdweb-0.1.3 + stdweb-0.4.20 + stdweb-derive-0.5.3 + stdweb-internal-macros-0.2.9 + stdweb-internal-runtime-0.1.5 + storage-map-0.3.0 + strsim-0.8.0 + strsim-0.9.3 + strum-0.18.0 + strum_macros-0.18.0 + syn-1.0.72 + sysinfo-0.19.2 + system-deps-1.3.2 + takeable-option-0.5.0 + tap-1.0.1 + tempfile-3.2.0 + termcolor-1.1.2 + textwrap-0.11.0 + thiserror-1.0.24 + thiserror-impl-1.0.24 + thunderdome-0.4.1 + time-0.1.43 + time-0.2.26 + time-macros-0.1.1 + time-macros-impl-0.1.1 + tinyfiledialogs-3.3.10 + tinystr-0.3.4 + tinyvec-1.2.0 + tinyvec_macros-0.1.0 + tokio-1.6.0 + tokio-macros-1.2.0 + tokio-native-tls-0.3.0 + tokio-tungstenite-0.15.0 + tokio-util-0.6.7 + toml-0.5.8 + tower-service-0.3.1 + tracing-0.1.26 + tracing-core-0.1.18 + try-lock-0.2.3 + ttf-parser-0.12.3 + ttf-parser-0.6.2 + tungstenite-0.14.0 + type-map-0.4.0 + typenum-1.13.0 + unic-bidi-0.9.0 + unic-char-property-0.9.0 + unic-char-range-0.9.0 + unic-common-0.9.0 + unic-langid-0.9.0 + unic-langid-impl-0.9.0 + unicode-bidi-0.3.5 + unicode-normalization-0.1.17 + unicode-segmentation-1.7.1 + unicode-width-0.1.8 + unicode-xid-0.2.2 + unic-ucd-bidi-0.9.0 + unic-ucd-version-0.9.0 + untrusted-0.7.1 + ureq-2.1.1 + url-2.2.2 + spirv_headers-1.5.0 + utf16_lit-1.0.1 + utf-8-0.7.6 + vcpkg-0.2.12 + vec_map-0.8.2 + version_check-0.9.3 + version-compare-0.0.10 + walkdir-2.3.2 + want-0.3.0 + wasi-0.10.2+wasi-snapshot-preview1 + wasm-bindgen-0.2.74 + wasm-bindgen-backend-0.2.74 + wasm-bindgen-futures-0.4.24 + wasm-bindgen-macro-0.2.74 + wasm-bindgen-macro-support-0.2.74 + wasm-bindgen-shared-0.2.74 + wayland-client-0.28.5 + wayland-commons-0.28.5 + wayland-cursor-0.28.5 + wayland-egl-0.28.5 + wayland-protocols-0.28.5 + wayland-scanner-0.28.5 + wayland-sys-0.28.5 + webbrowser-0.5.5 + webpki-0.21.4 + webpki-roots-0.21.1 + web-sys-0.3.50 + wgpu-0.9.0 + wgpu-core-0.9.2 + wgpu-types-0.9.0 + which-3.1.1 + widestring-0.4.3 + winapi-0.3.9 + winapi-i686-pc-windows-gnu-0.4.0 + winapi-util-0.1.5 + winapi-x86_64-pc-windows-gnu-0.4.0 + winit-0.25.0 + winreg-0.7.0 + winreg-0.8.0 + winreg-0.9.0 + winres-0.1.11 + wio-0.2.2 + wyz-0.2.0 + x11-clipboard-0.5.2 + x11-dl-2.18.5 + xcb-0.9.0 + xcursor-0.3.3 + xdg-2.2.0 + xi-unicode-0.2.1 + xi-unicode-0.3.0 + xml-rs-0.8.3 + yasna-0.4.0 +" + +inherit desktop cargo xdg + +DESCRIPTION="ALVR is an open source remote VR display for the Oculus Go/Quest" +HOMEPAGE="https://github.com/alvr-org/ALVR" +SRC_URI="https://github.com/alvr-org/ALVR/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" $(cargo_crate_uris) " + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +S="${WORKDIR}/${P^^}" + +IUSE="+client +server vaapi vulkan x264 x265" + +RDEPEND=" + >=media-video/ffmpeg-4.3[encode,vulkan?,x264?,x265?] + vaapi? ( media-video/ffmpeg[libdrm,vaapi] ) + sys-libs/libunwind + www-client/chromium +" + +DEPEND="${RDEPEND} + vulkan? ( dev-util/vulkan-headers ) +" + +BDEPEND="${RDEPEND} + virtual/pkgconfig + client? ( media-gfx/imagemagick ) +" + +PATCHES=( "${FILESDIR}/${P}-build.patch" ) + +src_configure() { + local ECARGO_EXTRA_ARGS=" + -p vrcompositor-wrapper + $(usex server "-p alvr_server" "" ) + $(usex client "-p alvr_client -p alvr_launcher" "" ) + $(usex vulkan "-p alvr_vulkan-layer" "" ) + " + cargo_src_configure +} + +src_install() { + if use client; then + dobin target/release/alvr_launcher + dolib.so target/release/libalvr_client.so + domenu packaging/freedesktop/alvr.desktop + for size in {16,32,48,64,128,256}; do + convert alvr/launcher/res/launcher.ico \ + -thumbnail ${size} -alpha on -background none -flatten \ + ${PN}-${size}.png || die + newicon -s ${size} ${PN}-${size}.png ${PN}.png + done + fi + + if use server; then + #dolib.so target/release/libalvr_server.so + + insinto /usr/lib/steamvr/alvr/bin/linux64/ + newins target/release/libalvr_server.so driver_alvr_server.so + + insinto /usr/lib/steamvr/alvr/ + doins alvr/xtask/resources/driver.vrdrivermanifest + + fi + + if use vulkan; then + dolib.so target/release/libalvr_vulkan_layer.so + insinto /usr/share/vulkan/explicit_layer.d/ + doins alvr/vulkan-layer/layer/alvr_x86_64.json + fi + + insinto /usr/lib/alvr + doins target/release/vrcompositor-wrapper + doins packaging/firewall/alvr_fw_config.sh + + insinto /usr/share/${PN}/selinux/ + doins packaging/selinux/* + + insinto /usr/share/${PN}/presets/ + doins alvr/xtask/resources/presets/* + + insinto /usr/share/${PN}/ + doins -r alvr/dashboard + + insinto /usr/lib/firewalld/services/ + doins packaging/firewall/alvr-firewalld.xml + + insinto /etc/ufw/applications.d/ + doins packaging/firewall/ufw-alvr +} |