Skip to content
Snippets Groups Projects
Commit c1c2511c authored by Simon McVittie's avatar Simon McVittie
Browse files

Merge branch 'wip/gfx-info' into 'master'

Include vulkaninfo and wflinfo in relocatable installs

See merge request !189
parents d0e7dd07 4c691886
No related branches found
No related tags found
1 merge request!189Include vulkaninfo and wflinfo in relocatable installs
Pipeline #5758 passed
...@@ -159,6 +159,9 @@ Multi-Arch: foreign ...@@ -159,6 +159,9 @@ Multi-Arch: foreign
Depends: Depends:
libcapsule-tools-relocatable (>= 0.20201120.0), libcapsule-tools-relocatable (>= 0.20201120.0),
libsteam-runtime-tools-0-helpers, libsteam-runtime-tools-0-helpers,
vainfo-multiarch,
vulkan-tools-multiarch,
waffle-utils-multiarch,
${misc:Depends}, ${misc:Depends},
${shlibs:Depends}, ${shlibs:Depends},
Description: Steam container launcher - cross-architecture dependencies Description: Steam container launcher - cross-architecture dependencies
...@@ -173,6 +176,9 @@ Multi-Arch: foreign ...@@ -173,6 +176,9 @@ Multi-Arch: foreign
Depends: Depends:
libcapsule-tools-relocatable (>= 0.20201120.0), libcapsule-tools-relocatable (>= 0.20201120.0),
libsteam-runtime-tools-0-helpers, libsteam-runtime-tools-0-helpers,
vainfo-multiarch,
vulkan-tools-multiarch,
waffle-utils-multiarch,
${misc:Depends}, ${misc:Depends},
${shlibs:Depends}, ${shlibs:Depends},
Description: Steam container launcher - cross-architecture dependencies Description: Steam container launcher - cross-architecture dependencies
......
...@@ -58,11 +58,16 @@ programs and libraries: ...@@ -58,11 +58,16 @@ programs and libraries:
- libjson-glib-1.0.so.0 from json-glib: [LGPL-2.0-or-later][]. See - libjson-glib-1.0.so.0 from json-glib: [LGPL-2.0-or-later][]. See
json-glib.txt. json-glib.txt.
- vulkaninfo from Vulkan-Tools: [Apache-2.0][]. See vulkan-tools.txt.
- wflinfo from waffle: [BSD-2-clause][]. See waffle.txt.
Complete source code can be obtained from the same place as Complete source code can be obtained from the same place as
pressure-vessel, or from <https://repo.steampowered.com/steamrt/> pressure-vessel, or from <https://repo.steampowered.com/steamrt/>
and <https://repo.steampowered.com/steamrt-images-scout/snapshots/> and <https://repo.steampowered.com/steamrt-images-scout/snapshots/>
[Apache-2.0]: https://spdx.org/licenses/Apache-2.0.html [Apache-2.0]: https://spdx.org/licenses/Apache-2.0.html
[BSD-2-Clause]: https://spdx.org/licenses/BSD-2-Clause.html
[BSD-3-Clause]: https://spdx.org/licenses/BSD-3-Clause.html [BSD-3-Clause]: https://spdx.org/licenses/BSD-3-Clause.html
[GPL-2.0-only]: https://spdx.org/licenses/GPL-2.0-only.html [GPL-2.0-only]: https://spdx.org/licenses/GPL-2.0-only.html
[GPL-2.0-or-later]: https://spdx.org/licenses/GPL-2.0-or-later.html [GPL-2.0-or-later]: https://spdx.org/licenses/GPL-2.0-or-later.html
......
...@@ -79,12 +79,13 @@ ARCHS = [ ...@@ -79,12 +79,13 @@ ARCHS = [
DEPENDENCIES = { DEPENDENCIES = {
'libcapsule-tools-relocatable': 'libcapsule', 'libcapsule-tools-relocatable': 'libcapsule',
'libelf1': 'elfutils', 'libelf1': 'elfutils',
'vulkan-tools-multiarch': 'vulkan-tools',
'waffle-utils-multiarch': 'waffle',
'zlib1g': 'zlib', 'zlib1g': 'zlib',
} }
# program to install => binary package # program to install => binary package
WRAPPED_PROGRAMS = { WRAPPED_PROGRAMS = {
'bwrap': 'bubblewrap', 'bwrap': 'bubblewrap',
'steam-runtime-system-info': 'steam-runtime-tools-bin',
} }
PRIMARY_ARCH_DEPENDENCIES = { PRIMARY_ARCH_DEPENDENCIES = {
'bubblewrap': 'bubblewrap', 'bubblewrap': 'bubblewrap',
...@@ -98,6 +99,10 @@ PRIMARY_ARCH_DEPENDENCIES = { ...@@ -98,6 +99,10 @@ PRIMARY_ARCH_DEPENDENCIES = {
'libselinux1': 'libselinux', 'libselinux1': 'libselinux',
'libxau6': 'libxau', 'libxau6': 'libxau',
} }
HELPERS = {
'vulkaninfo': 'vulkan-tools-multiarch',
'wflinfo': 'waffle-utils-multiarch',
}
SCRIPTS = [ SCRIPTS = [
'pressure-vessel-locale-gen', 'pressure-vessel-locale-gen',
'pressure-vessel-test-ui', 'pressure-vessel-test-ui',
...@@ -109,6 +114,7 @@ EXECUTABLES = [ ...@@ -109,6 +114,7 @@ EXECUTABLES = [
'pressure-vessel-launcher', 'pressure-vessel-launcher',
'pressure-vessel-try-setlocale', 'pressure-vessel-try-setlocale',
'pressure-vessel-wrap', 'pressure-vessel-wrap',
'steam-runtime-system-info',
] ]
LIBCAPSULE_TOOLS = [ LIBCAPSULE_TOOLS = [
'capsule-capture-libs', 'capsule-capture-libs',
...@@ -275,10 +281,15 @@ def main(): ...@@ -275,10 +281,15 @@ def main():
) )
for exe in EXECUTABLES: for exe in EXECUTABLES:
install_exe( path = os.path.join(args.pv_dir, 'bin', exe)
os.path.join(args.pv_dir, 'bin', exe),
os.path.join(installation, 'bin'), if not os.path.exists(path):
) path = os.path.join(args.prefix, 'bin', exe)
if not os.path.exists(path):
path = '/usr/bin/{}'.format(exe)
install_exe(path, os.path.join(installation, 'bin'))
install( install(
os.path.join(args.srcdir, 'pressure-vessel', 'THIRD-PARTY.md'), os.path.join(args.srcdir, 'pressure-vessel', 'THIRD-PARTY.md'),
...@@ -432,6 +443,40 @@ def main(): ...@@ -432,6 +443,40 @@ def main():
) )
) )
for helper, package in HELPERS.items():
exe = arch.multiarch + '-' + helper
path = os.path.join(args.prefix, 'bin', exe)
if not os.path.exists(path):
path = '/usr/bin/{}'.format(exe)
if not os.path.exists(path):
v_check_call([
'apt-get',
'download',
package,
], cwd=tmpdir)
v_check_call(
'dpkg-deb -x {}_*.deb build-relocatable'.format(
quote(package),
),
cwd=tmpdir,
shell=True,
)
path = '{}/build-relocatable/usr/bin/{}'.format(
tmpdir, exe,
)
install_exe(
path,
os.path.join(
installation,
'libexec',
'steam-runtime-tools-0',
exe,
)
)
# For bwrap (and possibly other programs in future) we don't have # For bwrap (and possibly other programs in future) we don't have
# a relocatable version with a RPATH/RUNPATH, so we wrap a script # a relocatable version with a RPATH/RUNPATH, so we wrap a script
# around it instead. The script avoids setting LD_LIBRARY_PATH # around it instead. The script avoids setting LD_LIBRARY_PATH
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment