Compare commits
17 Commits
Author | SHA1 | Date | |
---|---|---|---|
99bae8d9ec | |||
|
347de557f9 | ||
|
24dff5d14c | ||
c89a10837b | |||
|
612089fe7a | ||
|
0790bd7ab9 | ||
864e4eaba5 | |||
5cad0f0fe4 | |||
|
012fa012e4 | ||
b073868835 | |||
59dfd091af | |||
4d9fc1dbfa | |||
b5718f1c97 | |||
|
8cf59d1811 | ||
|
f888677186 | ||
|
5b56884f25 | ||
|
68ceef5e76 |
1
.github/build-canary-v3
vendored
Normal file
1
.github/build-canary-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
1
|
1
.github/build-nest-v3
vendored
Normal file
1
.github/build-nest-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
1
|
1
.github/release-canary-v3
vendored
Normal file
1
.github/release-canary-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
2
|
1
.github/release-nest-v3
vendored
Normal file
1
.github/release-nest-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
1
|
37
.github/workflows/build-canaryv3.yml
vendored
Normal file
37
.github/workflows/build-canaryv3.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: PikaOS Package Build Only (Canary) (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/build-canary-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install SSH key
|
||||
uses: shimataro/ssh-key-action@v2
|
||||
with:
|
||||
key: ${{ secrets.SSH_KEY }}
|
||||
name: id_rsa
|
||||
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
||||
if_key_exists: replace
|
||||
|
||||
- name: Update APT Cache
|
||||
run: apt-get update -y
|
||||
|
||||
- name: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
37
.github/workflows/build-nestv3.yml
vendored
Normal file
37
.github/workflows/build-nestv3.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: PikaOS Package Build Only (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/build-nest-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:nestv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install SSH key
|
||||
uses: shimataro/ssh-key-action@v2
|
||||
with:
|
||||
key: ${{ secrets.SSH_KEY }}
|
||||
name: id_rsa
|
||||
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
||||
if_key_exists: replace
|
||||
|
||||
- name: Update APT Cache
|
||||
run: apt-get update -y
|
||||
|
||||
- name: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
40
.github/workflows/release-canaryv3.yml
vendored
Normal file
40
.github/workflows/release-canaryv3.yml
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
name: PikaOS Package Build & Release (Canary) (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/release-canary-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install SSH key
|
||||
uses: shimataro/ssh-key-action@v2
|
||||
with:
|
||||
key: ${{ secrets.SSH_KEY }}
|
||||
name: id_rsa
|
||||
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
||||
if_key_exists: replace
|
||||
|
||||
- name: Update APT Cache
|
||||
run: apt-get update -y
|
||||
|
||||
- name: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
||||
|
||||
- name: Release Package
|
||||
run: ./release.sh
|
40
.github/workflows/release-nestv3.yml
vendored
Normal file
40
.github/workflows/release-nestv3.yml
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
name: PikaOS Package Build & Release (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/release-nest-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:nestv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install SSH key
|
||||
uses: shimataro/ssh-key-action@v2
|
||||
with:
|
||||
key: ${{ secrets.SSH_KEY }}
|
||||
name: id_rsa
|
||||
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
||||
if_key_exists: replace
|
||||
|
||||
- name: Update APT Cache
|
||||
run: apt-get update -y
|
||||
|
||||
- name: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
||||
|
||||
- name: Release Package
|
||||
run: ./release.sh
|
40
.github/workflows/release.yml
vendored
40
.github/workflows/release.yml
vendored
@ -1,40 +0,0 @@
|
||||
name: PikaOS Package Release
|
||||
|
||||
on:
|
||||
workflow_dispatch
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: self-hosted
|
||||
container:
|
||||
image: ubuntu:22.10
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install needed packages
|
||||
run: apt update && apt install software-properties-common sudo git bc gpg gpg-agent bison build-essential ccache cpio fakeroot flex git kmod libelf-dev libncurses5-dev libssl-dev lz4 qtbase5-dev rsync schedtool wget zstd tar reprepro dpkg-sig devscripts -y
|
||||
|
||||
- name: Import GPG key
|
||||
id: import_gpg
|
||||
uses: crazy-max/ghaction-import-gpg@v5
|
||||
with:
|
||||
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
passphrase: ${{ secrets.PASSPHRASE }}
|
||||
|
||||
- name: Install SSH key
|
||||
uses: shimataro/ssh-key-action@v2
|
||||
with:
|
||||
key: ${{ secrets.SSH_KEY }}
|
||||
name: id_rsa
|
||||
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
||||
if_key_exists: replace
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
||||
|
||||
- name: Release Package
|
||||
run: ./release.sh
|
24
LICENSE.md
Normal file
24
LICENSE.md
Normal file
@ -0,0 +1,24 @@
|
||||
MIT License (With DPKG packaging compatibility)
|
||||
|
||||
Copyright (c) 2024 PikaOS
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
Notes:
|
||||
The files covered by this license are any files and directories in the root of this repository (including but not limited to: `main.sh`, `release.sh`, and `.github`), with the exception of the `debian` directory and its contents if `debian/copyright` exists, and declares any files or directories as a different LICENSE/COPYRIGHT.
|
19
main.sh
19
main.sh
@ -1,8 +1,13 @@
|
||||
# Add dependent repositories
|
||||
wget -q -O - https://ppa.pika-os.com/key.gpg | sudo apt-key add -
|
||||
add-apt-repository https://ppa.pika-os.com
|
||||
add-apt-repository ppa:pikaos/pika
|
||||
add-apt-repository ppa:kubuntu-ppa/backports
|
||||
#! /bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
VERSION="3.0"
|
||||
|
||||
source ./pika-build-config.sh
|
||||
|
||||
echo "$PIKA_BUILD_ARCH" > pika-build-arch
|
||||
|
||||
# Clone Upstream
|
||||
cd ./pika-amdgpu-switcher
|
||||
|
||||
@ -10,8 +15,8 @@ cd ./pika-amdgpu-switcher
|
||||
apt-get build-dep ./ -y
|
||||
|
||||
# Build package
|
||||
dh_make --createorig
|
||||
dpkg-buildpackage
|
||||
LOGNAME=root dh_make --createorig -y -l -p pika-amdgpu-switcher_"$VERSION" || echo "dh-make: Ignoring Last Error"
|
||||
dpkg-buildpackage --no-sign
|
||||
|
||||
# Move the debs to output
|
||||
cd ../
|
||||
|
@ -1,4 +1,10 @@
|
||||
pika-amdgpu-switcher (1.0-99pika1) kinetic; urgency=low
|
||||
pika-amdgpu-switcher (3.0-101pika1) pika; urgency=low
|
||||
|
||||
* Port to PikaOS 4
|
||||
|
||||
-- Ward Nakchbandi <hotrod.master@hotmail.com> Sun, 09 Oct 2022 18:34:00 +0300
|
||||
|
||||
pika-amdgpu-switcher (2.0-99pika2) pikauwu; urgency=low
|
||||
|
||||
* Initial Creation
|
||||
|
||||
|
@ -1 +1 @@
|
||||
3.0 (native)
|
||||
3.0 (quilt)
|
||||
|
@ -2,19 +2,8 @@
|
||||
|
||||
# This script applies amdocl-pro OpenGL driver for specific application.
|
||||
# You can test the difference with clinfo utility.
|
||||
#
|
||||
|
||||
|
||||
cl_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:/opt/amdgpu-pro/lib/x86_64-linux-gnu:/opt/amdgpu-pro/lib/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == cl_pro ]]; then
|
||||
cl_pro
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/lib/i386-linux-gnu:/opt/amdgpu-pro/pika/opencl/x86_64-linux-gnu:/opt/amdgpu-pro/pika/opencl/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
||||
|
@ -9,28 +9,7 @@
|
||||
# $ gl_pro davinci-resolve
|
||||
# This will start davinci resolve with AMDGPU PRO OpenGL driver.
|
||||
|
||||
gl_mesa() {
|
||||
export __GLX_VENDOR_LIBRARY_NAME=mesa
|
||||
}
|
||||
|
||||
gl_zink() {
|
||||
export __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink
|
||||
}
|
||||
|
||||
gl_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:/opt/amdgpu-pro/lib/x86_64-linux-gnu:/opt/amdgpu-pro/lib/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == gl_mesa ]]; then
|
||||
gl_mesa
|
||||
elif [[ $(basename $0) == gl_zink ]]; then
|
||||
gl_zink
|
||||
elif [[ $(basename $0) == gl_pro ]]; then
|
||||
gl_pro
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
||||
|
@ -9,28 +9,7 @@
|
||||
# $ gl_pro davinci-resolve
|
||||
# This will start davinci resolve with AMDGPU PRO OpenGL driver.
|
||||
|
||||
gl_mesa() {
|
||||
export __GLX_VENDOR_LIBRARY_NAME=mesa
|
||||
}
|
||||
|
||||
gl_zink() {
|
||||
export __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink
|
||||
}
|
||||
|
||||
gl_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:/opt/amdgpu-pro/lib/x86_64-linux-gnu:/opt/amdgpu-pro/lib/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == gl_mesa ]]; then
|
||||
gl_mesa
|
||||
elif [[ $(basename $0) == gl_zink ]]; then
|
||||
gl_zink
|
||||
elif [[ $(basename $0) == gl_pro ]]; then
|
||||
gl_pro
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/lib/i386-linux-gnu:/opt/amdgpu-pro/pika/opengl/x86_64-linux-gnu:/opt/amdgpu-pro/pika/opengl/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
||||
|
@ -9,28 +9,7 @@
|
||||
# $ gl_pro davinci-resolve
|
||||
# This will start davinci resolve with AMDGPU PRO OpenGL driver.
|
||||
|
||||
gl_mesa() {
|
||||
export __GLX_VENDOR_LIBRARY_NAME=mesa
|
||||
}
|
||||
|
||||
gl_zink() {
|
||||
export __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink
|
||||
}
|
||||
|
||||
gl_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:/opt/amdgpu-pro/lib/x86_64-linux-gnu:/opt/amdgpu-pro/lib/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == gl_mesa ]]; then
|
||||
gl_mesa
|
||||
elif [[ $(basename $0) == gl_zink ]]; then
|
||||
gl_zink
|
||||
elif [[ $(basename $0) == gl_pro ]]; then
|
||||
gl_pro
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
||||
|
@ -11,42 +11,10 @@
|
||||
|
||||
# When amdvlk is installed, then VK_ICD_FILENAMES is ignored and AMD_VULKAN_ICD is read instead. However, AMD_VULKAN_ICD does not allow you (afaics) select pro driver.
|
||||
# So we revert this behavior to standard one.
|
||||
|
||||
export DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1=1
|
||||
|
||||
RADV_DIR="/usr/share/vulkan/icd.d"
|
||||
PRO_DIR="/opt/amdgpu-pro/etc/vulkan/icd.d"
|
||||
VLK_DIR="/etc/vulkan/icd.d"
|
||||
LEGACY_DIR="/opt/amdgpu-pro/vulkan-legacy/etc/vulkan/icd.d"
|
||||
|
||||
vk_radv() {
|
||||
export VK_ICD_FILENAMES="${RADV_DIR}/radeon_icd.i686.json:${RADV_DIR}/radeon_icd.x86_64.json"
|
||||
}
|
||||
|
||||
vk_amdvlk() {
|
||||
export VK_ICD_FILENAMES="${VLK_DIR}/amd_icd32.json:${VLK_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
export VK_ICD_FILENAMES="${PRO_DIR}/amd_icd32.json:${PRO_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_legacy() {
|
||||
export VK_ICD_FILENAMES="${LEGACY_DIR}/amd_icd32.json:${LEGACY_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == vk_radv ]]; then
|
||||
vk_radv
|
||||
elif [[ $(basename $0) == vk_amdvlk ]]; then
|
||||
vk_amdvlk
|
||||
elif [[ $(basename $0) == vk_pro ]]; then
|
||||
vk_pro
|
||||
elif [[ $(basename $0) == vk_legacy ]]; then
|
||||
vk_legacy
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/lib/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
export VK_ICD_FILENAMES="/opt/amdgpu/share/vulkan/icd.d/amd_icd32.json:/opt/amdgpu/share/vulkan/icd.d/amd_icd64.json"
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
||||
|
@ -1,52 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# This script applies amdvlk-pro/amdvlk/radv Vulkan driver for specific application.
|
||||
# You can see the list of available drivers with vulkaninfo utility, see the driverName and driverID lines.
|
||||
#
|
||||
# Usage:
|
||||
# <vk_radv|vk_amdvlk|vk_pro> <app and its parameters>
|
||||
# For example:
|
||||
# $ vk_pro vkmark
|
||||
# This will start vkmark with AMDGPU PRO vulkan driver.
|
||||
|
||||
# When amdvlk is installed, then VK_ICD_FILENAMES is ignored and AMD_VULKAN_ICD is read instead. However, AMD_VULKAN_ICD does not allow you (afaics) select pro driver.
|
||||
# So we revert this behavior to standard one.
|
||||
export DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1=1
|
||||
|
||||
RADV_DIR="/usr/share/vulkan/icd.d"
|
||||
PRO_DIR="/opt/amdgpu-pro/etc/vulkan/icd.d"
|
||||
VLK_DIR="/etc/vulkan/icd.d"
|
||||
LEGACY_DIR="/opt/amdgpu-pro/vulkan-legacy/etc/vulkan/icd.d"
|
||||
|
||||
vk_radv() {
|
||||
export VK_ICD_FILENAMES="${RADV_DIR}/radeon_icd.i686.json:${RADV_DIR}/radeon_icd.x86_64.json"
|
||||
}
|
||||
|
||||
vk_amdvlk() {
|
||||
export VK_ICD_FILENAMES="${VLK_DIR}/amd_icd32.json:${VLK_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
export VK_ICD_FILENAMES="${PRO_DIR}/amd_icd32.json:${PRO_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_legacy() {
|
||||
export VK_ICD_FILENAMES="${LEGACY_DIR}/amd_icd32.json:${LEGACY_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == vk_radv ]]; then
|
||||
vk_radv
|
||||
elif [[ $(basename $0) == vk_amdvlk ]]; then
|
||||
vk_amdvlk
|
||||
elif [[ $(basename $0) == vk_pro ]]; then
|
||||
vk_pro
|
||||
elif [[ $(basename $0) == vk_legacy ]]; then
|
||||
vk_legacy
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
@ -11,42 +11,10 @@
|
||||
|
||||
# When amdvlk is installed, then VK_ICD_FILENAMES is ignored and AMD_VULKAN_ICD is read instead. However, AMD_VULKAN_ICD does not allow you (afaics) select pro driver.
|
||||
# So we revert this behavior to standard one.
|
||||
|
||||
export DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1=1
|
||||
|
||||
RADV_DIR="/usr/share/vulkan/icd.d"
|
||||
PRO_DIR="/opt/amdgpu-pro/etc/vulkan/icd.d"
|
||||
VLK_DIR="/etc/vulkan/icd.d"
|
||||
LEGACY_DIR="/opt/amdgpu-pro/vulkan-legacy/etc/vulkan/icd.d"
|
||||
|
||||
vk_radv() {
|
||||
export VK_ICD_FILENAMES="${RADV_DIR}/radeon_icd.i686.json:${RADV_DIR}/radeon_icd.x86_64.json"
|
||||
}
|
||||
|
||||
vk_amdvlk() {
|
||||
export VK_ICD_FILENAMES="${VLK_DIR}/amd_icd32.json:${VLK_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
export VK_ICD_FILENAMES="${PRO_DIR}/amd_icd32.json:${PRO_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_legacy() {
|
||||
export VK_ICD_FILENAMES="${LEGACY_DIR}/amd_icd32.json:${LEGACY_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == vk_radv ]]; then
|
||||
vk_radv
|
||||
elif [[ $(basename $0) == vk_amdvlk ]]; then
|
||||
vk_amdvlk
|
||||
elif [[ $(basename $0) == vk_pro ]]; then
|
||||
vk_pro
|
||||
elif [[ $(basename $0) == vk_legacy ]]; then
|
||||
vk_legacy
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/lib/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
export VK_ICD_FILENAMES="/opt/amdgpu-pro/etc/vulkan/icd.d/amd_icd32.json:/opt/amdgpu-pro/etc/vulkan/icd.d/amd_icd64.json"
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
||||
|
@ -11,42 +11,8 @@
|
||||
|
||||
# When amdvlk is installed, then VK_ICD_FILENAMES is ignored and AMD_VULKAN_ICD is read instead. However, AMD_VULKAN_ICD does not allow you (afaics) select pro driver.
|
||||
# So we revert this behavior to standard one.
|
||||
export DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1=1
|
||||
|
||||
RADV_DIR="/usr/share/vulkan/icd.d"
|
||||
PRO_DIR="/opt/amdgpu-pro/etc/vulkan/icd.d"
|
||||
VLK_DIR="/etc/vulkan/icd.d"
|
||||
LEGACY_DIR="/opt/amdgpu-pro/vulkan-legacy/etc/vulkan/icd.d"
|
||||
|
||||
vk_radv() {
|
||||
export VK_ICD_FILENAMES="${RADV_DIR}/radeon_icd.i686.json:${RADV_DIR}/radeon_icd.x86_64.json"
|
||||
}
|
||||
|
||||
vk_amdvlk() {
|
||||
export VK_ICD_FILENAMES="${VLK_DIR}/amd_icd32.json:${VLK_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_pro() {
|
||||
export LD_LIBRARY_PATH="/opt/amdgpu/lib/x86_64-linux-gnu:/opt/amdgpu/i386-linux-gnu:${LD_LIBRARY_PATH}"
|
||||
export VK_ICD_FILENAMES="${PRO_DIR}/amd_icd32.json:${PRO_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
vk_legacy() {
|
||||
export VK_ICD_FILENAMES="${LEGACY_DIR}/amd_icd32.json:${LEGACY_DIR}/amd_icd64.json"
|
||||
}
|
||||
|
||||
if [[ $(basename $0) == vk_radv ]]; then
|
||||
vk_radv
|
||||
elif [[ $(basename $0) == vk_amdvlk ]]; then
|
||||
vk_amdvlk
|
||||
elif [[ $(basename $0) == vk_pro ]]; then
|
||||
vk_pro
|
||||
elif [[ $(basename $0) == vk_legacy ]]; then
|
||||
vk_legacy
|
||||
else
|
||||
echo "Unknown function"
|
||||
exit 1
|
||||
fi
|
||||
export VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json"
|
||||
|
||||
# applied variables, now execute the rest of the command
|
||||
"$@"
|
||||
|
10
pika-build-config/amd64-v3.sh
Executable file
10
pika-build-config/amd64-v3.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#! /bin/bash
|
||||
export PIKA_BUILD_ARCH="amd64-v3"
|
||||
export DEBIAN_FRONTEND="noninteractive"
|
||||
export DEB_BUILD_MAINT_OPTIONS="optimize=+lto -march=x86-64-v3 -O3 -flto=auto"
|
||||
export DEB_CFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto=auto"
|
||||
export DEB_CPPFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto=auto"
|
||||
export DEB_CXXFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto=auto"
|
||||
export DEB_LDFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto=auto"
|
||||
export DEB_BUILD_OPTIONS="nocheck notest terse"
|
||||
export DPKG_GENSYMBOLS_CHECK_LEVEL=0
|
5
pika-build-config/i386.sh
Executable file
5
pika-build-config/i386.sh
Executable file
@ -0,0 +1,5 @@
|
||||
#! /bin/bash
|
||||
export PIKA_BUILD_ARCH="i386"
|
||||
export DEBIAN_FRONTEND="noninteractive"
|
||||
export DEB_BUILD_OPTIONS="nocheck notest terse"
|
||||
export DPKG_GENSYMBOLS_CHECK_LEVEL=0
|
16
release.sh
16
release.sh
@ -1,14 +1,2 @@
|
||||
# Sign the packages
|
||||
dpkg-sig --sign builder ./output/pika-amdgpu-switcher*.deb
|
||||
|
||||
# Pull down existing ppa repo db files etc
|
||||
rsync -azP --exclude '*.deb' ferreo@direct.pika-os.com:/srv/www/pikappa/ ./output/repo
|
||||
|
||||
# Remove our existing package from the repo
|
||||
reprepro -V --basedir ./output/repo/ removefilter kinetic 'Package (% pika-amdgpu-switcher*)'
|
||||
|
||||
# Add the new package to the repo
|
||||
reprepro -V --basedir ./output/repo/ includedeb kinetic ./output/pika-amdgpu-switcher*.deb
|
||||
|
||||
# Push the updated ppa repo to the server
|
||||
rsync -azP ./output/repo/ ferreo@direct.pika-os.com:/srv/www/pikappa/
|
||||
# send debs to server
|
||||
rsync -azP --include './' --include '*.deb' --exclude '*' ./output/ ferreo@direct.pika-os.com:/srv/www/cockatiel-incoming/
|
||||
|
Loading…
Reference in New Issue
Block a user