public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Ionen Wolkens" <ionen@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: eclass/
Date: Mon, 21 Apr 2025 02:38:59 +0000 (UTC)	[thread overview]
Message-ID: <1745200369.3f72e677e174de7decb9f3e6f1695d093eddf954.ionen@gentoo> (raw)

commit:     3f72e677e174de7decb9f3e6f1695d093eddf954
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 19 05:18:48 2025 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Apr 21 01:52:49 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f72e677

wine.eclass: new eclass

Trying to keep Wine ebuilds in sync between wine-vanilla, wine-staging,
and wine-proton which each have several ebuilds been giving headaches,
and the addition of arm64 support is not helping.

Goal is to offload only the gritty toolchain and slotting bits, and
leave ebuilds to deal with normal dependencies and configure options.

Could've put these in the eclass too, but it'd likely become messy as
dependencies get added/removed between versions (want to avoid too many
${PV} -gt rules). Also want to avoid these to allow overlays to use
this to package their own variants with more freedom.

Note there is some difference compared to current ebuilds:
- arm64 support using https://github.com/gentoo/gentoo/pull/41650
  as a guideline (not tested myself, pending keywording)
- no support for non-PE builds to simplify and having less to
  test, wine-proton was already doing this to match what upstream
  Proton does
- ^ may be a bit misleading but if USE=-mingw, will still do PE
  builds but using clang (less tested, so +mingw remains default),
  debated USE=clang and dropping USE=mingw instead but that feels
  confusing for other reasons
- drop REQUIRED_USE that prevented USE="wow64 -mingw"
- drop workaround that ensured man pages were installed for
  a pure (non-default) 64bit build (feels not worth it, and
  no longer needed for >=10.2)
- no support for <wine-9 (pre --enable-archs), will likely
  drop these once they start causing problems and not worth
  extra eclass logic
- bit of refactoring that could well be broken

In the future may have the eclass handle extra things like basic tests
too (full testsuite is nightmare), but leaving that out for now.

Closes: https://github.com/gentoo/gentoo/pull/41650
Closes: https://github.com/gentoo/gentoo/pull/41660
Thanks-to: Sasha Finkelstein <fnkl.kernel <AT> gmail.com>
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/wine.eclass | 413 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 413 insertions(+)

diff --git a/eclass/wine.eclass b/eclass/wine.eclass
new file mode 100644
index 000000000000..b82dd469c191
--- /dev/null
+++ b/eclass/wine.eclass
@@ -0,0 +1,413 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: wine.eclass
+# @MAINTAINER:
+# Wine <wine@gentoo.org>
+# @AUTHOR:
+# Ionen Wolkens <ionen@gentoo.org>
+# @SUPPORTED_EAPIS: 8
+# @BLURB: Common functions for app-emuluation/wine-* ebuilds
+# @DESCRIPTION:
+# Given the large amount of Wine ebuilds (and variants) that need
+# duplicated code, this is used to offload the more complex bits
+# (primarily toolchain and slotting) and leave ebuilds to only need
+# to deal with dependencies and configure options like any other.
+#
+# Note to overlays: this can be used to package other variants of
+# Wine, but there is currently no garantee that eclass changes may
+# not break these ebuilds now and then without real warnings
+
+case ${EAPI} in
+	8) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_WINE_ECLASS} ]]; then
+_WINE_ECLASS=1
+
+inherit autotools flag-o-matic multilib prefix toolchain-funcs wrapper
+
+# @ECLASS_VARIABLE: WINE_USEDEP
+# @DESCRIPTION:
+# Meant be used like multilib-build.eclass' MULTILIB_USEDEP.  Handled
+# specially here given Wine ebuilds are not *really* multilib and are
+# abusing abi_x86_* with some specific requirements.
+#
+# TODO: when the *new* wow64 mode (aka USE=wow64) is mature enough to
+# be preferred over abi_x86_32, this should be removed and support for
+# 32bit-only-on-64bit be dropped matching how /no-multilib/ handles it
+readonly WINE_USEDEP="abi_x86_32(-)?,abi_x86_64(-)?"
+
+IUSE="
+	+abi_x86_32 +abi_x86_64 crossdev-mingw custom-cflags
+	+mingw +strip wow64
+"
+REQUIRED_USE="
+	|| ( abi_x86_32 abi_x86_64 arm64 )
+	crossdev-mingw? ( mingw )
+	wow64? ( abi_x86_64 !abi_x86_32 )
+"
+
+BDEPEND="
+	|| (
+		sys-devel/binutils:*
+		llvm-core/lld:*
+	)
+	dev-lang/perl
+	mingw? (
+		!crossdev-mingw? (
+			dev-util/mingw64-toolchain[${WINE_USEDEP}]
+			wow64? ( dev-util/mingw64-toolchain[abi_x86_32] )
+		)
+	)
+	!mingw? (
+		llvm-core/clang:*[${WINE_USEDEP}]
+		strip? ( llvm-core/llvm:* )
+	)
+"
+IDEPEND=">=app-eselect/eselect-wine-2"
+
+# @ECLASS_VARIABLE: WINE_SKIP_INSTALL
+# @DESCRIPTION:
+# Array of files to delete from the installation relative
+# to ${ED}, must be set before running wine_src_install.
+WINE_SKIP_INSTALL=()
+
+# @FUNCTION: wine_pkg_pretend
+# @DESCRIPTION:
+# Verifies if crossdev-mingw is used properly, ignored if
+# ``MINGW_BYPASS`` is set.
+wine_pkg_pretend() {
+	[[ ${MERGE_TYPE} == binary ]] && return
+
+	if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
+		local arches=(
+			$(usev abi_x86_64 x86_64)
+			$(usev abi_x86_32 i686)
+			$(usev wow64 i686)
+			$(usev arm64 aarch64)
+		)
+
+		local mingw
+		for mingw in "${arches[@]/%/-w64-mingw32}"; do
+			if ! type -P ${mingw}-gcc >/dev/null; then
+				eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
+				eerror "yourself by installing sys-devel/crossdev then running:"
+				eerror
+				eerror "    crossdev --target ${mingw}"
+				eerror
+				eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
+				die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
+			fi
+		done
+	fi
+}
+
+# @FUNCTION: wine_src_prepare
+# @DESCRIPTION:
+# Apply various minor adjustments, run eautoreconf, make_requests, and
+# perform a version mismatch sanity check if WINE_GECKO and WINE_MONO
+# are set.
+#
+# If need more than make_requests, it should be either handled in
+# the ebuild or (for users) optionally through portage hooks, e.g.
+#
+# @CODE
+# echo "post_src_prepare() { tools/make_specfiles || die; }" \
+#    > /etc/portage/env/app-emulation/wine-vanilla
+# @CODE
+wine_src_prepare() {
+	default
+
+	if [[ ${WINE_GECKO} && ${WINE_MONO} ]]; then
+		# sanity check, bumping these has a history of oversights
+		local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
+			dlls/appwiz.cpl/addons.c || die)
+
+		if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
+			local gmfatal=
+			has live ${PROPERTIES} && gmfatal=nonfatal
+			${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
+		fi
+	fi
+
+	if tc-is-clang && use mingw; then
+		# -mabi=ms was ignored by <clang:16 then turned error in :17
+		# if used without --target *-windows, then gets used in install
+		# phase despite USE=mingw, drop as a quick fix for now
+		sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die
+	fi
+
+	# ensure .desktop calls this variant + slot
+	sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
+
+	# needed to find wine-mono on prefix
+	hprefixify -w /get_mono_path/ dlls/mscoree/metahost.c
+
+	# always update for patches (including user's wrt #432348)
+	eautoreconf
+	tools/make_requests || die # perl
+}
+
+# @FUNCTION: wine_src_configure
+# @DESCRIPTION:
+# Setup toolchain and run ./configure by passing the ``wineconfargs``
+# array.
+#
+# The following options are handled automatically and do not need
+# to be passed: --prefix (and similar), --enable-archs, --enable-win64
+# --with-mingw, and --with-wine64
+#
+# Not truly supported, but cross toolchain can be customised using
+# CROSSCC, CROSSCC_amd64/x86/arm64, CROSSCFLAGS and CROSSLDFLAGS
+# (based on what wine's configure also recognize, or used to for CC).
+wine_src_configure() {
+	WINE_PREFIX=/usr/lib/${P}
+	WINE_DATADIR=/usr/share/${P}
+	WINE_INCLUDEDIR=/usr/include/${P}
+
+	local conf=(
+		--prefix="${EPREFIX}"${WINE_PREFIX}
+		--datadir="${EPREFIX}"${WINE_DATADIR}
+		--includedir="${EPREFIX}"${WINE_INCLUDEDIR}
+		--libdir="${EPREFIX}"${WINE_PREFIX}
+		--mandir="${EPREFIX}"${WINE_DATADIR}/man
+	)
+
+	# strip-flags due to being generally fragile
+	use custom-cflags || strip-flags
+
+	# longstanding failing to build with lto, filter unconditionally
+	filter-lto
+
+	# may segfault at runtime if used (bug #931329)
+	filter-flags -Wl,--gc-sections
+
+	# avoid gcc-15's c23 default for now (bug #943849)
+	# TODO: verify if still needed and limit to old until cleanup
+	append-cflags -std=gnu17
+
+	# Wine uses many linker tricks that are unlikely to work
+	# with anything but bfd or lld (bug #867097)
+	if ! tc-ld-is-bfd && ! tc-ld-is-lld; then
+		has_version -b sys-devel/binutils &&
+			append-ldflags -fuse-ld=bfd ||
+			append-ldflags -fuse-ld=lld
+		strip-unsupported-flags
+	fi
+
+	if use mingw; then
+		conf+=( --with-mingw )
+
+		use !crossdev-mingw &&
+			! has_version -b 'dev-util/mingw64-toolchain[bin-symlinks]' &&
+			PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+
+		# TODO?: llvm-mingw support if ever packaged and wanted
+		local wcc_amd64=${CROSSCC:-${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}
+		local wcc_x86=${CROSSCC:-${CROSSCC_x86:-i686-w64-mingw32-gcc}}
+		# no mingw64-toolchain ~arm64, but "may" be usable with crossdev
+		# (aarch64- rather than arm64- given it is what Wine searches for)
+		local wcc_arm64=${CROSSCC:-${CROSSCC_arm64:-aarch64-w64-mingw32-gcc}}
+		local -n wcc_test=wcc_$(usex arm64 arm64 $(usex abi_x86_64 amd64 x86))
+	else
+		conf+=( --with-mingw=clang )
+
+		# not building for ${CHOST} so $(tc-getCC) is not quite right, but
+		# *should* support -target *-windows regardless
+		tc-is-clang && local clang=$(tc-getCC) || local clang=clang
+		local wcc_amd64=${CROSSCC:-${CROSSCC_amd64:-${clang}}}
+		local wcc_x86=${CROSSCC:-${CROSSCC_x86:-${clang}}}
+		local wcc_arm64=${CROSSCC:-${CROSSCC_arm64:-${clang}}}
+		local wcc_test="${clang} -target $(usex arm64 aarch64 $(usex abi_x86_64 x86_64 i386))-windows"
+
+		# do not copy from regular LDFLAGS given odds are they all are
+		# incompatible, and difficult to test linking without llvm-mingw
+		: "${CROSSLDFLAGS:= }"
+	fi
+
+	conf+=(
+		ac_cv_prog_x86_64_CC="${wcc_amd64}"
+		ac_cv_prog_i386_CC="${wcc_x86}"
+		ac_cv_prog_aarch64_CC="${wcc_arm64}"
+
+		CROSSCFLAGS="${CROSSCFLAGS:-$(
+			# many hardening options are unlikely to work right
+			filter-flags '-fstack-protector*' #870136
+			filter-flags '-mfunction-return=thunk*' #878849
+
+			# bashrc-mv users often do CFLAGS="${LDFLAGS}" and then
+			# compile-only tests miss stripping unsupported linker flags
+			filter-flags '-Wl,*'
+
+			# -mavx with mingw-gcc has a history of problems and still see
+			# users have issues despite Wine's -mpreferred-stack-boundary=2
+			use mingw && append-cflags -mno-avx
+
+			CC=${wcc_test} test-flags-CC ${CFLAGS:--O2}
+		)}"
+		CROSSLDFLAGS="${CROSSLDFLAGS:-$(
+			# let compiler figure out the right linker for cross
+			filter-flags '-fuse-ld=*'
+
+			CC=${wcc_test} test-flags-CCLD ${LDFLAGS}
+		)}"
+	)
+
+	if use abi_x86_64 && use abi_x86_32 && use !wow64; then
+		# multilib dual build method for "old" wow64 (must do 64 first)
+		local bits
+		for bits in 64 32; do
+		(
+			einfo "Configuring for ${bits}bits in ${WORKDIR}/build${bits} ..."
+
+			mkdir ../build${bits} || die
+			cd ../build${bits} || die
+
+			if (( bits == 64 )); then
+				conf+=( --enable-win64 )
+			else
+				conf+=(
+					--with-wine64=../build64
+					TARGETFLAGS=-m32 # for widl
+				)
+
+				# optional, but prefer over Wine's auto-detect (+#472038)
+				multilib_toolchain_setup x86
+			fi
+
+			ECONF_SOURCE=${S} econf "${conf[@]}" "${wineconfargs[@]}"
+		)
+		done
+	else
+		# new --enable-archs method, or 32bit-only
+		local archs=(
+			$(usev abi_x86_64 x86_64)
+			$(usev wow64 i386) # 32-on-64bit "new" wow64
+			$(usev arm64 aarch64)
+		)
+		conf+=( ${archs:+--enable-archs="${archs[*]}"} )
+
+		econf "${conf[@]}" "${wineconfargs[@]}"
+	fi
+}
+
+# @FUNCTION: wine_src_compile
+# @DESCRIPTION:
+# Handle running emake.
+wine_src_compile() {
+	if use abi_x86_64 && use abi_x86_32 && use !wow64; then
+		emake -C ../build64 # do first
+		emake -C ../build32
+	else
+		emake
+	fi
+}
+
+# @FUNCTION: wine_src_install
+# @DESCRIPTION:
+# Handle running emake install, creating slot wrappers, and
+# stripping binaries built for Windows.
+wine_src_install() {
+	if use abi_x86_64 && use abi_x86_32 && use !wow64; then
+		emake DESTDIR="${D}" -C ../build32 install
+		emake DESTDIR="${D}" -C ../build64 install # do last
+	else
+		emake DESTDIR="${D}" install
+	fi
+
+	if use abi_x86_64 || use arm64; then
+		if ver_test -ge 10.2; then
+			# wine64 was removed, but keep a symlink for old scripts
+			# TODO: can remove this -e guard eventually, only there to
+			# avoid overwriting 9999's wine64 if go into <10.2 commits
+			[[ ! -e ${ED}${WINE_PREFIX}/bin/wine64 ]] &&
+				dosym wine ${WINE_PREFIX}/bin/wine64
+		else
+			# <wine-10.2 did not have a unified wine(1) and could miss
+			# wine64 or wine depending on USE, ensure both are are there
+			if [[ -e ${ED}${WINE_PREFIX}/bin/wine64 && ! -e ${ED}${WINE_PREFIX}/bin/wine ]]; then
+				dosym wine64 ${WINE_PREFIX}/bin/wine
+				dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
+			elif [[ ! -e ${ED}${WINE_PREFIX}/bin/wine64 && -e ${ED}${WINE_PREFIX}/bin/wine ]]; then
+				dosym wine ${WINE_PREFIX}/bin/wine64
+				dosym wine-preloader ${WINE_PREFIX}/bin/wine64-preloader
+			fi
+		fi
+	fi
+
+	# delete unwanted files if requested, not done directly in ebuilds
+	# given must be done after install and before wrappers
+	if (( ${#WINE_SKIP_INSTALL[@]} )); then
+		rm -- "${WINE_SKIP_INSTALL[@]/#/${ED}}" || die
+	fi
+
+	# create variant wrappers for eselect-wine
+	local bin
+	for bin in "${ED}"${WINE_PREFIX}/bin/*; do
+		make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
+	done
+
+	# don't let the package manager try to strip Windows files with
+	# potentially the wrong strip executable and instead handle it here
+	dostrip -x ${WINE_PREFIX}/wine/{x86_64,i386,aarch64}-windows
+
+	if use strip; then
+		ebegin "Stripping Windows binaries"
+		if use mingw; then
+			: "$(usex arm64 aarch64 $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip)"
+			find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
+				-exec ${_} --strip-unneeded {} +
+		else
+			# llvm-strip errors on .a, and CHOST binutils strip could mangle
+			find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(dll\|exe\)' \
+				-exec llvm-strip --strip-unneeded {} +
+		fi
+		eend ${?} || die
+	fi
+}
+
+# @FUNCTION: wine_pkg_postinst
+# @DESCRIPTION:
+# Provide generic warnings about missing 32bit support,
+# and run eselect wine update.
+wine_pkg_postinst() {
+	if use !abi_x86_32 && use !wow64; then
+		ewarn "32bit support is disabled. While 64bit applications themselves will"
+		ewarn "work, be warned that it is not unusual that installers or other helpers"
+		ewarn "will attempt to use 32bit and fail. If do not want full USE=abi_x86_32,"
+		ewarn "note the experimental USE=wow64 can allow 32bit without full multilib."
+	fi
+
+	# difficult to tell what is needed from here, but try to warn anyway
+	if use abi_x86_32 && { use opengl || use vulkan; }; then
+		if has_version 'x11-drivers/nvidia-drivers'; then
+			if has_version 'x11-drivers/nvidia-drivers[-abi_x86_32]'; then
+				ewarn "x11-drivers/nvidia-drivers is installed but is built without"
+				ewarn "USE=abi_x86_32 (ABI_X86=32), hardware acceleration with 32bit"
+				ewarn "applications under ${PN} will likely not be usable."
+				ewarn "Multi-card setups may need this on media-libs/mesa as well."
+			fi
+		elif has_version 'media-libs/mesa[-abi_x86_32]'; then
+			ewarn "media-libs/mesa seems to be in use but is built without"
+			ewarn "USE=abi_x86_32 (ABI_X86=32), hardware acceleration with 32bit"
+			ewarn "applications under ${PN} will likely not be usable."
+		fi
+	fi
+
+	eselect wine update --if-unset || die
+}
+
+# @FUNCTION: wine_pkg_postrm
+# @DESCRIPTION:
+# Run eselect wine update if available.
+wine_pkg_postrm() {
+	if has_version -b app-eselect/eselect-wine; then
+		eselect wine update --if-unset || die
+	fi
+}
+
+fi
+
+EXPORT_FUNCTIONS pkg_pretend src_prepare src_configure src_compile src_install pkg_postinst pkg_postrm


             reply	other threads:[~2025-04-21  2:39 UTC|newest]

Thread overview: 6437+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-21  2:38 Ionen Wolkens [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-05-10 20:04 [gentoo-commits] repo/gentoo:master commit in: eclass/ Sam James
2025-05-10 13:03 Michał Górny
2025-05-10 12:57 Michał Górny
2025-05-10 12:57 Michał Górny
2025-05-10  1:54 Sam James
2025-05-08 12:35 Michał Górny
2025-05-08 12:35 Michał Górny
2025-05-08 12:35 Michał Górny
2025-05-08 12:35 Michał Górny
2025-05-06 17:41 Eli Schwartz
2025-05-05 15:56 Sam James
2025-05-05 15:45 Sam James
2025-05-05 15:32 Sam James
2025-05-03 19:42 Michał Górny
2025-05-03  5:28 Sam James
2025-05-02 16:01 Michał Górny
2025-05-01 11:36 Michał Górny
2025-04-27 22:53 Sam James
2025-04-27 13:17 Ionen Wolkens
2025-04-27 10:52 Ionen Wolkens
2025-04-27  8:27 Ionen Wolkens
2025-04-27  8:27 Ionen Wolkens
2025-04-26 18:09 Sam James
2025-04-26 18:03 Sam James
2025-04-26 17:52 Sam James
2025-04-24 20:44 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:18 Sam James
2025-04-23 15:09 Ulrich Müller
2025-04-23 11:37 Matt Jolly
2025-04-22 11:24 Ionen Wolkens
2025-04-20 11:50 Michał Górny
2025-04-19 19:16 Sam James
2025-04-19 10:28 Michał Górny
2025-04-19  8:37 Hans de Graaff
2025-04-19  1:31 Sam James
2025-04-19  1:31 Sam James
2025-04-17  1:27 Sam James
2025-04-16  2:42 Sam James
2025-04-15 14:24 Michał Górny
2025-04-15 14:24 Michał Górny
2025-04-15 14:24 Michał Górny
2025-04-15 14:24 Michał Górny
2025-04-15 14:24 Michał Górny
2025-04-15 14:24 Michał Górny
2025-04-15 10:15 Michał Górny
2025-04-14 16:07 Sam James
2025-04-13 11:45 Sam James
2025-04-13  9:14 Sam James
2025-04-12 16:34 Sam James
2025-04-12 16:34 Sam James
2025-04-12  8:59 Michał Górny
2025-04-10 14:23 Sam James
2025-04-10  9:28 Sam James
2025-04-10  9:18 Sam James
2025-04-07 20:48 Sam James
2025-04-05 12:24 Michał Górny
2025-04-04 17:08 Sam James
2025-04-02  7:06 Michał Górny
2025-04-02  7:06 Michał Górny
2025-04-02  7:06 Michał Górny
2025-04-02  7:06 Michał Górny
2025-04-02  7:06 Michał Górny
2025-04-02  7:06 Michał Górny
2025-04-02  7:06 Michał Górny
2025-04-02  7:06 Michał Górny
2025-04-01 13:58 Florian Schmaus
2025-03-29 15:58 James Le Cuirot
2025-03-29 10:27 Michał Górny
2025-03-28 15:06 Sam James
2025-03-28  9:24 Nowa Ammerlaan
2025-03-26 22:54 Sam James
2025-03-25  8:15 Sam James
2025-03-24  6:55 Sam James
2025-03-24  6:53 Sam James
2025-03-22 10:43 Michał Górny
2025-03-22  0:52 Sam James
2025-03-17 20:13 Michał Górny
2025-03-14  2:50 Sam James
2025-03-13 18:11 Sam James
2025-03-13 18:02 Sam James
2025-03-13 17:21 Sam James
2025-03-13 13:18 Sam James
2025-03-12 20:02 Sam James
2025-03-12 10:14 Ionen Wolkens
2025-03-11 22:15 Sam James
2025-03-11 14:56 Michał Górny
2025-03-11 13:23 Sam James
2025-03-11 13:23 Sam James
2025-03-11  9:04 Ionen Wolkens
2025-03-10  1:55 Sam James
2025-03-08 16:59 Michał Górny
2025-03-08 14:02 Arthur Zamarin
2025-03-08 14:02 Arthur Zamarin
2025-03-08 14:02 Arthur Zamarin
2025-03-08 14:02 Arthur Zamarin
2025-03-08 14:02 Arthur Zamarin
2025-03-07 18:32 Sam James
2025-03-07  1:25 Sam James
2025-03-07  1:23 Sam James
2025-03-07  1:23 Sam James
2025-03-07  0:58 Sam James
2025-03-04 22:32 Andreas Sturmlechner
2025-03-04 22:32 Andreas Sturmlechner
2025-03-04 22:09 Sam James
2025-03-03 19:27 Sam James
2025-03-03 19:27 Sam James
2025-03-03 17:47 Nowa Ammerlaan
2025-03-03 17:47 Nowa Ammerlaan
2025-03-01 12:58 Michał Górny
2025-02-26 22:05 Andreas Sturmlechner
2025-02-26  8:47 Ionen Wolkens
2025-02-25 16:36 Florian Schmaus
2025-02-25 16:36 Florian Schmaus
2025-02-25 14:03 Michał Górny
2025-02-25  9:16 Matt Jolly
2025-02-22 22:08 Matt Jolly
2025-02-22 15:19 Michał Górny
2025-02-21 11:14 Arthur Zamarin
2025-02-21 11:14 Arthur Zamarin
2025-02-21  7:25 Petr Vaněk
2025-02-17 21:52 Mike Gilbert
2025-02-16 18:41 Mike Gilbert
2025-02-15  9:04 Hans de Graaff
2025-02-15  9:04 Hans de Graaff
2025-02-15  9:04 Hans de Graaff
2025-02-15  7:38 Michał Górny
2025-02-13 17:51 Sam James
2025-02-13 17:18 Ulrich Müller
2025-02-13  8:49 Patrick Lauer
2025-02-11 11:29 Michał Górny
2025-02-11  8:39 Sam James
2025-02-10  6:43 Sam James
2025-02-09 19:13 Andreas Sturmlechner
2025-02-09 19:13 Andreas Sturmlechner
2025-02-09 19:13 Andreas Sturmlechner
2025-02-08 11:51 Michał Górny
2025-02-07 18:33 Sam James
2025-02-07 18:04 Sam James
2025-02-06 16:40 Sam James
2025-02-05 20:37 Sam James
2025-02-01 13:14 Michał Górny
2025-02-01  0:40 Ionen Wolkens
2025-01-31 21:51 Michał Górny
2025-01-31 21:51 Michał Górny
2025-01-30  1:31 Sam James
2025-01-29 23:22 Matt Jolly
2025-01-28 12:15 Sam James
2025-01-28  7:22 Sam James
2025-01-25 13:33 Michał Górny
2025-01-22 19:15 Michał Górny
2025-01-22 19:15 Michał Górny
2025-01-21 23:13 Sam James
2025-01-20  9:44 Petr Vaněk
2025-01-20  9:44 Petr Vaněk
2025-01-19  1:16 Sam James
2025-01-18 23:51 Sam James
2025-01-18 23:51 Sam James
2025-01-18 23:51 Sam James
2025-01-18 15:09 Michał Górny
2025-01-18  8:21 Michał Górny
2025-01-16 14:06 Michał Górny
2025-01-16  8:21 Sam James
2025-01-15 19:38 Sam James
2025-01-15 14:39 Ulrich Müller
2025-01-14 17:07 Maciej Barć
2025-01-14  4:53 Sam James
2025-01-11 18:12 Michał Górny
2025-01-11  8:10 Arthur Zamarin
2025-01-10 16:44 Nowa Ammerlaan
2025-01-10 13:15 Michał Górny
2025-01-08  6:33 Joonas Niilola
2025-01-08  2:18 Ionen Wolkens
2025-01-07 11:34 Miroslav Šulc
2025-01-06 20:25 Nowa Ammerlaan
2025-01-06 20:25 Nowa Ammerlaan
2025-01-06 20:25 Nowa Ammerlaan
2025-01-06 14:37 Nowa Ammerlaan
2025-01-05 13:39 Nowa Ammerlaan
2025-01-05 13:39 Nowa Ammerlaan
2025-01-04 21:34 Sam James
2025-01-04 21:34 Sam James
2025-01-04 15:28 Michał Górny
2025-01-04 15:28 Michał Górny
2025-01-03 17:54 James Le Cuirot
2025-01-03  0:59 Sam James
2025-01-02 23:34 Sam James
2025-01-02 23:32 Sam James
2025-01-02 18:33 Sam James
2025-01-02 17:08 Michał Górny
2025-01-02 17:08 Michał Górny
2025-01-02 17:08 Michał Górny
2025-01-01 15:45 Miroslav Šulc
2025-01-01 10:06 James Le Cuirot
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-30 11:35 Michał Górny
2024-12-29  9:22 Ulrich Müller
2024-12-28 19:43 Alfredo Tupone
2024-12-28 14:51 Sam James
2024-12-27 21:25 Michał Górny
2024-12-26 10:59 Sam James
2024-12-25 15:08 Hans de Graaff
2024-12-23 17:10 Andreas Sturmlechner
2024-12-22 19:41 Sam James
2024-12-22  3:20 Matt Jolly
2024-12-22  1:30 Sam James
2024-12-21 10:28 Michał Górny
2024-12-18  3:00 Matt Turner
2024-12-18  3:00 Matt Turner
2024-12-18  2:46 Sam James
2024-12-17 22:14 Andreas Sturmlechner
2024-12-17 21:44 Andreas Sturmlechner
2024-12-17 17:34 Sam James
2024-12-17 17:14 Sam James
2024-12-16 18:45 Ulrich Müller
2024-12-16 18:45 Ulrich Müller
2024-12-16 15:17 Sam James
2024-12-16  5:57 Michał Górny
2024-12-15 12:48 Sam James
2024-12-15  9:47 Sam James
2024-12-15  3:08 Sam James
2024-12-14 18:43 Sam James
2024-12-14 16:33 Sam James
2024-12-14 12:47 Sam James
2024-12-13 13:11 Hans de Graaff
2024-12-13 10:02 Florian Schmaus
2024-12-12 17:03 Florian Schmaus
2024-12-12 17:03 Florian Schmaus
2024-12-12 17:03 Florian Schmaus
2024-12-12  7:47 Sam James
2024-12-12  7:47 Sam James
2024-12-12  7:47 Sam James
2024-12-11 11:52 Ionen Wolkens
2024-12-11 11:52 Ionen Wolkens
2024-12-11 11:52 Ionen Wolkens
2024-12-10  5:21 Ionen Wolkens
2024-12-09 18:49 Ulrich Müller
2024-12-08 23:34 Matt Jolly
2024-12-08 23:34 Matt Jolly
2024-12-08  1:11 Sam James
2024-12-07 23:23 Sam James
2024-12-06 21:55 Sam James
2024-12-06 11:33 Nowa Ammerlaan
2024-12-06  7:44 Miroslav Šulc
2024-12-06  7:43 Miroslav Šulc
2024-12-06  7:43 Miroslav Šulc
2024-12-06  5:10 Ionen Wolkens
2024-12-04 11:34 Matt Jolly
2024-12-04 11:33 Matt Jolly
2024-12-02  8:46 Matt Jolly
2024-12-02  8:46 Matt Jolly
2024-12-01 12:12 Sam James
2024-12-01  9:25 Sam James
2024-12-01  8:53 Sam James
2024-11-30  7:17 Michał Górny
2024-11-30  7:17 Michał Górny
2024-11-30  5:10 Sam James
2024-11-30  5:10 Sam James
2024-11-29 21:18 Eli Schwartz
2024-11-29 21:18 Eli Schwartz
2024-11-29 21:18 Eli Schwartz
2024-11-26 17:28 Florian Schmaus
2024-11-26  1:45 Maciej Barć
2024-11-26  1:45 Maciej Barć
2024-11-24 19:01 Michał Górny
2024-11-23 13:15 Michał Górny
2024-11-22 19:25 Sam James
2024-11-20 12:37 Sam James
2024-11-20 12:20 Sam James
2024-11-20 12:15 Sam James
2024-11-20 12:05 Sam James
2024-11-19 15:01 Sam James
2024-11-19 14:50 Sam James
2024-11-18 19:32 Michał Górny
2024-11-18 16:44 Mike Gilbert
2024-11-18 11:11 Sam James
2024-11-18  9:28 Sam James
2024-11-17  5:27 Matt Jolly
2024-11-17  5:27 Matt Jolly
2024-11-14  0:36 Sam James
2024-11-13 19:22 Sam James
2024-11-13 18:21 Michał Górny
2024-11-13  6:16 Matt Jolly
2024-11-12 19:19 Sam James
2024-11-12  9:09 Matt Jolly
2024-11-12  8:09 Andrew Ammerlaan
2024-11-11 23:48 Matt Jolly
2024-11-11 23:48 Matt Jolly
2024-11-11 19:28 Sam James
2024-11-11  8:53 Matt Jolly
2024-11-11  8:53 Matt Jolly
2024-11-10 17:24 Sam James
2024-11-09 10:50 Matt Jolly
2024-11-09  9:02 Matt Jolly
2024-11-09  7:31 Matt Jolly
2024-11-09  7:21 Sam James
2024-11-09  6:26 Matt Jolly
2024-11-09  6:26 Matt Jolly
2024-11-09  6:26 Matt Jolly
2024-11-07  5:28 Michał Górny
2024-11-07  5:28 Michał Górny
2024-11-06 11:27 Sam James
2024-11-05 10:47 Florian Schmaus
2024-11-05 10:47 Florian Schmaus
2024-11-03  9:35 Sam James
2024-11-01  9:03 Michał Górny
2024-10-30 20:50 Sam James
2024-10-30 11:43 Miroslav Šulc
2024-10-30  2:27 Sam James
2024-10-29 23:22 Maciej Barć
2024-10-29 23:22 Maciej Barć
2024-10-29 13:01 Michał Górny
2024-10-23 12:18 Michał Górny
2024-10-21  9:32 Sam James
2024-10-19 13:47 Ionen Wolkens
2024-10-18 17:54 Ulrich Müller
2024-10-18 17:54 Ulrich Müller
2024-10-18 17:54 Ulrich Müller
2024-10-16 16:13 Andreas Sturmlechner
2024-10-16  4:54 Michał Górny
2024-10-16  4:54 Michał Górny
2024-10-16  4:54 Michał Górny
2024-10-15 13:13 Michał Górny
2024-10-15  7:17 Michał Górny
2024-10-10 14:47 Andrew Ammerlaan
2024-10-09 11:45 Michał Górny
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:32 David Seifert
2024-10-08 15:29 Ulrich Müller
2024-10-08 15:29 Ulrich Müller
2024-10-08  7:09 Florian Schmaus
2024-10-07  4:13 Sam James
2024-10-07  4:13 Sam James
2024-10-07  4:13 Sam James
2024-10-07  4:13 Sam James
2024-10-07  2:40 Sam James
2024-10-04 11:49 Sam James
2024-10-03  4:02 Sam James
2024-10-03  3:43 Sam James
2024-10-02  9:01 Miroslav Šulc
2024-10-02  9:01 Miroslav Šulc
2024-10-02  9:01 Miroslav Šulc
2024-10-02  9:01 Miroslav Šulc
2024-10-02  0:57 Sam James
2024-10-01 23:13 Eli Schwartz
2024-10-01 23:13 Eli Schwartz
2024-10-01 20:40 James Le Cuirot
2024-10-01 19:38 Eli Schwartz
2024-10-01 10:18 Sam James
2024-10-01  7:47 Sam James
2024-10-01  6:59 Sam James
2024-10-01  2:16 Sam James
2024-10-01  2:14 Sam James
2024-10-01  2:06 Sam James
2024-10-01  1:58 Sam James
2024-10-01  1:58 Sam James
2024-10-01  1:46 Sam James
2024-10-01  1:11 Sam James
2024-09-30  5:57 Sam James
2024-09-30  3:03 Sam James
2024-09-30  3:02 Sam James
2024-09-30  2:20 Sam James
2024-09-30  2:15 Sam James
2024-09-30  2:15 Sam James
2024-09-30  2:02 Sam James
2024-09-30  2:02 Sam James
2024-09-30  2:02 Sam James
2024-09-30  1:52 Sam James
2024-09-30  1:52 Sam James
2024-09-30  1:52 Sam James
2024-09-30  1:52 Sam James
2024-09-29 11:28 Sam James
2024-09-29 11:22 Sam James
2024-09-29 11:22 Sam James
2024-09-29 11:22 Sam James
2024-09-29  1:13 Sam James
2024-09-29  1:13 Sam James
2024-09-29  1:07 Sam James
2024-09-29  1:07 Sam James
2024-09-29  0:18 Sam James
2024-09-29  0:18 Sam James
2024-09-29  0:18 Sam James
2024-09-25 19:29 Eli Schwartz
2024-09-25 11:12 Sam James
2024-09-25 11:12 Sam James
2024-09-25 11:12 Sam James
2024-09-25  4:51 Ulrich Müller
2024-09-25  4:39 Michał Górny
2024-09-24 18:02 Michał Górny
2024-09-24 18:02 Michał Górny
2024-09-24 11:52 Sam James
2024-09-24  6:41 Michał Górny
2024-09-23 15:11 Michał Górny
2024-09-23 12:06 Ulrich Müller
2024-09-19 22:57 Sam James
2024-09-18 15:51 Sam James
2024-09-17 12:13 Michał Górny
2024-09-17 11:58 Andrew Ammerlaan
2024-09-12 22:08 Sam James
2024-09-11 22:21 Sam James
2024-09-10 19:11 Miroslav Šulc
2024-09-10 12:58 Michał Górny
2024-09-10  8:54 Michał Górny
2024-09-10  6:46 Miroslav Šulc
2024-09-09 18:20 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-08 18:21 Sam James
2024-09-07 18:23 Sam James
2024-09-07 18:21 Sam James
2024-09-05 12:10 Sam James
2024-09-04 20:33 Michał Górny
2024-09-03  9:40 Sam James
2024-09-03  8:58 Sam James
2024-09-03  4:22 Ionen Wolkens
2024-09-01 11:05 Sam James
2024-09-01 11:05 Sam James
2024-09-01 11:05 Sam James
2024-09-01 11:05 Sam James
2024-09-01  9:59 Miroslav Šulc
2024-09-01  9:59 Miroslav Šulc
2024-09-01  9:59 Miroslav Šulc
2024-09-01  9:59 Miroslav Šulc
2024-08-31  8:33 Michał Górny
2024-08-30 19:43 Andrew Ammerlaan
2024-08-30 19:10 Andrew Ammerlaan
2024-08-26 13:04 Ulrich Müller
2024-08-26 13:04 Ulrich Müller
2024-08-26 13:04 Ulrich Müller
2024-08-26 13:04 Ulrich Müller
2024-08-26  6:34 Andreas Sturmlechner
2024-08-25 15:37 Andrew Ammerlaan
2024-08-25  0:49 Jason Zaman
2024-08-23 19:25 Michał Górny
2024-08-23 19:25 Michał Górny
2024-08-22 17:00 Andreas Sturmlechner
2024-08-22 11:23 Michał Górny
2024-08-21 21:51 Andreas Sturmlechner
2024-08-20 20:17 Mike Gilbert
2024-08-20 20:07 Mike Gilbert
2024-08-19 18:17 Robin H. Johnson
2024-08-19  6:02 Viorel Munteanu
2024-08-18 17:44 Arsen Arsenović
2024-08-18 17:44 Arsen Arsenović
2024-08-18 17:44 Arsen Arsenović
2024-08-16 17:21 Sam James
2024-08-16 17:21 Sam James
2024-08-16 17:21 Sam James
2024-08-16 17:21 Sam James
2024-08-16 17:21 Sam James
2024-08-16 17:21 Sam James
2024-08-16 17:21 Sam James
2024-08-16 17:21 Sam James
2024-08-16 10:15 Arthur Zamarin
2024-08-16  5:55 Arthur Zamarin
2024-08-15 21:24 Sam James
2024-08-15 21:18 Sam James
2024-08-15 20:01 Michał Górny
2024-08-15 17:48 Andreas Sturmlechner
2024-08-15 17:48 Andreas Sturmlechner
2024-08-15 17:48 Andreas Sturmlechner
2024-08-15 17:48 Andreas Sturmlechner
2024-08-15 17:48 Andreas Sturmlechner
2024-08-15 17:48 Andreas Sturmlechner
2024-08-15 17:48 Andreas Sturmlechner
2024-08-15 17:48 Andreas Sturmlechner
2024-08-12 19:02 Ulrich Müller
2024-08-12 19:02 Ulrich Müller
2024-08-12  1:19 Sam James
2024-08-12  1:19 Sam James
2024-08-12  1:19 Sam James
2024-08-12  1:19 Sam James
2024-08-11 20:56 Sam James
2024-08-10 17:24 Sam James
2024-08-10 14:06 Fabian Groffen
2024-08-09 15:50 Andrew Ammerlaan
2024-08-09 14:30 Sam James
2024-08-09 11:50 Sam James
2024-08-09 11:39 Sam James
2024-08-08 19:26 Michał Górny
2024-08-08 16:46 Andrew Ammerlaan
2024-08-08 14:38 James Le Cuirot
2024-08-08 10:49 Sam James
2024-08-08 10:30 Sam James
2024-08-08 10:30 Sam James
2024-08-08 10:05 Sam James
2024-08-08  9:00 James Le Cuirot
2024-08-07 15:13 Sam James
2024-08-07  9:41 Sam James
2024-08-07  9:25 Sam James
2024-08-07  9:21 Sam James
2024-08-07  8:58 Andrew Ammerlaan
2024-08-07  8:58 Andrew Ammerlaan
2024-08-07  3:03 Sam James
2024-08-06 16:39 Florian Schmaus
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  8:47 Michał Górny
2024-08-06  1:46 Sam James
2024-08-04  8:28 Sam James
2024-08-04  7:30 Andrew Ammerlaan
2024-08-04  7:27 Sam James
2024-08-01 20:20 Michał Górny
2024-08-01  7:32 Miroslav Šulc
2024-07-31  0:02 Sam James
2024-07-28 17:40 Florian Schmaus
2024-07-27 22:00 Andrew Ammerlaan
2024-07-27  7:27 Michał Górny
2024-07-26 17:18 Ulrich Müller
2024-07-26  9:00 Miroslav Šulc
2024-07-24 17:18 Andrew Ammerlaan
2024-07-24 17:18 Andrew Ammerlaan
2024-07-24 17:18 Andrew Ammerlaan
2024-07-24  8:58 Florian Schmaus
2024-07-24  8:58 Florian Schmaus
2024-07-23 14:13 Michał Górny
2024-07-23 14:07 Michał Górny
2024-07-23 14:07 Michał Górny
2024-07-23 14:07 Michał Górny
2024-07-23 10:03 Miroslav Šulc
2024-07-22 15:09 Michał Górny
2024-07-22 15:09 Michał Górny
2024-07-22 15:09 Michał Górny
2024-07-21 15:45 Andrew Ammerlaan
2024-07-21 15:14 Andrew Ammerlaan
2024-07-21 13:31 Andrew Ammerlaan
2024-07-21 13:31 Andrew Ammerlaan
2024-07-21 13:31 Andrew Ammerlaan
2024-07-20 12:09 Ulrich Müller
2024-07-18 16:15 Michał Górny
2024-07-16  9:16 James Le Cuirot
2024-07-16  9:16 James Le Cuirot
2024-07-16  9:16 James Le Cuirot
2024-07-16  9:16 James Le Cuirot
2024-07-16  9:16 James Le Cuirot
2024-07-16  9:16 James Le Cuirot
2024-07-16  9:16 James Le Cuirot
2024-07-15 19:18 Andrew Ammerlaan
2024-07-15 19:18 Andrew Ammerlaan
2024-07-15 19:18 Andrew Ammerlaan
2024-07-15 19:18 Andrew Ammerlaan
2024-07-15 19:18 Andrew Ammerlaan
2024-07-15  7:17 David Seifert
2024-07-15  7:17 David Seifert
2024-07-15  7:17 David Seifert
2024-07-14 17:45 Florian Schmaus
2024-07-14 17:45 Florian Schmaus
2024-07-13 14:14 Michał Górny
2024-07-13  7:46 Michał Górny
2024-07-12 17:43 Ulrich Müller
2024-07-12  7:38 Sam James
2024-07-12  6:27 Sam James
2024-07-11 20:54 Ulrich Müller
2024-07-11 20:54 Ulrich Müller
2024-07-11 14:35 Michał Górny
2024-07-09 16:44 Ulrich Müller
2024-07-08 10:03 Ulrich Müller
2024-07-08 10:03 Ulrich Müller
2024-07-08 10:03 Ulrich Müller
2024-07-08 10:03 Ulrich Müller
2024-07-07  6:45 Matthew Smith
2024-07-06 11:19 Michał Górny
2024-07-05 20:50 Luca Barbato
2024-07-05 11:03 Arthur Zamarin
2024-07-05 11:03 Arthur Zamarin
2024-07-05 11:03 Arthur Zamarin
2024-07-03  5:30 Joonas Niilola
2024-07-03  0:59 Sam James
2024-07-03  0:54 Sam James
2024-07-02 17:49 Sam James
2024-06-30 18:27 Sam James
2024-06-29  8:39 Andrew Ammerlaan
2024-06-29  8:39 Andrew Ammerlaan
2024-06-29  8:39 Andrew Ammerlaan
2024-06-28  8:23 Miroslav Šulc
2024-06-27  7:33 Andrew Ammerlaan
2024-06-26  6:24 Florian Schmaus
2024-06-24 11:58 Ulrich Müller
2024-06-23 17:33 Michał Górny
2024-06-23  1:00 Ionen Wolkens
2024-06-20  9:57 Sam James
2024-06-20  7:29 Florian Schmaus
2024-06-20  7:29 Florian Schmaus
2024-06-19  3:16 Andreas K. Hüttel
2024-06-17 17:13 Andreas Sturmlechner
2024-06-17  9:39 James Le Cuirot
2024-06-17  0:53 Sam James
2024-06-15 11:01 Michał Górny
2024-06-15  7:58 Sam James
2024-06-14 12:26 Michał Górny
2024-06-14 12:26 Michał Górny
2024-06-14 12:26 Michał Górny
2024-06-14 12:26 Michał Górny
2024-06-14 12:26 Michał Górny
2024-06-14 12:26 Michał Górny
2024-06-14 12:26 Michał Górny
2024-06-14 12:26 Michał Górny
2024-06-14 12:19 Miroslav Šulc
2024-06-14 10:00 Miroslav Šulc
2024-06-14 10:00 Miroslav Šulc
2024-06-14 10:00 Miroslav Šulc
2024-06-14 10:00 Miroslav Šulc
2024-06-14 10:00 Miroslav Šulc
2024-06-13 20:43 Andreas Sturmlechner
2024-06-13 18:35 Ulrich Müller
2024-06-13 18:35 Ulrich Müller
2024-06-13 13:21 Miroslav Šulc
2024-06-12 17:13 James Le Cuirot
2024-06-12 16:36 Patrick Lauer
2024-06-12 14:27 Patrick Lauer
2024-06-12 13:20 James Le Cuirot
2024-06-12 13:20 James Le Cuirot
2024-06-12 10:24 Arthur Zamarin
2024-06-10 14:23 Ulrich Müller
2024-06-10 14:23 Ulrich Müller
2024-06-10 12:46 Joonas Niilola
2024-06-08 15:47 Michał Górny
2024-06-08 10:29 Michał Górny
2024-06-08  3:53 Ulrich Müller
2024-06-08  3:53 Ulrich Müller
2024-06-06 20:37 Mike Gilbert
2024-06-02  8:22 Ionen Wolkens
2024-06-01 21:34 Alfredo Tupone
2024-06-01 21:11 Alfredo Tupone
2024-06-01  6:19 Hans de Graaff
2024-06-01  6:19 Hans de Graaff
2024-06-01  6:19 Hans de Graaff
2024-05-31 12:42 Michał Górny
2024-05-26  8:18 Miroslav Šulc
2024-05-25  8:35 Michał Górny
2024-05-25  5:55 Sam James
2024-05-22  1:44 Sam James
2024-05-21  8:58 Florian Schmaus
2024-05-21  8:58 Florian Schmaus
2024-05-21  8:58 Florian Schmaus
2024-05-20 17:02 Michał Górny
2024-05-20 17:02 Michał Górny
2024-05-20 17:02 Michał Górny
2024-05-20 17:02 Michał Górny
2024-05-20 17:02 Michał Górny
2024-05-20 17:02 Michał Górny
2024-05-20 17:02 Michał Górny
2024-05-20 17:02 Michał Górny
2024-05-18 13:25 Michał Górny
2024-05-18  3:50 Benda XU
2024-05-17 23:05 Ionen Wolkens
2024-05-17 23:05 Ionen Wolkens
2024-05-17 12:07 Andrew Ammerlaan
2024-05-17 12:07 Andrew Ammerlaan
2024-05-17 12:07 Andrew Ammerlaan
2024-05-17  6:25 Michał Górny
2024-05-15 18:02 Michał Górny
2024-05-15 14:20 Michał Górny
2024-05-14  9:19 Florian Schmaus
2024-05-14  8:20 Florian Schmaus
2024-05-13 21:53 Sam James
2024-05-13 13:22 Michael Orlitzky
2024-05-13 13:22 Michael Orlitzky
2024-05-13 13:22 Michael Orlitzky
2024-05-13 13:22 Michael Orlitzky
2024-05-13  8:35 Florian Schmaus
2024-05-13  7:07 Miroslav Šulc
2024-05-12  4:51 Sam James
2024-05-11 13:39 Michał Górny
2024-05-11  6:44 Joonas Niilola
2024-05-11  6:21 Hans de Graaff
2024-05-11  1:58 Sam James
2024-05-11  0:55 Sam James
2024-05-10 17:28 Sam James
2024-05-10 17:28 Sam James
2024-05-10 17:28 Sam James
2024-05-10 17:28 Sam James
2024-05-10 17:28 Sam James
2024-05-09 19:54 Conrad Kostecki
2024-05-09 19:54 Conrad Kostecki
2024-05-08  8:06 Ulrich Müller
2024-05-07  7:57 Andreas K. Hüttel
2024-05-06 17:28 Ulrich Müller
2024-05-06 17:28 Ulrich Müller
2024-05-06 17:11 Ionen Wolkens
2024-05-06  4:39 Sam James
2024-05-04 19:57 Michał Górny
2024-05-04 19:57 Michał Górny
2024-05-03 11:43 Sam James
2024-05-03 11:43 Sam James
2024-05-03 11:43 Sam James
2024-05-03  2:48 Sam James
2024-05-03  2:48 Sam James
2024-05-02 17:44 Florian Schmaus
2024-05-02  0:24 Sam James
2024-05-01  3:02 Sam James
2024-05-01  0:27 Sam James
2024-05-01  0:27 Sam James
2024-04-30 19:25 Alfredo Tupone
2024-04-30 19:19 Alfredo Tupone
2024-04-30 18:34 Michał Górny
2024-04-30 18:34 Michał Górny
2024-04-30  5:58 Sam James
2024-04-29 17:31 Florian Schmaus
2024-04-28 15:54 Michał Górny
2024-04-28  9:47 Hans de Graaff
2024-04-27 10:42 Michał Górny
2024-04-25 20:43 Andreas Sturmlechner
2024-04-25 20:43 Andreas Sturmlechner
2024-04-23 21:43 Sam James
2024-04-22  3:14 Sam James
2024-04-20 14:20 Ionen Wolkens
2024-04-20 14:20 Ionen Wolkens
2024-04-20  9:41 Michał Górny
2024-04-20  5:40 Michał Górny
2024-04-19 23:11 Mike Gilbert
2024-04-19 18:46 Michał Górny
2024-04-19 18:46 Michał Górny
2024-04-17 23:34 Sam James
2024-04-16  1:40 Sam James
2024-04-16  1:40 Sam James
2024-04-16  1:40 Sam James
2024-04-13 20:03 Miroslav Šulc
2024-04-13 18:41 Sam James
2024-04-13 18:32 Ulrich Müller
2024-04-11  7:48 Miroslav Šulc
2024-04-10 17:56 Ulrich Müller
2024-04-10 11:10 Michał Górny
2024-04-10  8:11 Miroslav Šulc
2024-04-09 20:17 Ulrich Müller
2024-04-08  7:15 Miroslav Šulc
2024-04-06 13:44 Michał Górny
2024-04-06  9:13 Michał Górny
2024-04-05 16:06 Florian Schmaus
2024-04-05  9:45 Hans de Graaff
2024-04-04 17:33 Ulrich Müller
2024-04-04 17:33 Ulrich Müller
2024-04-04  8:18 Florian Schmaus
2024-04-04  1:07 Sam James
2024-04-04  1:07 Sam James
2024-04-03 17:38 Florian Schmaus
2024-04-03 17:38 Florian Schmaus
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-04-01  9:40 Michał Górny
2024-03-30 10:27 Michał Górny
2024-03-29 18:47 Sam James
2024-03-24 17:47 Sam James
2024-03-24 14:05 Sam James
2024-03-24  9:32 Sam James
2024-03-24  9:09 Sam James
2024-03-23 20:19 Sam James
2024-03-23 19:01 Sam James
2024-03-23 17:04 Sam James
2024-03-23 17:03 Michał Górny
2024-03-23 16:05 Sam James
2024-03-23 15:43 Sam James
2024-03-23 15:43 Sam James
2024-03-23 15:42 Sam James
2024-03-23 15:42 Sam James
2024-03-23 15:42 Sam James
2024-03-23 15:42 Sam James
2024-03-23 14:52 Sam James
2024-03-23 14:49 Sam James
2024-03-23 14:49 Sam James
2024-03-23 14:35 Arthur Zamarin
2024-03-23 10:25 Michał Górny
2024-03-23  8:28 Arthur Zamarin
2024-03-23  8:28 Arthur Zamarin
2024-03-19 14:12 Florian Schmaus
2024-03-18 13:02 Sam James
2024-03-17  9:18 Andreas K. Hüttel
2024-03-16 16:25 Michał Górny
2024-03-16  4:44 Sam James
2024-03-16  4:44 Sam James
2024-03-15 20:45 Sam James
2024-03-12  5:13 Michał Górny
2024-03-12  0:38 Mike Gilbert
2024-03-12  0:34 Mike Gilbert
2024-03-11 23:05 Andreas K. Hüttel
2024-03-11 19:20 Sam James
2024-03-10 21:10 Miroslav Šulc
2024-03-10 21:10 Miroslav Šulc
2024-03-09 15:52 Michał Górny
2024-03-08  5:40 Michał Górny
2024-03-08  5:40 Michał Górny
2024-03-08  5:40 Michał Górny
2024-03-08  5:40 Michał Górny
2024-03-08  5:40 Michał Górny
2024-03-08  5:40 Michał Górny
2024-03-08  5:40 Michał Górny
2024-03-07 18:04 Sam James
2024-03-06 17:03 Michał Górny
2024-03-02 13:24 Michał Górny
2024-03-01 20:50 Sam James
2024-03-01 19:25 Sam James
2024-03-01 19:25 Sam James
2024-03-01 19:25 Sam James
2024-02-28 20:40 Michał Górny
2024-02-28 13:56 Andreas Sturmlechner
2024-02-28 13:56 Andreas Sturmlechner
2024-02-27 23:54 Sam James
2024-02-27 23:54 Sam James
2024-02-24 14:54 Michał Górny
2024-02-24 12:57 Jakov Smolić
2024-02-23  7:46 Sam James
2024-02-22  4:23 Michał Górny
2024-02-19  5:08 Sam James
2024-02-19  5:06 Sam James
2024-02-18 20:22 Michał Górny
2024-02-18 13:23 Michał Górny
2024-02-18 13:23 Michał Górny
2024-02-18 13:23 Michał Górny
2024-02-18 13:23 Michał Górny
2024-02-12 16:25 Sam James
2024-02-11 12:11 Andrew Ammerlaan
2024-02-11 12:11 Andrew Ammerlaan
2024-02-11 12:11 Andrew Ammerlaan
2024-02-10 17:27 Michał Górny
2024-02-10 16:24 Maciej Barć
2024-02-10 16:24 Maciej Barć
2024-02-10 16:24 Maciej Barć
2024-02-10 16:24 Maciej Barć
2024-02-10 16:24 Maciej Barć
2024-02-10 16:24 Maciej Barć
2024-02-10 16:24 Maciej Barć
2024-02-07 15:10 Andreas Sturmlechner
2024-02-06  3:07 Michał Górny
2024-02-06  3:07 Michał Górny
2024-02-05  0:20 Sam James
2024-02-03 14:07 Sam James
2024-02-02  6:28 Andrew Ammerlaan
2024-02-01 23:52 Sam James
2024-02-01 23:52 Sam James
2024-02-01 19:22 Sam James
2024-01-31 13:59 Michał Górny
2024-01-30 21:21 Michał Górny
2024-01-30 11:28 Florian Schmaus
2024-01-30 11:09 Andrew Ammerlaan
2024-01-27 20:33 Michał Górny
2024-01-27 17:18 Sam James
2024-01-24 15:57 Michael Orlitzky
2024-01-24 14:35 Andrew Ammerlaan
2024-01-24 11:44 Michał Górny
2024-01-23  6:00 Sam James
2024-01-23  6:00 Sam James
2024-01-23  5:32 Sam James
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-22 11:29 Michael Orlitzky
2024-01-20 21:22 Conrad Kostecki
2024-01-20 10:09 Florian Schmaus
2024-01-19 12:44 Miroslav Šulc
2024-01-19 12:44 Miroslav Šulc
2024-01-19 12:44 Miroslav Šulc
2024-01-19  9:51 罗百科
2024-01-17  7:41 Michał Górny
2024-01-16  9:02 Andrew Ammerlaan
2024-01-13 17:49 Michał Górny
2024-01-13 17:49 Michał Górny
2024-01-12 11:46 Sam James
2024-01-12 11:46 Sam James
2024-01-12 11:36 Andrew Ammerlaan
2024-01-12 11:08 Sam James
2024-01-11 17:50 William Hubbs
2024-01-11  9:48 Miroslav Šulc
2024-01-11  9:48 Miroslav Šulc
2024-01-11  9:48 Miroslav Šulc
2024-01-10 11:01 Andreas Sturmlechner
2024-01-10 11:01 Andreas Sturmlechner
2024-01-10 11:01 Andreas Sturmlechner
2024-01-09  6:41 Michał Górny
2024-01-08 23:53 Sam James
2024-01-08 21:09 Ionen Wolkens
2024-01-08 14:48 Michał Górny
2024-01-08 14:48 Michał Górny
2024-01-08 12:29 Sam James
2024-01-08 12:28 Sam James
2024-01-08 12:28 Sam James
2024-01-08 12:03 Sam James
2024-01-08 12:03 Sam James
2024-01-08 12:03 Sam James
2024-01-08  9:48 Sam James
2024-01-08  9:48 Sam James
2024-01-07 17:29 Andrew Ammerlaan
2024-01-07 17:29 Andrew Ammerlaan
2024-01-07 11:38 Michał Górny
2024-01-06 21:52 Michał Górny
2024-01-05 20:19 Michał Górny
2024-01-05 20:19 Michał Górny
2024-01-05 20:19 Michał Górny
2024-01-05 10:54 Michał Górny
2024-01-03 10:44 Sam James
2024-01-03  9:35 Ionen Wolkens
2024-01-03  6:20 Sam James
2023-12-30 16:20 Michał Górny
2023-12-30 16:20 Michał Górny
2023-12-30 16:20 Michał Górny
2023-12-30 16:20 Michał Górny
2023-12-30 16:20 Michał Górny
2023-12-30 16:20 Michał Górny
2023-12-30 15:34 Ulrich Müller
2023-12-30 15:34 Ulrich Müller
2023-12-28 15:06 Michał Górny
2023-12-28  6:29 Ionen Wolkens
2023-12-27 20:57 Sam James
2023-12-27 20:57 Sam James
2023-12-27 20:57 Sam James
2023-12-27 20:57 Sam James
2023-12-27 20:57 Sam James
2023-12-26 14:02 Michał Górny
2023-12-25 15:47 Michał Górny
2023-12-25 15:47 Michał Górny
2023-12-25 15:47 Michał Górny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1745200369.3f72e677e174de7decb9f3e6f1695d093eddf954.ionen@gentoo \
    --to=ionen@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox