diff --git a/LICENSE.md b/LICENSE.md deleted file mode 100644 index 125ed9b..0000000 --- a/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2023 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. diff --git a/debian/changelog b/debian/changelog index 328bc5c..972727f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -upstream-name (pkgver-pkgrel) distro_codename; urgency=medium +pika-pbuilder (0.1.0-101pika1) nest; urgency=medium * Initial release. (Closes: #nnnn) diff --git a/debian/control b/debian/control index 0bcd8e0..0bc83f9 100644 --- a/debian/control +++ b/debian/control @@ -1,4 +1,4 @@ -Source: upstream-name +Source: pika-pbuilder Section: admin Priority: optional Maintainer: name @@ -6,14 +6,7 @@ Standards-Version: 4.6.1 Build-Depends: debhelper-compat (= 13) Rules-Requires-Root: no -Package: pkgname1 -Architecture: linux-any -# Delete any of these lines if un-used -Depends: ${misc:Depends}, depends -Recommends: high priority optdepends -Conflicts: conflicts -Suggests: low priority optdepends -Breaks: also conflicts!? -Provides: provides -# -Description: pkgdesc +Package: pika-pbuilder +Architecture: all +Depends: ${misc:Depends}, pbuilder, debootstrap, devscripts, debhelper, sbuild, debhelper +Description: pika pbuilder setup diff --git a/debian/pika-pbuilder.install b/debian/pika-pbuilder.install new file mode 100644 index 0000000..673959f --- /dev/null +++ b/debian/pika-pbuilder.install @@ -0,0 +1,3 @@ +usr +etc +var \ No newline at end of file diff --git a/debian/rules b/debian/rules index ed40aff..257a216 100755 --- a/debian/rules +++ b/debian/rules @@ -4,77 +4,5 @@ ## Output every command that modifies files on the build system. export DH_VERBOSE = 1 -## === Set paths env vars === - -## Source directory, called upon by $(srcdir) -srcdir = $(shell debian/scripts/get_pwd.sh) -## The Root of package number one, called upon by $(pkgdir1) -pkgdir1 = $(srcdir)/debian/pkgdir1 -## The Root of package number two, you can add as many of these as you like -pkgdir2 = $(srcdir)/debian/pkgdir2 - -## If building a singular package you can remove the number, and as you guessed you call upon it with $(pkgdir) -# pkgdir = $(srcdir)/debian/pkgdir - -## === End end of region === - -## === the chain of command === -## debuild runs a chain of dh functions in the following order: -## dh_testdir -## dh_clean -## dh_auto_clean -## dh_update_autotools_config -## dh_autoreconf -## dh_auto_configure -## dh_prep -## dh_build -## dh_auto_build -## dh_install -## dh_auto_install -## dh_installdocs -## dh_installchangelogs -## dh_perl -## dh_link -## dh_strip_nondeterminism -## dh_compress -## dh_fixperms -## dh_missing -## dh_dwz -## dh_strip -## dh_makeshlibs -## dh_shlibdeps -## dh_installdeb -## dh_gencontrol -## but you are most likely to only need to override the following: -## dh_clean -## dh_auto_configure -## dh_build -## dh_install - -## === End end of region === - -## === overriding dh functions === -## by default all dh functions will run a specific command based on the build system selected by "dh $@" -## if you have a makefile that does everything you need this is fine, -## but most likely you have no MakeFile and you want to add your own commands -## Note : overrides must be places above %: -## So here's a few examples: - -## overriding dh_clean to make it not delete rust vendor files: -#override_dh_clean: -# echo "disabled" - -## overriding dh_auto_configure to add custom configs: -#override_dh_auto_configure: -# $(srcdir)/configure -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_DATADIR=/usr/share -DCMAKE_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu -DBUILD_PLUGIN=OFF - -## overriding dh_install to install files to a package: -#override_dh_auto_configure: -# mkdir -p $(pkgdir1)/usr/bin -# cp $(srcdir)/pikman $(pkgdir1)/usr/bin/ - -## === End end of region === - -## This here will start the build: %: dh $@ diff --git a/debian/scripts/get_pwd.sh b/debian/scripts/get_pwd.sh deleted file mode 100755 index ef98ce9..0000000 --- a/debian/scripts/get_pwd.sh +++ /dev/null @@ -1,2 +0,0 @@ -#! /bin/sh -env | grep -w "PWD" | cut -c5- diff --git a/main.sh b/main.sh index 4fd7b08..60b8a74 100755 --- a/main.sh +++ b/main.sh @@ -3,9 +3,8 @@ DEBIAN_FRONTEND=noninteractive # Clone Upstream -mkdir -p ./src-pkg-name -cp -rvf ./debian ./src-pkg-name/ -cd ./src-pkg-name/ +cp -rvf ./debian ./pika-pbuilder/ +cd ./pika-pbuilder/ # Get build deps apt-get build-dep ./ -y diff --git a/pika-pbuilder/etc/pbuilderrc b/pika-pbuilder/etc/pbuilderrc new file mode 100644 index 0000000..93c7c57 --- /dev/null +++ b/pika-pbuilder/etc/pbuilderrc @@ -0,0 +1,4 @@ +USENETWORK=yes +HOOKDIR="/var/cache/pbuilder/hook.d/" +APTCACHEHARDLINK=no +export DEBIAN_FRONTEND="noninteractive" \ No newline at end of file diff --git a/pika-pbuilder/usr/bin/pika-pbuilder-amd64-build b/pika-pbuilder/usr/bin/pika-pbuilder-amd64-build new file mode 100644 index 0000000..0b687a6 --- /dev/null +++ b/pika-pbuilder/usr/bin/pika-pbuilder-amd64-build @@ -0,0 +1,2 @@ +#! /bin/bash +DIST=sid ARCH=amd64 pbuilder build "$@" --distribution sid --architecture amd64 --debootstrapopts --include=ca-certificates \ No newline at end of file diff --git a/pika-pbuilder/usr/bin/pika-pbuilder-amd64-init b/pika-pbuilder/usr/bin/pika-pbuilder-amd64-init new file mode 100644 index 0000000..4262f76 --- /dev/null +++ b/pika-pbuilder/usr/bin/pika-pbuilder-amd64-init @@ -0,0 +1,2 @@ +#! /bin/bash +DIST=sid ARCH=amd64 pbuilder create --distribution sid --architecture amd64 --debootstrapopts --include=ca-certificates "$@" \ No newline at end of file diff --git a/pika-pbuilder/usr/bin/pika-pbuilder-i386-build b/pika-pbuilder/usr/bin/pika-pbuilder-i386-build new file mode 100644 index 0000000..2685c51 --- /dev/null +++ b/pika-pbuilder/usr/bin/pika-pbuilder-i386-build @@ -0,0 +1,2 @@ +#! /bin/bash +DIST=sid ARCH=i386 pbuilder build "$@" --distribution sid --architecture i386 --debootstrapopts --include=ca-certificates \ No newline at end of file diff --git a/pika-pbuilder/usr/bin/pika-pbuilder-i386-init b/pika-pbuilder/usr/bin/pika-pbuilder-i386-init new file mode 100644 index 0000000..333f2a8 --- /dev/null +++ b/pika-pbuilder/usr/bin/pika-pbuilder-i386-init @@ -0,0 +1,2 @@ +#! /bin/bash +DIST=sid ARCH=i386 pbuilder create --distribution sid --architecture i386 --debootstrapopts --include=ca-certificates "$@" \ No newline at end of file diff --git a/pika-pbuilder/var/cache/pbuilder/hook.d/01pikarepo b/pika-pbuilder/var/cache/pbuilder/hook.d/01pikarepo new file mode 100644 index 0000000..cb1b3a0 --- /dev/null +++ b/pika-pbuilder/var/cache/pbuilder/hook.d/01pikarepo @@ -0,0 +1,126 @@ +#! /bin/bash + +mkdir -p /etc/apt/sources.list.d + +# Clear /etc/apt/sources.list in favor of deb822 formats +tee /etc/apt/sources.list <<'EOF' +## This file is deprecated in PikaOS. +## See /etc/apt/sources.list.d/system.sources. +EOF + +# Add Debian Repo +touch /etc/apt/sources.list.d/debian.sources +tee /etc/apt/sources.list.d/debian.sources <<'EOF' +X-Repolib-Name: Debian Sources +Enabled: yes +Types: deb deb-src +URIs: http://deb.debian.org/debian +Suites: sid experimental +Components: main contrib non-free non-free-firmware +X-Repolib-Default-Mirror: http://deb.debian.org/debian +Signed-by: /usr/share/keyrings/debian-archive-keyring.gpg +EOF + +# Add Pika Repos +# tee /etc/apt/sources.list.d/system.sources <<'EOF' +# X-Repolib-Name: PikaOS System Sources +# Enabled: yes +# Types: deb +# URIs: https://ppa.pika-os.com/ +# Suites: pikauwu +# Components: main amdgpu rocm +# X-Repolib-ID: system +# X-Repolib-Default-Mirror: https://ppa.pika-os.com/ +# Signed-By: /etc/apt/keyrings/pika-keyring.gpg.key +# EOF + +# Add DMO Repos +tee /etc/apt/sources.list.d/dmo.sources <<'EOF' +X-Repolib-Name: Multimedia Sources +Enabled: yes +Types: deb deb-src +URIs: https://www.deb-multimedia.org +Suites: sid +Components: main non-free +X-Repolib-Default-Mirror: https://www.deb-multimedia.org/ +Signed-By: /etc/apt/keyrings/deb-multimedia-keyring.gpg +EOF + +# Add Neon Src +tee /etc/apt/sources.list.d/neon.sources <<'EOF' +X-Repolib-Name: KDE Neon Sources +Enabled: yes +Types: deb-src +URIs: http://archive.neon.kde.org/user/ +Suites: jammy +Components: main +X-Repolib-Default-Mirror: http://archive.neon.kde.org/user/ +Signed-By: /etc/apt/keyrings/kde-neon-keyring.gpg.key +EOF + +# # Workarounds Repo +# echo "deb [trusted=yes] https://raw.githubusercontent.com/cosmicfusion/debian-workaround-packages-repo/main sid main" > /etc/apt/sources.list.d/cosmo-workarounds.list + +# Get keyrings +mkdir -p /etc/apt/keyrings/ +wget https://github.com/PikaOS-Linux/pika-base-debian-container/raw/main/pika-keyring.gpg.key -O /etc/apt/keyrings/pika-keyring.gpg.key +wget https://github.com/PikaOS-Linux/pika-base-debian-container/raw/main/deb-multimedia-keyring.gpg -O /etc/apt/keyrings/deb-multimedia-keyring.gpg +wget https://github.com/PikaOS-Linux/pika-base-debian-container/raw/main/kde-neon-keyring.gpg.key -O /etc/apt/keyrings/kde-neon-keyring.gpg.key + +# Setup apt configration +mkdir -p /etc/apt/preferences.d/ +tee /etc/apt/preferences.d/0-pika-debian-settings <<'EOF' +# Blacklist Packages from being pulled from debian experimental +Package: *libwebrtc-audio-processing* +Pin: release a=experimental +Pin-Priority: 100 + +Package: *selinux* +Pin: release a=experimental +Pin-Priority: 100 + +# Lower Debians's priority under pika's +Package: * +Pin: release a=experimental +Pin-Priority: 400 + +Package: * +Pin: release o=Debian +Pin-Priority: 400 + +Package: * +Pin: release o=Unofficial Multimedia Packages +Pin-Priority: 400 + +# Neon blacklist +Package: neon-desktop base-files +Pin: origin archive.neon.kde.org +Pin-Priority: -1 + +# Give pika lowest priority because we don't want it sources overwriting +Package: * +Pin: release a=pikauwu,c=main +Pin-Priority: 390 +EOF + +tee /etc/apt/preferences.d/1-pika-radeon-settings <<'EOF' +Package: libhsa-runtime64* +Pin: release o=Debian +Pin-Priority: 100 + +Package: hipcc* +Pin: release o=Debian +Pin-Priority: 100 + +Package: rocm* +Pin: release o=Debian +Pin-Priority: 100 + +Package: * +Pin: release c=rocm +Pin-Priority: 400 + +Package: amdgpu-core amdgpu-pro-core amdgpu-dkms amdgpu-pro-lib32 +Pin: release a=* +Pin-Priority: -10 +EOF \ No newline at end of file