Initial commit
This commit is contained in:
commit
b28950353b
9 changed files with 266 additions and 0 deletions
52
.SRCINFO
Normal file
52
.SRCINFO
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
pkgbase = hardinfo2
|
||||
pkgdesc = System Information and Benchmark for Linux Systems.
|
||||
pkgver = 2.2.13
|
||||
pkgrel = 2
|
||||
url = https://github.com/hardinfo2/hardinfo2
|
||||
install = hardinfo2.install
|
||||
arch = x86_64
|
||||
arch = aarch64
|
||||
arch = riscv64
|
||||
license = GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-2.1-or-later
|
||||
checkdepends = appstream
|
||||
makedepends = cmake
|
||||
makedepends = git
|
||||
makedepends = qt5-base
|
||||
depends = bash
|
||||
depends = cairo
|
||||
depends = gcc-libs
|
||||
depends = gdk-pixbuf2
|
||||
depends = glib2
|
||||
depends = glibc
|
||||
depends = glslang
|
||||
depends = gtk3
|
||||
depends = hicolor-icon-theme
|
||||
depends = json-glib
|
||||
depends = libdecor
|
||||
depends = libsoup3
|
||||
depends = libx11
|
||||
depends = libxcb
|
||||
depends = mesa-utils
|
||||
depends = pango
|
||||
depends = vulkan-headers
|
||||
depends = vulkan-icd-loader
|
||||
depends = vulkan-tools
|
||||
depends = wayland
|
||||
optdepends = dmidecode: Memory Devices / System DMI module
|
||||
optdepends = fwupd: Firmware module
|
||||
optdepends = gawk: determine System Type
|
||||
optdepends = iperf3: Internal Network Speed benchmark
|
||||
optdepends = lm_sensors: Sensors module
|
||||
optdepends = pciutils: PCI Devices module
|
||||
optdepends = qt5-base: OpenGL benchmark
|
||||
optdepends = sysbench: SysBench CPU benchmark
|
||||
optdepends = udisks2: Storage module
|
||||
optdepends = usbutils: USB Devices module
|
||||
optdepends = xdg-utils: open your browser for bugs, homepage & links
|
||||
optdepends = xorg-xrandr: read monitor setup
|
||||
provides = hardinfo
|
||||
conflicts = hardinfo
|
||||
source = hardinfo2-2.2.13::git+https://github.com/hardinfo2/hardinfo2.git#tag=release-2.2.13
|
||||
b2sums = ff04c63ee0da1dfd37a0d6b0284c68df59e12ff245fd189d5a042acad95d68a868f0dde135212fe521b58b5d330a2f0aaa8eefaee99043ca4052875668761005
|
||||
|
||||
pkgname = hardinfo2
|
||||
17
.gitignore
vendored
Normal file
17
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# Ignore everything
|
||||
*
|
||||
|
||||
# But not these files...
|
||||
!.gitignore
|
||||
!PKGBUILD
|
||||
!.SRCINFO
|
||||
!LICENSE
|
||||
!chroot-build
|
||||
!.nvchecker.toml
|
||||
!/keys
|
||||
!/keys/pgp
|
||||
!/keys/pgp/*.asc
|
||||
!/LICENSES
|
||||
!/LICENSES/*.txt
|
||||
!REUSE.toml
|
||||
!*.install
|
||||
4
.nvchecker.toml
Normal file
4
.nvchecker.toml
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
[hardinfo2]
|
||||
source = "git"
|
||||
git = "https://github.com/hardinfo2/hardinfo2.git"
|
||||
prefix = "release-"
|
||||
12
LICENSE
Normal file
12
LICENSE
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
Copyright Arch Linux Contributors
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software for
|
||||
any purpose with or without fee is hereby granted.
|
||||
|
||||
THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL
|
||||
WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
|
||||
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE
|
||||
FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
|
||||
DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
|
||||
AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
1
LICENSES/0BSD.txt
Symbolic link
1
LICENSES/0BSD.txt
Symbolic link
|
|
@ -0,0 +1 @@
|
|||
../LICENSE
|
||||
86
PKGBUILD
Normal file
86
PKGBUILD
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
# Maintainer: Christian Schendel <doppelhelix@gmail.com>
|
||||
# Contributor: Mark Wagie <mark dot wagie at proton dot me>
|
||||
|
||||
pkgname=hardinfo2
|
||||
pkgver=2.2.13
|
||||
pkgrel=2
|
||||
pkgdesc="System Information and Benchmark for Linux Systems."
|
||||
arch=('x86_64' 'aarch64' 'riscv64')
|
||||
url="https://github.com/hardinfo2/hardinfo2"
|
||||
license=(
|
||||
'GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-2.1-or-later'
|
||||
)
|
||||
depends=(
|
||||
bash
|
||||
cairo
|
||||
gcc-libs
|
||||
gdk-pixbuf2
|
||||
glib2
|
||||
glibc
|
||||
glslang
|
||||
gtk3
|
||||
hicolor-icon-theme
|
||||
json-glib
|
||||
libdecor
|
||||
libsoup3
|
||||
libx11
|
||||
libxcb
|
||||
mesa-utils
|
||||
pango
|
||||
vulkan-headers
|
||||
vulkan-icd-loader
|
||||
vulkan-tools
|
||||
wayland
|
||||
)
|
||||
makedepends=(
|
||||
cmake
|
||||
git
|
||||
qt5-base
|
||||
)
|
||||
checkdepends=(
|
||||
appstream
|
||||
)
|
||||
optdepends=(
|
||||
'dmidecode: Memory Devices / System DMI module'
|
||||
'fwupd: Firmware module'
|
||||
'gawk: determine System Type'
|
||||
'iperf3: Internal Network Speed benchmark'
|
||||
'lm_sensors: Sensors module'
|
||||
'pciutils: PCI Devices module'
|
||||
'qt5-base: OpenGL benchmark'
|
||||
'sysbench: SysBench CPU benchmark'
|
||||
'udisks2: Storage module'
|
||||
'usbutils: USB Devices module'
|
||||
'xdg-utils: open your browser for bugs, homepage & links'
|
||||
'xorg-xrandr: read monitor setup'
|
||||
) # 'mesa-utils: GLX info for Display module'
|
||||
|
||||
provides=('hardinfo')
|
||||
conflicts=('hardinfo')
|
||||
install="$pkgname.install"
|
||||
source=("$pkgname-$pkgver::git+$url.git#tag=release-$pkgver")
|
||||
b2sums=('ff04c63ee0da1dfd37a0d6b0284c68df59e12ff245fd189d5a042acad95d68a868f0dde135212fe521b58b5d330a2f0aaa8eefaee99043ca4052875668761005')
|
||||
|
||||
build() {
|
||||
local cmake_options=(
|
||||
-B build
|
||||
-S "$pkgname-$pkgver"
|
||||
-DCMAKE_BUILD_TYPE='None'
|
||||
-DCMAKE_INSTALL_PREFIX='/usr'
|
||||
-DCMAKE_INSTALL_LIBDIR='lib'
|
||||
-Wno-dev
|
||||
)
|
||||
cmake "${cmake_options[@]}"
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
check() {
|
||||
desktop-file-validate "build/$pkgname.desktop"
|
||||
appstreamcli validate --no-net "build/org.$pkgname.$pkgname.metainfo.xml"
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" cmake --install build
|
||||
}
|
||||
|
||||
# vim: set ft=sh ts=4 sw=4 et:
|
||||
23
REUSE.toml
Normal file
23
REUSE.toml
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
version = 1
|
||||
|
||||
[[annotations]]
|
||||
path = [
|
||||
"PKGBUILD",
|
||||
"README.md",
|
||||
"keys/**",
|
||||
".SRCINFO",
|
||||
".nvchecker.toml",
|
||||
".gitignore",
|
||||
"*.install",
|
||||
"*.sysusers",
|
||||
"*.tmpfiles",
|
||||
"*.logrotate",
|
||||
"*.pam",
|
||||
"*.service",
|
||||
"*.socket",
|
||||
"*.timer",
|
||||
"*.desktop",
|
||||
"*.hook",
|
||||
]
|
||||
SPDX-FileCopyrightText = "Arch Linux contributors"
|
||||
SPDX-License-Identifier = "0BSD"
|
||||
65
chroot-build
Executable file
65
chroot-build
Executable file
|
|
@ -0,0 +1,65 @@
|
|||
#!/bin/bash
|
||||
|
||||
# SPDX-FileCopyrightText: Christian Schendel
|
||||
# SPDX-License-Identifier: 0BSD
|
||||
|
||||
set -euo pipefail
|
||||
use_tmpfs=true
|
||||
CHROOT="/tmp/mkarchroot"
|
||||
|
||||
check_available_ram() {
|
||||
if [ "$(awk '/^MemAvailable:/ { print $2; }' /proc/meminfo)" -lt 50000 ]; then
|
||||
use_tmpfs=false
|
||||
fi
|
||||
}
|
||||
|
||||
create_chroot_directory() {
|
||||
if [ $use_tmpfs ]; then
|
||||
sudo mount --mkdir -t tmpfs -o defaults,size=20G tmpfs $CHROOT
|
||||
else
|
||||
sudo mkdir -p "$CHROOT"
|
||||
fi
|
||||
}
|
||||
|
||||
create_chroot_environment() {
|
||||
if [[ ! -d "$CHROOT/root" ]]; then
|
||||
mkarchroot -M ~/.config/pacman/makepkg.conf "$CHROOT/root" base-devel
|
||||
fi
|
||||
}
|
||||
|
||||
build_package(){
|
||||
arch-nspawn "$CHROOT/root" pacman -Syu
|
||||
if makechrootpkg -c -r "$CHROOT" -- -Asf . ; then
|
||||
makepkg --printsrcinfo >.SRCINFO
|
||||
else
|
||||
delete_chroot_environment && echo -e "\n\e[1;31m==> BUILD FAILED: \e[1;37m$CHROOT removed\e[0m " && exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
sign_package(){
|
||||
PACKAGE="$(makepkg --packagelist)"
|
||||
gpg --use-agent --output "$PACKAGE.sig" --detach-sign "$PACKAGE"
|
||||
}
|
||||
|
||||
delete_chroot_environment() {
|
||||
if [ "$(stat -f --format=%T "$CHROOT")" == "btrfs" ]; then
|
||||
{
|
||||
sudo btrfs subvolume delete "$CHROOT/root/var/lib/portables"
|
||||
sudo btrfs subvolume delete "$CHROOT/root/var/lib/machines"
|
||||
sudo btrfs subvolume delete "$CHROOT/root"
|
||||
sudo rm -Rf $CHROOT
|
||||
} >>/dev/null 2>&1
|
||||
elif [ "$(stat -f --format=%T "$CHROOT")" == "tmpfs" ]; then
|
||||
sudo umount -f $CHROOT
|
||||
fi
|
||||
sudo rm -Rf $CHROOT
|
||||
}
|
||||
|
||||
check_available_ram
|
||||
create_chroot_directory
|
||||
create_chroot_environment
|
||||
build_package
|
||||
sign_package
|
||||
delete_chroot_environment
|
||||
|
||||
# vim: set ts=4 sw=4 et:
|
||||
6
hardinfo2.install
Normal file
6
hardinfo2.install
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
post_install() {
|
||||
echo ""
|
||||
echo "The included service is required for root access:"
|
||||
echo "systemctl start hardinfo2"
|
||||
echo ""
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue