Merge updates from master

This commit is contained in:
Repository mirror & CI
2024-05-26 12:48:35 +00:00
9 changed files with 237 additions and 5 deletions

View File

@@ -0,0 +1,33 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Double Commander: file manager with two panels, similar to Total Commander"
HOMEPAGE="https://doublecmd.sourceforge.io/"
S="${WORKDIR}"
LICENSE="GPL-2"
SLOT="0"
PROPERTIES="live"
IUSE="+gtk qt5"
REQUIRED_USE=" ^^ ( gtk qt5 ) "
RESTRICT="strip"
RDEPEND="sys-fs/fuse:0"
QA_PREBUILT="*"
src_unpack() {
if use gtk; then
wget https://download.opensuse.org/repositories/home:/Alexx2000/AppImage/doublecmd-gtk-latest-x86_64.AppImage
else
wget https://download.opensuse.org/repositories/home:/Alexx2000/AppImage/doublecmd-qt-latest-x86_64.AppImage
fi
}
src_install() {
newbin *.AppImage doublecmd-appimage
}

View File

@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>contact@hacktivis.me</email>
<name>Haelwenn (lanodan) Monnier</name>
</maintainer>
<upstream>
<remote-id type="github">stenzek/duckstation</remote-id>
</upstream>

View File

@@ -1 +1,2 @@
DIST ventoy-1.0.97-linux.tar.gz 19964906 BLAKE2B c1f7235838ed5fe55028424dd160d4322b8fe96f99404149cf3c25f00afe06dd9d35970f6cbd2b8f04432e8380b412495eae18b2f02a24d0003c63a644be6315 SHA512 af6d4a0c3c06009de3fd55377656d678ab037cc0b808421269551891502de32605ed3e17012395aa6ed58ca9c74bd52b19ed7fe43eda39a78b2c42cca1cd9b5f
DIST ventoy-1.0.98-linux.tar.gz 19840507 BLAKE2B 4d1f3c6e727c70ff4c1fda7dcf59467b54d9b50edf880170cd69df2fdab995bcee370635b44be091247d5e687c2a2367c57de33b4e48823cbc5bc33b050cdea2 SHA512 40914e5a13e78b72fe677c99cfa68c0bb46fceddc979a7dd1f1a3e2fa30568f3b21250cbf02df59f4a06373a47a4c181d44e46f7f4eb08f413ad6c24cd2a1a65

View File

@@ -6,7 +6,7 @@ EAPI=8
inherit desktop xdg
DESCRIPTION="Creator of bootable USBs, with ability to copy ISOs, persistence storage"
HOMEPAGE="http://www.ventoy.net"
HOMEPAGE="https://www.ventoy.net"
SRC_URI="https://github.com/ventoy/Ventoy/releases/download/v${PV}/ventoy-${PV}-linux.tar.gz"
S="${WORKDIR}"/ventoy-${PV}

View File

@@ -0,0 +1,90 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop xdg
DESCRIPTION="Creator of bootable USBs, with ability to copy ISOs, persistence storage"
HOMEPAGE="https://www.ventoy.net"
SRC_URI="https://github.com/ventoy/Ventoy/releases/download/v${PV}/ventoy-${PV}-linux.tar.gz"
S="${WORKDIR}"/ventoy-${PV}
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
RESTRICT="strip mirror"
DEPEND="
sys-fs/dosfstools
sys-fs/exfat-utils
sys-fs/fuse-exfat
sys-block/parted
"
# sys-fs/fuse-exfat is needed for mount, without it:
# mount: /mnt: unknown filesystem type 'exfat'
QA_PREBUILT="*" # Against "does not respect LDFLAGS"
CARCH="x86_64"
src_prepare() {
# Decompress tools
pushd tool/$CARCH || die
for file in *.xz; do
xzcat "$file" >"${file%.xz}" || die
chmod +x "${file%.xz}" || die
done
# Cleanup .xz crap
rm -fv ./*.xz || die
popd || die
# Apply sanitize patch
eapply -p0 "${FILESDIR}/sanitize.patch"
# Log location
sed -i 's|log\.txt|/var/log/ventoy.log|g' WebUI/static/js/languages.js tool/languages.json || die
# Non-POSIX compliant scripts
sed -i 's|bin/sh|usr/bin/env bash|g' tool/{ventoy_lib.sh,VentoyWorker.sh} || die
# Clean up unused binaries
# Preserving mkexfatfs and mount.exfat-fuse because exfatprogs is incompatible
for binary in xzcat hexdump; do
rm -fv tool/$CARCH/$binary || die
done
default
}
src_install() {
insopts -m0644
insinto /opt/ventoy/boot/
doins boot/*
insinto /opt/ventoy/ventoy/
doins ventoy/*
insopts -m0755
insinto /opt/ventoy/tool/
doins tool/*.{cer,glade,json,sh,xz}
insinto /opt/ventoy/tool/$CARCH/
doins tool/$CARCH/*
insinto /opt/ventoy/
doins ./*.sh plugin WebUI "VentoyGUI.$CARCH"
# Install .desktop
insopts -m0644
insinto /usr/share/pixmaps/
newins WebUI/static/img/VentoyLogo.png ventoy.png
domenu "${FILESDIR}/ventoy.desktop"
# Link system binaries
for binary in xzcat hexdump; do
dosym -r /usr/bin/$binary /opt/ventoy/tool/$CARCH/$binary
done
dobin "${FILESDIR}"/ventoy{,gui,web,plugson,-{,extend-}persistent}
rm "${D}"/opt/ventoy/tool/x86_64/Ventoy2Disk.gtk2 || die
}

View File

@@ -0,0 +1 @@
DIST evdi-1.14.4.tar.gz 88726 BLAKE2B 15aa13c1e6f67f923cf474a7f33bc1b8ce97e87e3ea19d53ae4c4b827581311907c5d98128190c97a530e566595b2ffd46a10450a63a8ecfc5a352d1f3e80f23 SHA512 53354fc9b09870768b54a6ea391dd7c406d372a248623f628334a1fecd433a59a729821b8a8af4ab31d0dca944d330156d88e79af308964c5686798ab20cabf3

View File

@@ -0,0 +1,75 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
inherit linux-mod-r1 python-single-r1
DESCRIPTION="Extensible Virtual Display Interface"
HOMEPAGE="https://github.com/DisplayLink/evdi"
SRC_URI="https://github.com/DisplayLink/evdi/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="python test"
RDEPEND="${PYTHON_DEPS}
x11-libs/libdrm
python? (
$(python_gen_cond_dep '
dev-python/pybind11[${PYTHON_USEDEP}]
test? (
dev-python/pytest-mock[${PYTHON_USEDEP}]
)
')
)
"
DEPEND="${RDEPEND}
sys-kernel/linux-headers
"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RESTRICT="!test? ( test )"
CONFIG_CHECK="~FB_VIRTUAL ~I2C"
PATCHES=(
"${FILESDIR}/${PN}-1.14.4-format-truncation.patch"
)
pkg_setup() {
linux-mod-r1_pkg_setup
use python && python-single-r1_pkg_setup
}
src_compile() {
local modlist=(
"evdi=video:${S}/module"
)
linux-mod-r1_src_compile
emake library
ln -srf "${S}/library/libevdi.so"{".$(ver_cut 1)",} || die
use python && emake pyevdi
}
src_test() {
use python && emake -C pyevdi tests
}
src_install() {
linux-mod-r1_src_install
dolib.so "library/libevdi.so.${PV}"
dosym "libevdi.so.${PV}" "/usr/$(get_libdir)/libevdi.so.$(ver_cut 1)"
dosym "libevdi.so.$(ver_cut 1)" "/usr/$(get_libdir)/libevdi.so"
use python && DESTDIR="${D}" emake -C pyevdi install
}

View File

@@ -0,0 +1,22 @@
diff --git a/library/evdi_lib.c b/library/evdi_lib.c
index ec22b01..8618bc8 100644
--- a/library/evdi_lib.c
+++ b/library/evdi_lib.c
@@ -473,7 +473,8 @@ static bool is_correct_parent_device(const char *dirname, size_t dirname_maxlen,
{
char link_path[PATH_MAX];
- snprintf(link_path, MIN(PATH_MAX - 7, dirname_maxlen), "%s/device", dirname);
+ assert((strnlen(dirname, dirname_maxlen) + 7) < PATH_MAX);
+ snprintf(link_path, sizeof(link_path), "%s/device", dirname);
if (parent_device == NULL)
return access(link_path, F_OK) != 0;
@@ -619,6 +620,7 @@ static enum evdi_device_status evdi_device_to_platform(int device, char *path)
snprintf(path, PATH_MAX,
"/sys/bus/platform/devices/%s", fd_entry->d_name);
+ assert((strnlen(path, PATH_MAX) + 5) < PATH_MAX);
snprintf(card_path, PATH_MAX, "%s/drm/card%d", path, device);
if (path_exists(card_path)) {
status = AVAILABLE;

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>negril.nx+gentoo@gmail.com</email>
<name>Paul Zander</name>
</maintainer>
<upstream>
<remote-id type="github">DisplayLink/evdi</remote-id>
</upstream>
<use>
<flag name="python">Build PyEvdi</flag>
</use>
</pkgmetadata>