ad qtwebsoceksts

This commit is contained in:
Mario Fetka
2026-04-07 08:37:56 +02:00
parent 875a22caf0
commit ba91834731
3 changed files with 392 additions and 0 deletions

View File

@@ -0,0 +1,169 @@
https://bugs.gentoo.org/970962
https://sourceforge.net/p/vice-emu/code/45964/
--- a/src/arch/gtk3/widgets/settings_userport.c
+++ b/src/arch/gtk3/widgets/settings_userport.c
@@ -442,81 +441,0 @@
-#if defined(USE_MPG123) && defined (HAVE_GLOB_H)
-/* FunMP3 path selection widget */
-#include "mainlock.h"
-
-/** \brief Callback for the directory-select dialog
- *
- * \param[in] dialog directory-select dialog
- * \param[in] filename filename (NULL if canceled)
- * \param[in] entry entry box for the filename
- */
-static void funmp3dir_browse_callback(GtkDialog *dialog, gchar *filename, gpointer entry)
-{
- if (filename != NULL) {
- vice_gtk3_resource_entry_set(GTK_WIDGET(entry), filename);
- g_free(filename);
- }
- gtk_widget_destroy(GTK_WIDGET(dialog));
-}
-
-/** \brief Handler for the 'clicked' event of the FunMP3 directory browse button
- *
- * \param[in] button FunMP3 directory browse button (unused)
- * \param[in] entry FunMP3 directory text entry
- */
-static void on_funmp3dir_browse_clicked(GtkWidget *button, gpointer entry)
-{
- GtkWidget *dialog;
-
- mainlock_assert_is_not_vice_thread();
-
- dialog = vice_gtk3_select_directory_dialog("Select FunMP3 directory",
- NULL,
- TRUE,
- NULL,
- funmp3dir_browse_callback,
- entry);
- gtk_widget_show_all(dialog);
-}
-
-/** \brief Create FunMP3 path selection entry widget
- *
- */
-static GtkWidget *create_funmp3dir_entry_widget(void)
-{
- GtkWidget *entry;
- entry = vice_gtk3_resource_entry_new("FunMP3Dir");
- gtk_widget_set_tooltip_text(entry,
- "Select the host directory for MP3 files");
- gtk_widget_set_hexpand(entry, TRUE);
- return entry;
-}
-
-/** \brief Create FunMP3 path selection widget
- *
- */
-static GtkWidget *create_funmp3dir_widget(void)
-{
- GtkWidget *grid;
- GtkWidget *entry;
- GtkWidget *label;
- GtkWidget *browse;
-
- grid = vice_gtk3_grid_new_spaced(8, 0);
-
- label = gtk_label_new("FunMP3 directory");
- gtk_widget_set_halign(label, GTK_ALIGN_START);
- entry = create_funmp3dir_entry_widget();
- browse = gtk_button_new_with_label("Browse ...");
- g_signal_connect_unlocked(browse,
- "clicked",
- G_CALLBACK(on_funmp3dir_browse_clicked),
- (gpointer)entry);
- gtk_grid_attach(GTK_GRID(grid), label, 0, 1, 1, 1);
- gtk_grid_attach(GTK_GRID(grid), entry, 1, 1, 1, 1);
- gtk_grid_attach(GTK_GRID(grid), browse, 2, 1, 1, 1);
-
- gtk_widget_show_all(grid);
- return grid;
-}
-
-#endif /* MPG123 && HAVE_GLOB_H */
@@ -684,0 +604,82 @@
+
+#if defined(USE_MPG123) && defined (HAVE_GLOB_H)
+/* FunMP3 path selection widget */
+#include "mainlock.h"
+
+/** \brief Callback for the directory-select dialog
+ *
+ * \param[in] dialog directory-select dialog
+ * \param[in] filename filename (NULL if canceled)
+ * \param[in] entry entry box for the filename
+ */
+static void funmp3dir_browse_callback(GtkDialog *dialog, gchar *filename, gpointer entry)
+{
+ if (filename != NULL) {
+ vice_gtk3_resource_entry_set(GTK_WIDGET(entry), filename);
+ g_free(filename);
+ }
+ gtk_widget_destroy(GTK_WIDGET(dialog));
+}
+
+/** \brief Handler for the 'clicked' event of the FunMP3 directory browse button
+ *
+ * \param[in] button FunMP3 directory browse button (unused)
+ * \param[in] entry FunMP3 directory text entry
+ */
+static void on_funmp3dir_browse_clicked(GtkWidget *button, gpointer entry)
+{
+ GtkWidget *dialog;
+
+ mainlock_assert_is_not_vice_thread();
+
+ dialog = vice_gtk3_select_directory_dialog("Select FunMP3 directory",
+ NULL,
+ TRUE,
+ NULL,
+ funmp3dir_browse_callback,
+ entry);
+ gtk_widget_show_all(dialog);
+}
+
+/** \brief Create FunMP3 path selection entry widget
+ *
+ */
+static GtkWidget *create_funmp3dir_entry_widget(void)
+{
+ GtkWidget *entry;
+ entry = vice_gtk3_resource_entry_new("FunMP3Dir");
+ gtk_widget_set_tooltip_text(entry,
+ "Select the host directory for MP3 files");
+ gtk_widget_set_hexpand(entry, TRUE);
+ return entry;
+}
+
+/** \brief Create FunMP3 path selection widget
+ *
+ */
+static GtkWidget *create_funmp3dir_widget(void)
+{
+ GtkWidget *grid;
+ GtkWidget *entry;
+ GtkWidget *label;
+ GtkWidget *browse;
+
+ grid = vice_gtk3_grid_new_spaced(8, 0);
+
+ label = gtk_label_new("FunMP3 directory");
+ gtk_widget_set_halign(label, GTK_ALIGN_START);
+ entry = create_funmp3dir_entry_widget();
+ browse = gtk_button_new_with_label("Browse ...");
+ g_signal_connect_unlocked(browse,
+ "clicked",
+ G_CALLBACK(on_funmp3dir_browse_clicked),
+ (gpointer)entry);
+ gtk_grid_attach(GTK_GRID(grid), label, 0, 1, 1, 1);
+ gtk_grid_attach(GTK_GRID(grid), entry, 1, 1, 1, 1);
+ gtk_grid_attach(GTK_GRID(grid), browse, 2, 1, 1, 1);
+
+ gtk_widget_show_all(grid);
+ return grid;
+}
+
+#endif /* MPG123 && HAVE_GLOB_H */

View File

@@ -0,0 +1,205 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools multibuild toolchain-funcs xdg
DESCRIPTION="Versatile Commodore Emulator"
HOMEPAGE="https://vice-emu.sourceforge.io/"
SRC_URI="https://downloads.sourceforge.net/vice-emu/releases/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
IUSE="
alsa curl debug doc ethernet flac gif +gtk headless lame mpg123 ogg
openmp oss parport pci png portaudio pulseaudio sdl usb
"
REQUIRED_USE="|| ( gtk headless sdl )"
RDEPEND="
virtual/zlib:=
app-emulation/opencbm
virtual/libintl
alsa? ( media-libs/alsa-lib )
curl? ( net-misc/curl )
ethernet? (
net-libs/libpcap
sys-libs/libcap
)
flac? ( media-libs/flac:= )
gif? ( media-libs/giflib:= )
gtk? (
>=app-accessibility/at-spi2-core-2.46:2
dev-libs/glib:2
dev-libs/libevdev
media-libs/fontconfig:1.0
media-libs/glew:0=[-egl-only(-)]
media-libs/libglvnd[X]
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3[X]
x11-libs/libX11
x11-libs/pango
)
lame? ( media-sound/lame )
mpg123? ( media-sound/mpg123-base )
ogg? (
media-libs/libogg
media-libs/libvorbis
)
parport? ( sys-libs/libieee1284 )
pci? ( sys-apps/pciutils )
png? ( media-libs/libpng:= )
portaudio? ( media-libs/portaudio )
pulseaudio? ( media-libs/libpulse )
sdl? (
media-libs/libsdl2[video]
media-libs/sdl2-image
)
usb? ( dev-libs/libusb:1 )
"
DEPEND="
${RDEPEND}
x11-base/xorg-proto
"
BDEPEND="
app-alternatives/awk
app-alternatives/lex
app-alternatives/yacc
app-arch/unzip
app-text/dos2unix
dev-embedded/xa
dev-lang/perl
sys-apps/texinfo
sys-devel/gettext
virtual/pkgconfig
doc? ( virtual/texi2dvi )
gtk? ( x11-misc/xdg-utils )
"
PATCHES=(
"${FILESDIR}"/${P}-mpg123-without-curl.patch
)
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
pkg_setup() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
src_prepare() {
default
eautoreconf
# strip the predefined C(XX)FLAGS
sed -Ei 's:(VICE_C(XX)?FLAGS=)"[^$]+":\1:' configure || die
MULTIBUILD_VARIANTS=(
$(usev headless)
$(usev sdl)
$(usev gtk) # build last, prefer its binaries if any duplicates
)
# debug build currently broken without copy sources
multibuild_copy_sources
}
src_configure() {
tc-export AR
multibuild_foreach_variant run_in_build_dir multibuild_src_configure
}
multibuild_src_configure() {
# append ".variant" to [xv]* binaries if building multiple variants
# except for gtk which always uses default names to match *.desktop
local xform
[[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 && ${MULTIBUILD_VARIANT} != gtk ]] &&
xform="/^[xv]/s/\$/.${MULTIBUILD_VARIANT}/"
vice-multi_enable() {
if [[ ${MULTIBUILD_VARIANT} == ${1} ]]; then
echo --enable-${2}
else
echo --disable-${2}
fi
}
local econfargs=(
"${xform+--program-transform-name=${xform}}"
$(vice-multi_enable gtk desktop-files)
$(vice-multi_enable gtk gtk3ui)
$(vice-multi_enable headless headlessui)
$(vice-multi_enable sdl sdl2ui)
$(usex debug $(vice-multi_enable gtk debug-gtk3ui) --disable-debug-gtk3ui)
$(use_enable debug)
$(use_enable doc pdf-docs)
$(use_enable ethernet)
$(use_enable openmp)
$(use_enable parport parsid)
$(usev !usb enable_usbsid=no) # not setup properly in configure.ac atm
$(use_with alsa)
$(use_with curl libcurl)
$(use_with flac)
$(use_with gif)
$(use_with lame)
$(use_with lame static-lame) # disables dlopen, uses shared still
$(use_with mpg123)
$(use_with ogg vorbis)
$(use_with oss)
$(use_with parport libieee1284)
$(use_with png)
$(use_with portaudio)
$(use_with pulseaudio pulse)
$(usex alsa --enable-midi $(use_enable oss midi))
$(usev !pci ac_cv_header_pci_pci_h=no)
--disable-arch
--disable-sdl1ui
--enable-realdevice
ac_cv_lib_ungif_EGifPutLine=no # ensure use giflib, not ungif
)
econf "${econfargs[@]}"
}
src_compile() {
# bug #924116 wrt SHELL
multibuild_foreach_variant run_in_build_dir emake SHELL="${BASH}"
}
src_install() {
# make xdg-icon-resource use ED, theme directory needs to pre-exist
# TODO: check if still needed on bump, handling may change,
# (see https://sourceforge.net/p/vice-emu/bugs/2127/)
dodir /usr/share/icons/hicolor
local -x XDG_UTILS_INSTALL_MODE=system
local -x XDG_DATA_DIRS=${ED}/usr/share
multibuild_foreach_variant run_in_build_dir default
# x64 symlink does not respect --program-transform-name (bug #955032)
if (( ${#MULTIBUILD_VARIANTS[@]} > 1 )); then
use gtk || rm -- "${ED}"/usr/bin/x64 || die
use sdl && dosym x64sc.sdl /usr/bin/x64.sdl
use headless && dosym x64sc.headless /usr/bin/x64.headless
fi
rm -f -- "${ED}"/usr/share/applications/*.cache || die
vice-install_extras() {
docinto html
dodoc doc/html/*.{html,css}
dodoc -r doc/html/images
insinto /usr/share/vim/vimfiles/ftdetect
doins doc/vim/ftdetect/*.vim
insinto /usr/share/vim/vimfiles/syntax
doins doc/vim/syntax/*.vim
}
multibuild_for_best_variant run_in_build_dir vice-install_extras
}

View File

@@ -0,0 +1,18 @@
EAPI=8
inherit cmake
DESCRIPTION="Raspberry Pi Imaging Utility"
HOMEPAGE=https://www.raspberrypi.com/software/
SRC_URI="https://github.com/raspberrypi/rpi-imager/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE=Apache-2.0
SLOT=0
KEYWORDS="amd64 aarch64"
S=$WORKDIR/$P/src
RESTRICT=network-sandbox
DEPEND="
dev-qt/qtbase:6
dev-qt/qtdeclarative:6
dev-qt/qtsvg:6
"