Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Packages for the Linux perf profiler #600

Open
wants to merge 21 commits into
base: testing
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 10 commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
deb8325
perf: Package for the Linux perf profiler
matteodelabre Jun 25, 2022
2ca282f
Merge branch 'testing' into package/perf/initial
matteodelabre Jun 26, 2022
5f73e76
Merge branch 'testing' into package/perf/initial
Eeems Sep 26, 2022
4a45df8
Merge branch 'testing' into package/perf/initial
Eeems Oct 1, 2022
af9bced
Merge branch 'testing' into package/perf/initial
Eeems Oct 29, 2022
e909c5b
Merge branch 'testing' into package/perf/initial
Eeems Nov 7, 2022
94c486b
Merge branch 'testing' into package/perf/initial
Eeems Nov 21, 2022
06b53a9
Add linux-mainline-perf and linux-stracciatella-perf as split packages
matteodelabre Nov 21, 2022
fd46dac
Install python->python3 symlink for build
matteodelabre Nov 21, 2022
c1d12e7
Disable werror for old kernel perf build
matteodelabre Nov 21, 2022
4f85b60
Add provides/conflicts for perf packages
matteodelabre Nov 28, 2022
84b5f00
Merge branch 'testing' into package/perf/initial
Eeems Aug 8, 2023
d436b08
Merge branch 'testing' into package/perf/initial
Eeems Aug 30, 2023
f5364cc
Merge branch 'testing' into package/perf/initial
Eeems Sep 8, 2023
9fa1fd5
Merge branch 'testing' into package/perf/initial
Eeems Sep 27, 2023
2aed7f5
Merge branch 'testing' into package/perf/initial
Eeems Nov 27, 2023
e0f0af8
Merge branch 'testing' into package/perf/initial
Eeems Dec 6, 2023
2c607e0
Update package
Eeems Dec 6, 2023
fb3532b
Merge branch 'testing' into package/perf/initial
Eeems Feb 3, 2024
ad523c0
Merge branch 'testing' into package/perf/initial
Eeems Apr 21, 2024
db61784
Merge branch 'testing' into package/perf/initial
Eeems May 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
76 changes: 46 additions & 30 deletions package/linux-mainline/package
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,11 @@
# SPDX-License-Identifier: MIT

archs=(rm2)
pkgnames=(linux-mainline)
pkgdesc="reMarkable 2 kernel based on the mainline kernel"
url=https://www.kernel.org
pkgnames=(linux-mainline linux-mainline-perf)
pkgver=6.0.0-1
matteodelabre marked this conversation as resolved.
Show resolved Hide resolved
timestamp=2022-05-22T21:50:09Z
section=kernel
timestamp=2022-10-02T21:43:31Z
maintainer="Alistair Francis <alistair@alistair23.me>"
makedepends=(build:flex build:bison build:libssl-dev build:bc build:lzop build:libgmp-dev build:libmpc-dev)
makedepends=(build:flex build:bison build:libssl-dev build:bc build:lzop build:libgmp-dev build:libmpc-dev build:python-is-python3)
license=GPL-2.0-only
flags=(nostrip)

Expand All @@ -21,35 +18,54 @@ sha256sums=(1583d553380a656ecaac8dab89558051e9165983381adc9c3d52fb8ac0ce19fd)
build() {
ARCH=arm make imx_v6_v7_defconfig
ARCH=arm make -j8
ARCH=arm make -j8 tools/perf
}

package() {
# Prepare files for the kernel archive
local staging="$srcdir"/staging
mkdir -p "$staging/boot"
linux-mainline() {
pkgdesc="reMarkable 2 kernel based on the mainline kernel"
url=https://www.kernel.org
section=kernel
installdepends=(kernelctl)

cp --no-dereference {"$srcdir"/arch/arm,"$staging"}/boot/zImage
cp --no-dereference "$srcdir"/arch/arm/boot/dts/imx7d-remarkable2.dtb \
"$staging"/boot/zero-sugar.dtb
package() {
# Prepare files for the kernel archive
local staging="$srcdir"/staging
mkdir -p "$staging/boot"

ARCH=arm make -C "$srcdir" modules_install INSTALL_MOD_PATH="$staging"
rm "$staging"/lib/modules/*/{source,build}
cp --no-dereference {"$srcdir"/arch/arm,"$staging"}/boot/zImage
cp --no-dereference "$srcdir"/arch/arm/boot/dts/imx7d-remarkable2.dtb \
"$staging"/boot/zero-sugar.dtb

# Create the kernel archive
local archive="mainline-${pkgver%-*}.tar.bz2"
install -d "$pkgdir"/opt/usr/share/kernelctl
(cd "$staging" && tar --owner root:0 --group root:0 --mtime=$timestamp \
-cjf "$pkgdir"/opt/usr/share/kernelctl/"$archive" boot/* lib/modules/*)
ARCH=arm make -C "$srcdir" modules_install INSTALL_MOD_PATH="$staging"
rm "$staging"/lib/modules/*/{source,build}

# Create the kernel archive
local archive="mainline-${pkgver%-*}.tar.bz2"
install -d "$pkgdir"/opt/usr/share/kernelctl
(cd "$staging" && tar --owner root:0 --group root:0 --mtime=$timestamp \
-cjf "$pkgdir"/opt/usr/share/kernelctl/"$archive" boot/* lib/modules/*)
}

configure() {
echo "The new kernel files have been copied, but not installed."
echo "Please use kernelctl to select the kernel to boot."
echo
echo "Known issues with the mainline kernel:"
echo " - No support for low power mode (suspend uses more power then it should)"
echo " - WiFi sometimes is off on boot (can be turned on again though)"
echo " - GUI shutdown in Oxide doesn't work"
echo " - Wacom stylus doesn't work in Xochitl (works everywhere else though)"
echo " - No OTG control support"
}
}

configure() {
echo "The new kernel files have been copied, but not installed."
echo "Please use kernelctl to select the kernel to boot."
echo
echo "Known issues with the mainline kernel:"
echo " - No support for low power mode (suspend uses more power then it should)"
echo " - WiFi sometimes is off on boot (can be turned on again though)"
echo " - GUI shutdown in Oxide doesn't work"
echo " - Wacom stylus doesn't work in Xochitl (works everywhere else though)"
echo " - No OTG control support"
linux-mainline-perf() {
matteodelabre marked this conversation as resolved.
Show resolved Hide resolved
pkgdesc="Linux profiling with performance counters"
url=https://perf.wiki.kernel.org
section=devel

package() {
install -D -m 755 -t "$pkgdir"/opt/bin "$srcdir"/tools/perf/perf
ln -s /opt/bin/perf "$pkgdir"/opt/bin/trace
}
}
76 changes: 46 additions & 30 deletions package/linux-stracciatella/package
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,14 @@
# SPDX-License-Identifier: MIT

archs=(rm1 rm2)
pkgnames=(linux-stracciatella)
pkgdesc="RemarkableAS's vanilla kernel with a few extra flakes"
url=https://github.com/Etn40ff/linux-remarkable
pkgnames=(linux-stracciatella linux-stracciatella-perf)
pkgver=5.4.70-2
matteodelabre marked this conversation as resolved.
Show resolved Hide resolved
timestamp=2022-09-26T21:23:39Z
section="kernel"
maintainer="Salvatore Stella <etn45p4m@gmail.com>"
makedepends=(build:flex build:bison build:libssl-dev build:bc build:lzop build:libgmp-dev build:libmpc-dev build:kmod)
makedepends=(build:flex build:bison build:libssl-dev build:bc build:lzop build:libgmp-dev build:libmpc-dev build:kmod build:python-is-python3)
license=GPL-2.0-only
flags=(nostrip)
installdepends=(kernelctl)

image=base:v2.3
source=(https://github.com/Etn40ff/linux-remarkable/archive/41121ea10ed2235c441cfe717461988859d7f5b6.tar.gz)
sha256sums=(ade87a10bfa7069222cbf8eb1d00ca460d38aab9685223d2fa3ee4f363a75cfa)
Expand All @@ -25,35 +22,54 @@ build() {
ARCH=arm make zero-sugar_defconfig
fi
ARCH=arm make -j8
WERROR=0 ARCH=arm make -j8 tools/perf
}

package() {
# Prepare files for the kernel archive
local staging="$srcdir"/staging
mkdir -p "$staging/boot"
linux-stracciatella() {
pkgdesc="RemarkableAS's vanilla kernel with a few extra flakes"
url=https://github.com/Etn40ff/linux-remarkable
section="kernel"
installdepends=(kernelctl)

cp --no-dereference {"$srcdir"/arch/arm,"$staging"}/boot/zImage
if [[ $arch = rm1 ]]; then
cp --no-dereference "$srcdir"/arch/arm/boot/dts/zero-gravitas.dtb "$staging"/boot/zero-gravitas.dtb
elif [[ $arch = rm2 ]]; then
cp --no-dereference "$srcdir"/arch/arm/boot/dts/zero-sugar.dtb "$staging"/boot/zero-sugar.dtb
fi
package() {
# Prepare files for the kernel archive
local staging="$srcdir"/staging
mkdir -p "$staging/boot"

ARCH=arm make -C "$srcdir" modules_install INSTALL_MOD_PATH="$staging"
rm "$staging"/lib/modules/*/{source,build}
cp --no-dereference {"$srcdir"/arch/arm,"$staging"}/boot/zImage
if [[ $arch = rm1 ]]; then
cp --no-dereference "$srcdir"/arch/arm/boot/dts/zero-gravitas.dtb "$staging"/boot/zero-gravitas.dtb
elif [[ $arch = rm2 ]]; then
cp --no-dereference "$srcdir"/arch/arm/boot/dts/zero-sugar.dtb "$staging"/boot/zero-sugar.dtb
fi

# Create the kernel archive
local archive="stracciatella-${pkgver%-*}.tar.bz2"
install -d "$pkgdir"/opt/usr/share/kernelctl
(cd "$staging" && tar --owner root:0 --group root:0 --mtime=$timestamp \
-cjf "$pkgdir"/opt/usr/share/kernelctl/"$archive" boot/* lib/modules/*)
ARCH=arm make -C "$srcdir" modules_install INSTALL_MOD_PATH="$staging"
rm "$staging"/lib/modules/*/{source,build}

# Create the kernel archive
local archive="stracciatella-${pkgver%-*}.tar.bz2"
install -d "$pkgdir"/opt/usr/share/kernelctl
(cd "$staging" && tar --owner root:0 --group root:0 --mtime=$timestamp \
-cjf "$pkgdir"/opt/usr/share/kernelctl/"$archive" boot/* lib/modules/*)
}

configure() {
if [[ $(< /etc/version) -le 20210709090000 ]]; then
echo "WARNING: Your system is too old; this kernel will most likely not work unless you add the appropriate firmware blobs to /lib/firmware."
echo "Please consider updating your system instead."
fi
echo "The new kernel files have been copied, but not installed."
echo "Please use kernelctl to select the kernel to boot."
}
}

configure() {
if [[ $(< /etc/version) -le 20210709090000 ]]; then
echo "WARNING: Your system is too old; this kernel will most likely not work unless you add the appropriate firmware blobs to /lib/firmware."
echo "Please consider updating your system instead."
fi
echo "The new kernel files have been copied, but not installed."
echo "Please use kernelctl to select the kernel to boot."
linux-stracciatella-perf() {
pkgdesc="Linux profiling with performance counters"
url=https://perf.wiki.kernel.org
section=devel

package() {
install -D -m 755 -t "$pkgdir"/opt/bin "$srcdir"/tools/perf/perf
ln -s /opt/bin/perf "$pkgdir"/opt/bin/trace
}
}