Friday, March 6, 2026

A magic dwells in each beginning

"A magic dwells in each beginning" / "Und jedem Anfang wohnt ein Zauber inne" - this famous line of the poem "Stufen", written by Hermann Hesse over 80 years ago, comes to my mind when posting a bittersweet update here. After over 16 years of independent research and teaching at the physics department of Universität Regensburg, my Heisenberg grant and with that my last university employment contract runs out.

The years in Regensburg included the Emmy Noether grant of the DFG, being PI in two Collaborative Research Centres (SFB) and one Graduate Research Training Group (GRK), a successful large equipment grant, the habilitation, the Walter Schottky Prize of the German Physical Society, and the Heisenberg scholarship of the DFG with positive evaluation. In addition, I have independently supervised 7 PhD students and 27 MSc or diploma students, and developed and conducted both undergraduate and graduate lectures. Third-party research funding from my grants at Universität Regensburg amounts to approximately € 2.6M, of which € 2.1M was for grants solely within my research group, the rest part of larger collaborations. 

Over the years, my research group in Regensburg has among other things successfully built up ultra-clean carbon nanotube devices for electronics and nano-electromechanics, the fabrication of high-Q superconducting coplanar electronics and milli-Kelvin microwave measurements, the transfer of carbon nanotubes into complex devices, the first ever microwave optomechanics experiment with a carbon nanotube, and Coulomb blockade spectroscopy of MoS2 nanotubes.

The hardest part of all this time was that without a permanent contract ever the options for acquisition of further grants and independent development of collaborations were severely limited. At the same time one builds up a complex experiment and develops cutting edge techniques without clear perspective. And while the mental model for someone below the professorial level to be an independent group leader and grow sustainably in an academic and professional sense does not really exist in the Regensburg physics department, excellence in exactly this is requested and required by the referees of the various grant programs.

With the high-level DFG money, I have never really been "akademisches Prekariat". However, I fully support initiatives such as PD Prekär and #IchBinHanna which try to ameliorate the situation of researchers in Germany not yet on a permanent professorship. In experimental physics, an unpaid PD working alone at home is of course unthinkable.

I enjoyed university research and teaching as well as working with students, establishing a research group, quantum device fabrication, and complex measurements very much. With the "orderly shutdown" of the group comes that still some students need to graduate and that probably some results will still be written up as papers; however, my office has already been cleared out. I would like to thank everyone who was supportive, in particular also Pertti Hakonen and Milena Grifoni. Nevertheless, it's probably at some point now time to make a bonfire out of those lecture notes, go out into the world and do something entirely new. Which, barring surprises, most likely won't involve physics or a university anymore. I'm lucky in the sense that I'm single and have so far no family or kids to care of.

Time for a gap year and some serious world travel.

 


 

 

Und jedem Anfang wohnt ein Zauber inne

„Und jedem Anfang wohnt ein Zauber inne“ – an diese berühmte Zeile aus dem Gedicht „Stufen“, von Hermann Hesse vor über 80 Jahren verfasst, muß ich denken, wenn ich hier ein bittersüßes Update poste. Nach über 16 Jahren unabhängiger Forschung und Lehre an der Fakultät Physik der Universität Regensburg läuft meine Heisenberg-Stelle und damit mein letzter befristeter Hochschulvertrag aus.

Zu den Jahren in Regensburg gehörten das Emmy-Noether-Stipendium der DFG, die Projektleitung in zwei Sonderforschungsbereichen (SFB) und einer Graduiertenkolleg (GRK), ein erfolgreicher Großgeräteantrag, die Habilitation, der Walter-Schottky-Preis der Deutschen Physikalischen Gesellschaft und das Heisenberg-Stipendium der DFG mit positiver Evaluation. Dazu habe ich eigenverantwortlich 7 Doktoranden und 27 Master- oder Diplomstudenten betreut und Vorlesungen für Bachelor- und Masterstudierende entworfen und abgehalten. Die Drittmittel aus meinen Förderanträgen an der Universität Regensburg belaufen sich auf insgesamt ca. 2,6 Mio. €; davon entfielen 2,1 Mio. € auf Arbeiten ausschließlich innerhalb meiner Forschungsgruppe, der Rest anteilhaft auf größere Kooperationen.

Im Laufe der Jahre hat meine Forschungsgruppe in Regensburg unter anderem erfolgreich ultrareine Kohlenstoffnanoröhren-Bauelemente für Elektronik und Nanoelektromechanik entwickelt, koplanare supraleitende Elektronik mit hohen Qualitätsfaktoren und Millikelvin-Mikrowellenmessungen aufgebaut, Kohlenstoffnanoröhren in komplexe Bauelemente übertragen, das erste Mikrowellen-Optomechanik-Experiment mit einer Kohlenstoffnanoröhre durchgeführt und Coulomb-Blockade-Spektroskopie von MoS2-Nanoröhren gemessen.

Das Schwierigste an der Zeit in Regensburg war, daß ohne unbefristeten Vertrag die Einwerbung weiterer Fördermittel und die unabhängige Entwicklung von Kooperationen nur stark eingeschränkt möglich waren. Gleichzeitig baut man ein komplexes Experiment auf und entwickelt modernste Techniken ohne klare Perspektive. Und während das mentale Modell, daß jemand unterhalb der Professorenebene ein unabhängiger Arbeitsgruppenleiter sein und sich in akademischer und beruflicher Hinsicht nachhaltig weiterentwickeln kann, in der Physik in Regensburg nicht wirklich existiert, wird genau dies von den Gutachtern der verschiedenen Förderprogramme verlangt.

Dank der hochkarätigen DFG-Förderung war ich nie wirklich "akademisches Prekariat". Trotzdem unterstütze ich voll und ganz Initiativen wie PD Prekär und #IchBinHanna, die versuchen, die Situation von Forschern ohne unbefristete Stelle oder Professur in Deutschland zu verbessern. In der experimentellen Physik ist ein unbezahlter Privatdozent, der allein zu Hause arbeitet, natürlich undenkbar.

Forschung und Lehre an der Universität sowie die Arbeit mit Studierenden, der Aufbau einer Forschungsgruppe, die Herstellung von Quantenbauelementen und entsprechende komplexe Messungen haben mir sehr viel Spaß gemacht. Mit dem "geregelten Herunterfahren" der Arbeitsgruppe werden noch ein paar Studenten ihren Abschluß machen, und vielleicht werden auch noch einige Resultate als Papers eingereicht; mein Büro habe ich allerdings schon geräumt. Mein Dank gilt allen, die mich unterstützt haben, insbesondere auch Pertti Hakonen und Milena Grifoni. Dann ist es aber demnächst wohl Zeit für ein Feuerchen aus Vorlesungsskripten, und dafür, hinaus in die Welt zu ziehen und sich mit etwas völlig Neuem zu beschäftigen. Was, von Überraschungen abgesehen, höchstwahrscheinlich nichts mehr mit Physik oder einer Universität zu tun haben wird. Zum Glück bin ich Single und habe soweit keine Familie oder Kinder...

Zeit für eine Auszeit - und für eine Weltreise.



 

 

Saturday, November 9, 2024

Ready-to-boot, fresh & experimental Gentoo QCOW2 disk images

Recently I've been experimenting with Catalyst, the tool that generates stages and iso files for Gentoo's Release Engineering team. The first, still very experimental result is now available for download - a bootable hard disk image in QEmu's qcow2 format that immediately drops you into a fully working Gentoo environment.

Feel free to download it and try it out, either this first upload or any future weekly build from the amd64 release file directories. The files are not linked on the www.gentoo.org webserver since I consider them not really finished yet, but instead experimental and under development. You can use a QEmu commandline as for example

qemu-system-x86_64 \
       -m 8G -smbios type=0,uefi=on -bios /usr/share/edk2-ovmf/OVMF_CODE.fd \
       -smp 4 -cpu host -accel kvm -vga virtio -drive file=di.qcow2 &

where the last "file" argument specifies the file that you downloaded, for testing.

The current download initially does not start any network login services such as sshd, but has an empty root password for logging in on the console - this is why I call it a "console" type disk image. Future variants I'm planning include for example a "cloud-init" type, which sets up log-in credentials and further configuration as supplied by a cloud provider.

Cheers and enjoy!



Wednesday, September 18, 2024

Rating scientific (or not so much) conferences

If you work in research, nowadays you can be sure to get swamped with "conference invitation" e-mails. A large part of these is, in effect, spam - attempts to get you (or your funders) to pay for meetings of highly questionable scientific worth.

So, let's introduce a rating scale for scientific (or not) conferences, from 0 to 10. All examples have really happened.

0 - Trash

  • You ask a friend who is listed in the organizing committee, and get the response "what conference?"
  • Advertising mostly mentions the location (Maledives!) and the proceedings (Indexed by Google Scholar!)
  • You arrive at the location and there is no conference.
  • If there is one, you can barely find it because it's in the back room of some hotel conference center.
  • Instead of a conference organizer's desk you encounter a pile of badges and participation certificates.
  • The "hybrid session" consists of you, the AV technician, and some poor guy on zoom talking to a non-existing audience.
  • There's a talk on the "memory of water".
  • A remote talk is given by someone in a car while driving.
  • There are less posters than talks.

3 - We do this for the money, but hey, we're trying!

  • The conference organizing committee contains the one or two well-known professors who are in every organizing committee. Everyone else is from countries you've never heard of.
  • The meeting has taken place before and the website is somewhat professional.
  • The conference secretary is called Elsa, Belle, or Jasmine and sends you an e-mail every week, offering an invited talk for a "small reduction" of the conference fee (hint, the size of the reduction can be up to negotiation!)
  • Between sign-up and actual conference date, the number of days and sessions mysteriously shrinks.
  • The conference organizer's desk is handled by a bunch of undergrads who barely speak English and have no clue.
  • The welcome address is skipped since the speaker doesn't turn up. Same for the chairman of the first session. After the first regular speaker starts their talk, the chairman hurries in - "sorry, sorry, I ended up at the wrong conference..."
  • You meet a few colleagues from home who find the situation similarly amusing as you, and have a good time at lunch.
  • Eventually things become somewhat more regular, and sessions and talks take place, but you have quite some doubts about the scientific quality of some of them.
  • Focus? What focus?

6 - Yes I'm gonna establish a conference, mark my words!

  • 5th or 6th installment of a conference series, typically by the same scientific organizer or organization.
  • You find the conference without problems, and there is actually a well-organized conference desk. Maybe even the scientific organizer greets you in person.
  • The location is only moderately flashy, function starts to gain over form.
  • Most of the participants are from serious scientific institutions and present work that can be interesting.
  • Main problem is still the focus - the topics are too broad, the number of participants too small, such that it's not so likely you will meet someone whose work is really relevant to your own.
  • If the main organizer has a good hand, they will accumulate a circle of regular participants and the event will grow over time.
  • Can, e.g., be a professor establishing an international conference on their topic in their home country...
  • Typically 2-3 companies are present trying to sell their lab supplies.

9 - Congratulations, it's a great scientific conference

  • Either wide focus and a huge number of participants, or narrow focus and a small number of participants
  • Organized by a scientific society (DPG, EPS, APS, ...) or by a group of internationally well-known experts in one specific field
  • True invited talks are comparatively rare, and come with (depending on the financial situation of the host) either no reduction of fees at all, or even funding of travel expenses.
  • You know nearly everyone in the organizing committee, at least from their publications.
  • Many more poster contributions than talks.
  • You can be sure to meet many of your scientific colleagues.
  • Large commercial presence of companies sponsoring the meeting and advertising their high-tech equipment.

10 - Summa cum laude

  • Small meetings organized by few top experts of a research area, or (very rare) large meetings consisting of several such high-quality sessions in combination.
  • Organized by top level scientists in the field worldwide
  • Participation by invitation only, true selection of conference participants (more applicants than places)
  • In some cases, even free participation and accommodation
  • Recent examples: Gordon Research Conferences, Heraeus seminars, the QuantuMatter 2024, ... 
 Thoughs?

 

Monday, July 22, 2024

The GNU C Library version 2.40 is now available

The GNU C Library
=================

The GNU C Library version 2.40 is now available.

The GNU C Library is used as *the* C library in the GNU system and
in GNU/Linux systems, as well as many other systems that use Linux
as the kernel.

The GNU C Library is primarily designed to be a portable
and high performance C library.  It follows all relevant
standards including ISO C11 and POSIX.1-2017.  It is also
internationalized and has one of the most complete
internationalization interfaces known.

The GNU C Library webpage is at http://www.gnu.org/software/libc/

Packages for the 2.40 release may be downloaded from:
        http://ftpmirror.gnu.org/libc/
        http://ftp.gnu.org/gnu/libc/

The mirror list is at http://www.gnu.org/order/ftp.html

Distributions are encouraged to track the release/* branches
corresponding to the releases they are using.  The release
branches will be updated with conservative bug fixes and new
features while retaining backwards compatibility.

NEWS for version 2.40
=====================

Major new features:

* The <stdbit.h> header type-generic macros have been changed when using
  GCC 14.1 or later to use __builtin_stdc_bit_ceil etc. built-in functions
  in order to support unsigned __int128 and/or unsigned _BitInt(N) operands
  with arbitrary precisions when supported by the target.

* The GNU C Library now supports a feature test macro _ISOC23_SOURCE to
  enable features from the ISO C23 standard.  Only some features from
  this standard are supported by the GNU C Library.  The older name
  _ISOC2X_SOURCE is still supported.  Features from C23 are also enabled
  by _GNU_SOURCE, or by compiling with the GCC options -std=c23,
  -std=gnu23, -std=c2x or -std=gnu2x.

* The following ISO C23 function families (introduced in TS
  18661-4:2015) are now supported in <math.h>.  Each family includes
  functions for float, double, long double, _FloatN and _FloatNx, and a
  type-generic macro in <tgmath.h>.

  - Exponential functions: exp2m1, exp10m1.

  - Logarithmic functions: log2p1, log10p1, logp1.

* A new tunable, glibc.rtld.enable_secure, can be used to run a program
  as if it were a setuid process. This is currently a testing tool to allow
  more extensive verification tests for AT_SECURE programs and not meant to
  be a security feature.

* On Linux, the epoll header was updated to include epoll ioctl definitions
  and the related structure added in Linux kernel 6.9.

* The fortify functionality has been significantly enhanced for building
  programs with clang against the GNU C Library.

* Many functions have been added to the vector library for aarch64:
    acosh, asinh, atanh, cbrt, cosh, erf, erfc, hypot, pow, sinh, tanh

* On x86, memset can now use non-temporal stores to improve the performance
  of large writes. This behaviour is controlled by a new tunable
  x86_memset_non_temporal_threshold.

Deprecated and removed features, and other changes affecting compatibility:

* Architectures which use a 32-bit seconds-since-epoch field in struct
  lastlog, struct utmp, struct utmpx (such as i386, powerpc64le, rv32,
  rv64, x86-64) switched from a signed to an unsigned type for that
  field.  This allows these fields to store timestamps beyond the year
  2038, until the year 2106.  Please note that applications are still
  expected to migrate off the interfaces declared in <utmp.h> and
  <utmpx.h> (except for login_tty) due to locking and session management
  problems.

* __rseq_size now denotes the size of the active rseq area (20 bytes
  initially), not the size of struct rseq (32 bytes initially).

Security related changes:

The following CVEs were fixed in this release, details of which can be
found in the advisories directory of the release tarball:

  GLIBC-SA-2024-0004:
    ISO-2022-CN-EXT: fix out-of-bound writes when writing escape
    sequence (CVE-2024-2961)

  GLIBC-SA-2024-0005:
    nscd: Stack-based buffer overflow in netgroup cache (CVE-2024-33599)

  GLIBC-SA-2024-0006:
    nscd: Null pointer crash after notfound response (CVE-2024-33600)

  GLIBC-SA-2024-0007:
    nscd: netgroup cache may terminate daemon on memory allocation
    failure (CVE-2024-33601)

  GLIBC-SA-2024-0008:
    nscd: netgroup cache assumes NSS callback uses in-buffer strings
    (CVE-2024-33602)

The following bugs were resolved with this release:

  [19622] network: Support aliasing with struct sockaddr
  [21271] localedata: cv_RU: update translations
  [23774] localedata: lv_LV collates Y/y incorrectly
  [23865] string: wcsstr is quadratic-time
  [25119] localedata: Change Czech weekday names to lowercase
  [27777] stdio: fclose does a linear search, takes ages when many FILE*
    are opened
  [29770] libc: prctl does not match manual page ABI on powerpc64le-
    linux-gnu
  [29845] localedata: Update hr_HR locale currency to €
  [30701] time: getutxent misbehaves on 32-bit x86 when _TIME_BITS=64
  [31316] build: Fails test misc/tst-dirname "Didn't expect signal from
    child: got `Illegal instruction'" on non SSE CPUs
  [31317] dynamic-link: [RISCV] static PIE crashes during self
    relocation
  [31325] libc: mips: clone3 is wrong for o32
  [31335] math: Compile glibc with -march=x86-64-v3 should disable FMA4
    multi-arch version
  [31339] libc: arm32 loader crash after cleanup in 2.36
  [31340] manual: A bad sentence in section 22.3.5 (resource.texi)
  [31357] dynamic-link: $(objpfx)tst-rtld-list-diagnostics.out rule
    doesn't work with test wrapper
  [31370] localedata: wcwidth() does not treat
    DEFAULT_IGNORABLE_CODE_POINTs as zero-width
  [31371] dynamic-link: x86-64: APX and Tile registers aren't preserved
    in ld.so trampoline
  [31372] dynamic-link: _dl_tlsdesc_dynamic doesn't preserve all caller-
    saved registers
  [31383] libc: _FORTIFY_SOURCE=3 and __fortified_attr_access vs size of
    0 and zero size types
  [31385] build: sort-makefile-lines.py doesn't check variable with _
    nor with "^# variable"
  [31402] libc: clone (NULL, NULL, ...) clobbers %r7 register on
    s390{,x}
  [31405] libc: Improve dl_iterate_phdr using _dl_find_object
  [31411] localedata: Add Latgalian locale
  [31412] build: GCC 6 failed to build i386 glibc on Fedora 39
  [31429] build: Glibc failed to build with -march=x86-64-v3
  [31468] libc: sigisemptyset returns true when the set contains signals
    larger than 34
  [31476] network: Automatic activation of single-request options break
    resolv.conf reloading
  [31479] libc: Missing #include <sys/rseq.h> in sched_getcpu.c may
    result in a loss of rseq acceleration
  [31501] dynamic-link: _dl_tlsdesc_dynamic_xsavec may clobber %rbx
  [31518] manual: documentation: FLT_MAX_10_EXP questionable text, evtl.
    wrong,
  [31530] localedata: Locale file for Moksha - mdf_RU
  [31553] malloc: elf/tst-decorate-maps fails on ppc64el
  [31596] libc: On the llvm-arm32 platform, dlopen("not_exist.so", -1)
    triggers segmentation fault
  [31600] math: math: x86 ceill traps when FE_INEXACT is enabled
  [31601] math: math: x86 floor traps when FE_INEXACT is enabled
  [31603] math: math: x86 trunc traps when FE_INEXACT is enabled
  [31612] libc: arc4random fails to fallback to /dev/urandom if
    getrandom is not present
  [31629] build: powerpc64: Configuring with "--with-cpu=power10" and
    'CFLAGS=-O2 -mcpu=power9' fails to build glibc
  [31640] dynamic-link: POWER10 ld.so crashes in
    elf_machine_load_address with GCC 14
  [31661] libc: NPROCESSORS_CONF and NPROCESSORS_ONLN not available in
    getconf
  [31676] dynamic-link: Configuring with CC="gcc -march=x86-64-v3"
    --with-rtld-early-cflags=-march=x86-64 results in linker failure
  [31677] nscd: nscd: netgroup cache: invalid memcpy under low
    memory/storage conditions
  [31678] nscd: nscd: Null pointer dereferences after failed netgroup
    cache insertion
  [31679] nscd: nscd: netgroup cache may terminate daemon on memory
    allocation failure
  [31680] nscd: nscd: netgroup cache assumes NSS callback uses in-buffer
    strings
  [31682] math: [PowerPC] Floating point exception error for math test
    test-ceil-except-2 test-floor-except-2 test-trunc-except-2
  [31686] dynamic-link: Stack-based buffer overflow in
    parse_tunables_string
  [31695] libc: pidfd_spawn/pidfd_spawnp leak an fd if clone3 succeeds
    but execve fails
  [31719] dynamic-link: --enable-hardcoded-path-in-tests doesn't work
    with -Wl,--enable-new-dtags
  [31730] libc: backtrace_symbols_fd prints different strings than
    backtrace_symbols returns
  [31753] build: FAIL: link-static-libc with GCC 6/7/8
  [31755] libc: procutils_read_file doesn't start with a leading
    underscore
  [31756] libc: write_profiling is only in libc.a
  [31757] build: Should XXXf128_do_not_use functions be excluded?
  [31759] math: Extra nearbyint symbols in libm.a
  [31760] math: Missing math functions
  [31764] build: _res_opcodes should be a compat symbol only
  [31765] dynamic-link: _dl_mcount_wrapper is exported without prototype
  [31766] stdio: _IO_stderr_ _IO_stdin_ _IO_stdout should be compat
    symbols
  [31768] string: Extra stpncpy symbol in libc.a
  [31770] libc: clone3 is in libc.a
  [31774] libc: Missing __isnanf128 in libc.a
  [31775] math: Missing exp10 exp10f32x exp10f64 fmod fmodf fmodf32
    fmodf32x fmodf64 in libm.a
  [31777] string: Extra memchr strlen symbols in libc.a
  [31781] math: Missing math functions in libm.a
  [31782] build: Test build failure with recent GCC trunk (x86/tst-cpu-
    features-supports.c:69:3: error: parameter to builtin not valid:
    avx5124fmaps)
  [31785] string: loongarch: Extra strnlen symbols in libc.a
  [31786] string: powerpc: Extra strchrnul and strncasecmp_l symbols in
    libc.a
  [31787] math: powerpc: Extra llrintf, llrintf, llrintf32, and
    llrintf32 symbols in libc.a
  [31788] libc: microblaze: Extra cacheflush symbol in libc.a
  [31789] libc: powerpc: Extra versionsort symbol in libc.a
  [31790] libc: s390: Extra getutent32, getutent32_r, getutid32,
    getutid32_r, getutline32, getutline32_r, getutmp32, getutmpx32,
    getutxent32, getutxid32, getutxline32, pututline32, pututxline32,
    updwtmp32, updwtmpx32 in libc.a
  [31797] build: g++ -static requirement should be able to opt-out
  [31798] libc: pidfd_getpid.c is miscompiled by GCC 6.4
  [31802] time: difftime is pure not const
  [31808] time: The supported time_t range is not documented.
  [31840] stdio: Memory leak in _IO_new_fdopen (fdopen) on seek failure
  [31867] build: "CPU ISA level is lower than required" on SSE2-free
    CPUs
  [31876] time: "Date and time" documentation fixes for POSIX.1-2024 etc
  [31883] build: ISA level support configure check relies on bashism /
    is otherwise broken for arithmetic
  [31892] build: Always install mtrace.
  [31917] libc: clang mq_open fortify wrapper does not handle 4 argument
    correctly
  [31927] libc: clang open fortify wrapper does not handle argument
    correctly
  [31931] time: tzset may fault on very short TZ string
  [31934] string: wcsncmp crash on s390x on vlbb instruction
  [31963] stdio: Crash in _IO_link_in within __gcov_exit
  [31965] dynamic-link: rseq extension mechanism does not work as
    intended
  [31980] build: elf/tst-tunables-enable_secure-env fails on ppc

Release Notes
=============

https://sourceware.org/glibc/wiki/Release/2.40

Contributors
============

This release was made possible by the contributions of many people.
The maintainers are grateful to everyone who has contributed
changes or bug reports.  These include:

Adam Sampson
Adhemerval Zanella
Alejandro Colomar
Alexandre Ferrieux
Amrita H S
Andreas K. Hüttel
Andreas Schwab
Andrew Pinski
Askar Safin
Aurelien Jarno
Avinal Kumar
Carlos Llamas
Carlos O'Donell
Charles Fol
Christoph Müllner
DJ Delorie
Daniel Cederman
Darius Rad
David Paleino
Dragan Stanojević (Nevidljivi)
Evan Green
Fangrui Song
Flavio Cruz
Florian Weimer
Gabi Falk
H.J. Lu
Jakub Jelinek
Jan Kurik
Joe Damato
Joe Ramsay
Joe Simmons-Talbott
Joe Talbott
John David Anglin
Joseph Myers
Jules Bertholet
Julian Zhu
Junxian Zhu
Konstantin Kharlamov
Luca Boccassi
Maciej W. Rozycki
Manjunath Matti
Mark Wielaard
MayShao-oc
Meng Qinggang
Michael Jeanson
Michel Lind
Mike FABIAN
Mohamed Akram
Noah Goldstein
Palmer Dabbelt
Paul Eggert
Philip Kaludercic
Samuel Dobron
Samuel Thibault
Sayan Paul
Sergey Bugaev
Sergey Kolosov
Siddhesh Poyarekar
Simon Chopin
Stafford Horne
Stefan Liebler
Sunil K Pandey
Szabolcs Nagy
Wilco Dijkstra
Xi Ruoyao
Xin Wang
Yinyu Cai
YunQiang Su

We would like to call out the following and thank them for their
tireless patch review:

Adhemerval Zanella
Alejandro Colomar
Andreas K. Hüttel
Arjun Shankar
Aurelien Jarno
Bruno Haible
Carlos O'Donell
DJ Delorie
Dmitry V. Levin
Evan Green
Fangrui Song
Florian Weimer
H.J. Lu
Jonathan Wakely
Joseph Myers
Mathieu Desnoyers
Maxim Kuvyrkov
Michael Jeanson
Noah Goldstein
Palmer Dabbelt
Paul Eggert
Paul E. Murphy
Peter Bergner
Philippe Mathieu-Daudé
Sam James
Siddhesh Poyarekar
Simon Chopin
Stefan Liebler
Sunil K Pandey
Szabolcs Nagy
Xi Ruoyao
Zack Weinberg

--
Andreas K. Hüttel
dilfridge@gentoo.org
Gentoo Linux developer
(council, toolchain, base-system, perl, releng)
https://wiki.gentoo.org/wiki/User:Dilfridge
https://www.akhuettel.de/

Tuesday, July 2, 2024

Update on German bureaucracy, or Mitteilungsverordnung hooray!

I've recently posted about the requirement of a German tax id for all reimbursements even of foreign seminar guests, or more precisely, about my frustration thereof. In the meantime I've been talking to colleagues, our faculty administration, read up some legalese texts, and last but not least contacted friends induced in the relevant higher Bavarian mysteries for their opinion and knowledge. The result is interesting, and here's a summary of it.

First of all, while the federal Mitteilungsverordnung ("notification regulation") has not changed recently, it will change as of 1 January 2025 (most relevant, its §8). And indeed it then requires electronic transmission of the notifications and that every payment notification is accompanied by the German tax id of the recipient. Since payments during 2024 are reported beginning of 2025, that change affects us already now. What has not changed is the "Bagatellgrenze", i.e., the fact that payments below 1500,- € per person and year do not require any payment notification and thus also no tax id.

Second, as proposed by the State of Bavaria, the Bundesrat (our second chamber of parliament that represents the states) has requested to raise the "Bagatellgrenze" to 3000,- € per person and year, since even the higher mysteries are of the opinion that the current situation is not really productive (the number was initially fixed as 3000,- DM in 1993 and then converted to 1500,- € ... now how much inflation did we have in the meantime?). The federal government is assessing the situation.

Third, I got the comment that University of Regensburg seems to hand in quite some unnecessary (because of the "Bagatellgrenze") payment notifications. Which is somewhat unsurprising since our central administration (not the Physics department) insists on sending a record of every payment, not just the ones above 1500,- € per person and year. Lovely. #Provinzuniversität #UniversitätRegensburg

At the moment our foreign guests get the application form for the German tax id during their visit together with the remaining reimbursement forms, and need to hand in a passport copy with it. The generated tax id is directly sent to us; once it has arrived the normal reimbursement process is started. Things could be worse. Still, first, the process delays the reimbursement (potentially by weeks, depending on the load of our local tax office), second, requiring all international guests to leave a passport copy and file for a German tax id just to get their plane tickets paid is borderline...

Monday, July 1, 2024

Tuesday, May 28, 2024

German bureaucracy, or: things going downhill, part 1 of n

[Update at end]

I've been working in university research now for quite some time, and one of the great things about it is international cooperation. The sciences live and breathe via cooperation visits, seminar invitations, ... One of the fixtures at probably nearly every university is the faculty colloquium, where each week, covering a wide range of topics, a renowned expert is invited to speak. Then there are locally organized conferences, regular seminars connected to research programs...  And "invited" is the real word here; while typically no remuneration is paid to the speakers, the travel expenses from tickets to hotel costs are reimbursed (within reasonable limits given by guidelines and rules), and of course we strive to make the visit as easy and pleasant for the guest as possible.

Enter Germany, or in this case more precisely Bavaria. Starting 1 January 2024, travel expenses can only be reimbursed to persons with a German tax id number ("Steueridentifikationsnummer"). How about international guests, not German citizens, not living in Germany, you may ask? Well, obviously, they most likely don't have one. So they need to get one! This involves sending a filled-out form with personal data and passport copies by paper mail to our local tax office well in advance, after all processing and assigning this life-long id (and adding them to the German tax register) can take up to 4 weeks. Seriously, I am ashamed to ask this of our international guests who don't intend to stay here long or take up employment here, just so they can get their plane tickets reimbursed, and can fully understand if someone is not happy about it.

And then, once you got over that, you realize that you can't even pre-book some arrangements since the university still has no credit card and thus can't do online bookings.

It's getting worse year by year. Blargh.

Update. So I've been informed in the meantime that here the faculty administration can take care of it (during the visit of the guest? unclear), that it is a matter of 10min and no problem, and that I should not worry about it. (?) Also, it's apparently due to some EU regulation (?) and Berlin is apparently already doing the same as Bavaria. ?!?

Monday, April 1, 2024

The interpersonal side of the xz-utils compromise

While everyone is busy analyzing the highly complex technical details of the recently discovered xz-utils compromise that is currently rocking the internet, it is worth looking at the underlying non-technical problems that make such a compromise possible. A very good write-up can be found on the blog of Rob Mensching...

"A Microcosm of the interactions in Open Source projects"

Monday, October 30, 2023

Lab::Measurement 3.900 released - also dropping support for legacy scripts

Following a lot of smaller and larger improvements and additions, we have finally released Lab::Measurement 3.900 on CPAN. Highlights compared to the last "round version" include support for the Nanonis Tramea quantum transport measurement, the Zurich Instruments HDAWG arbitrary waveform generator, the Synktek MCL1-540 lock-in amplifier, the Bluefors dilution refrigerator temperature control, the American Magnetics AMI430 magnet power supply, as well as many improvements for Lakeshore temperature controllers.

In addition, version 3.900 now finally drops the unmaintained legacy code layers (Lab::Bus, Lab::Connection, Lab::Instrument, Lab::XPRESS) and focuses on the Moose-based Modern Perl interface alone. This should make maintenance easier in the future. Anyone who still needs the old interfaces for measurement scripts should install the distribution Lab::Measurement::Legacy, where the deprecated modules are archived.

Tuesday, January 10, 2023

Advanced Materials published: "Non-destructive low-temperature contacts to MoS2 nanoribbon and nanotube quantum dots"

Molybdenum disulfide MoS2 is often discussed as a groundbreaking material for electronics applications. As bulk crystal or as 2D layer material similar to graphene, it is an excellent semiconductor with strong spin-orbit interaction. At strong doping it even becomes intrinsically superconducting, with possibly interesting topological properties.

So how about using MoS2 for quantum electronics, single electron devices, or (charge, spin, or valley) qubits? There's already enough science fiction literature out there mentioning "molycircuits"... Well, a small problem stands in the way.  It turns out that the electronic band structure of the material makes reaching quantum confinement, i.e., discrete, addressable electronic quantum states, quite hard. The chip structures need to be built at very small scale, difficult to reach with MoS2 flakes on a chip surface, and so far no research group has managed to do this in a controlled way.

That's exactly why we are interested in MoS2 nanotubes. They can be grown clean and straight, with diameters down to 20nm - which automatically confines charge carriers in one more direction compared to a two-dimensional MoS2 flake. What remains is to restrict motion of the charge carriers along the nanotube axis and to make good metallic contacts. However, it turns out that making good contacts to MoS2 is hard - either your metals form a Schottky barrier, or they react with the MoS2 and destroy its crystal structure.

In our work, we show that this problem has now been solved. Using a thin layer of the semimetal bismuth, we obtain contacts which remain transparent even at cryogenic (millikelvin) temperatures and leave the structure of MoS2 below and next to them intact. This makes transport spectroscopy measurements on a MoS2 quantum dot forming within the nanotube possible. We indeed observe quantum dot behaviour; the temperature dependence of the Coulomb oscillations of conductance indicates that we reach electronic tunneling through single, discrete quantum states below a temperature of T=100mK. 

With this, we have made a big step towards controllable charge, spin, or even valley quantum states in MoS2. Next we need to miniaturize our devices even further, and increase our measurement resolution to be able to analyze the electronic level spectrum in magnetic fields.

"Non-destructive low-temperature contacts to MoS2 nanoribbon and nanotube quantum dots"
R. T. K. Schock, J. Neuwald, W. Möckel, M. Kronseder, L. Pirker, M. Remskar, and A. K. Hüttel
accepted for publication by Advanced Materials (doi:10.1002/adma.202209333); arXiv:2209.15515 (PDF, supplementary information)

Monday, October 24, 2022

Video from Walter Schottky Prize award ceremony now online

 The video recording of the Walter Schottky Prize award ceremony in June is finally online. Enjoy :)




Tuesday, July 5, 2022

Airport taxis via booking.com -- nice if it works!

So I'm a good, and normally very happy booking.com customer (Genius Level 3 if that means anything), and have spent a lot of money over the past years via that company. This year, during this trip, I tried booking airport pick-up in advance for the first time. The first pick-up failed spectacularly, and I'm still dealing with it.

Long flight(s). Frankfurt (FRA) - Bangkok (BKK), Bangkok (BKK) - Sydney (SYD). Things didn't go exactly to plan, the flight arrived late in Sydney, but hey, booking.com says the drivers are tracking the arrival schedule and adapt to that. After immigration and luggage pick-up, I leave the security area and scan the waiting crowd. Lots of drivers waiting for lots of travellers, but unfortunately noone waiting for me.

After half an hour of waiting, I get into a conversation with a driver who works for the same company that is supposed to pick me up. He asks around, can't help me either, and recommends to phone the company office. I do that, with the number given in the reservation confirmation in the booking.com app. On the phone, I get told there is no reservation on my name.

So I take a regular cab to my hotel. Works fine. 

Except that the transfer was of course already paid (and since the date is past, it can't be cancelled anymore). Clicking through the labyrinth of the booking.com website, I find out it is really difficult to file a complaint. Anyway, I manage to arrive at the proper form, state the situation and request a refund.

Nothing happens for over a week.

So I file another report again, on Sat 2/July/2022, including this time that in case of no response within three business days I will dispute the corresponding credit card booking, with them being liable for associated fees. Clock's ticking...

I like booking.com, and am otherwise a very happy customer. Also, a second pickup later worked out just fine (SGN). Nevertheless, this is somewhat annoying.

Update, 7/July/2022: With effective date 2/July/2022 the money was refunded to my credit card by booking.com. No e-mail or status change or notification on the website, but hey, the money is back. So no need for further complaints. :)

Wednesday, April 13, 2022

Testing the Gentoo LiveGUI with QEmu

If you want to test the Gentoo LiveGUI, but don't feel like cutting short the precious uptime of your machine, here's a handy bash script for testing the iso files with qemu:

#!/bin/bash

qemu-system-x86_64    -m 4G \
           -enable-kvm \
           -cpu host \
           -smp 4 \
           -name "Gentoo amd64 LiveGUI" \
           --netdev user,id=vmnic,hostname=gentoovm \
           -device e1000,netdev=vmnic \
           -bios /usr/share/edk2-ovmf/OVMF_CODE.fd \
           -device intel-hda -device hda-duplex \
           -usbdevice tablet \
           -vga vmware \
           -cdrom $1

You'll need to be in the kvm group and have kvm configured in your kernel. Also you may want to adapt the memory (now 4Gbyte) and the number of CPUs (now 4) for the virtual machine. Then you can simply start the boot process with

~ $ ./qemu-livegui livegui-amd64-20220412T191925Z.iso &

Cheers!

Monday, April 4, 2022

New Gentoo LiveGUI ISO and artwork / branding contest!

Artist Larry

After a long break, we now have again a weekly LiveGUI ISO image for amd64 available! The 4.7 GB download, suitable for DVD burning or an USB stick, boots directly into KDE Plasma and comes with a ton of up-to-date software. This ranges from office applicactions such as LibreOffice, Inkscape, and Gimp all the way to many system administrator tools.

Now, we need your help! Let’s make this the coolest and most beautiful Linux live image ever. We’re calling for submissions of artwork, themes, actually anything from a desktop background to a boot manager animation, on the topic of Gentoo! The winning entry will be added as default setting to the official LiveGUI images, and also be available for download and installation.

The artwork contest

What are we looking for?

Gentoo-themed artwork and branding material to make our Gentoo LiveGUI the coolest Linux live medium ever.

  • Incorporates the Gentoo logo and maybe other Gentoo design elements (like Larry the Cow)
  • Works for a wide range of screen resolutions etc.
  • Is packaged more or less ready-to-use for our LiveGUI image
  • Provides a coherent experience to the user, i.e., if it consists of different parts, these fit togehter
  • Can be distributed in its entirety under the CC BY-SA 4.0 license

We could for example imagine screen backgrounds, Plasma theming, maybe even a GRUB boot menu animation or a LibreOffice splash screen… Feel free to come up with more ideas.

If you base your work on freely available source material created by others, please keep track of the sources and their licenses in an accompanying readme file.

What are we not looking for?

  • Do not submit anything that infringes on third-party copyrights or trademarks. While a Star Trek-themed Gentoo desktop would be cool, Paramount might object and we wouldn’t be able to distribute it. Same for My Little Pony or the Simpsons.
  • Do not submit artwork falling under the not-safe-for-work (NSFW) category. We will recognize it when we see it, and we won’t be able to distribute it.
  • Do not submit artwork with political or religious statements. No matter how universally acceptable you think that these are, someone will be offended by them.

The artwork should be such that kids or colleagues can walk into your office and you don’t have to quickly cover it up. :) Also, please think of your contribution in terms of the Gentoo Code of Conduct.

How to submit an entry

Package it up
  • Package all the relevant files into a single tar archive and upload it to a webserver of your choice, or publish the files (e.g. on github) as a single git repository.
  • Add a readme file with your name and contact e-mail address, the license of the files, sources and licenses for third-party material, and detailed installation instructions
  • File a bug for the release engineering team, component “LiveCD/DVD”, with the summary starting with “Artwork 2022 contest entry”, and add a link to your file.
  • If you link to a git repository, please mention a tag or commit which we should use.
  • By submitting your entry, you allow Gentoo to download, re-publish, and distribute your files (see also above remark about the license).
Deadline
  • The contest ends 31/May/2022 at 23:59 UTC.
  • Please keep your files online for at least one more month after that date, so we can review and copy them.

Selection and announcement of the winner

  • The jury consists of the Gentoo Council, the Release Engineering team, the Artwork team, and the Public Relations team (as of beginning of April 2022).
  • The winner will be chosen by vote; depending on the amount and quality of the submissions, we may also pick a runner-up or more.
  • The announcement of the winner or the winners will be made in June.

The LiveGUI image

The LiveGUI image is first and foremost provided to show off Gentoo and give everyone a chance to test a full-fledged Gentoo installation. As such, we have a lot of typical “desktop applications” installed. Additionally, we tried to integrate as many system administration tools as possible, so you can also use it for everything from repartitioning your hard drives to repairing an installation.

Some of the software on the image:

  • KDE Plasma as desktop environment
  • Office productivity: LibreOffice, LyX, TeXstudio, XournalPP, kile
  • Web browsers: Firefox, Chromium
  • IRC and similar: irssi, weechat
  • Editors: Emacs, vim, kate, nano, joe
  • Development and source control: git, subversion, gcc, Python, Perl
  • Graphics: Inkscape, Gimp, Povray, Luminance HDR, Digikam
  • Video: KDEnlive
  • Disk management: hddtemp, testdisk, hdparm, nvme-cli, gparted, partimage, btrfs-progs, ddrescue, dosfstools, e2fsprogs, zfs
  • Network tools and daemons: nmap, tcpdump, traceroute, minicom, pptpclient, bind-tools, cifs-utils, nfs-utils, ftp, chrony, ntp, openssh, rdesktop, openfortivpn, openvpn, tor
  • Backup: mt-st, fsarchiver
  • Benchmarks: bonnie, bonnie++, dbench, iozone, stress, tiobench

The list of targeted packages (corresponding to a world file) can be found in the catalyst specification file; we install the newest stable version in the Gentoo repository.

In addition, since - as in a normal Gentoo installation - compiler and development tools are available, you can temporarily install more software. Just run emerge --sync and then install whatever you need (though it will be kept in memory and be gone after the next reboot).

Feedback and of course bug reports are welcome! Enjoy!

Sunday, April 3, 2022

Gentoo MIPS stages are back!

MIPS logo
After a long break, we finally have up-to-date Gentoo stages for the MIPS architecture available for download again!

The weekly builds cover at the moment for 32-bit mips2 and mips32, for 64-bit mips3 and mips64 in o32, n32, and n64 ABI - and all that for both big and little endian. Should be good as a start for just about every hardware out there.

For more information on MIPS, see the Gentoo MIPS project page (which is as of writing of this blog post still somewhat outdated), the MIPS architecture page on Wikipedia, or the MIPS corporate products page.

The weekly stage builds are possible to a large part due to the excellent work of the qemu developers, which allows us to run all the builds on a single (x86-64, AMD RYZEN) server with a ton of parallel processes. Thank you!

Friday, February 4, 2022

Gentoo "desktop profile" Stage 3 downloads

You may have noticed additional Stage 3 links marked with "desktop profile" on the Gentoo downloads page recently. So what's this about?

The only difference between a "normal" Stage 3 file and a "desktop profile" Stage 3 file is that the latter has a desktop profile selected (surprise!). As example, if a "normal" amd64 (x86-64) systemd stage uses as profile setting default/linux/amd64/17.1/systemd, then the "desktop profile" stage uses
default/linux/amd64/17.1/desktop/systemd. The packages in the @system set are exactly the same, however, in the desktop profile more use-flags are enabled, which means many additional dependencies are merged.

This leads us to the point of the "desktop profile" stages: if you do a desktop installation (for anything from KDE to Gnome or XFCE), these files give you less initial rebuilds and compiles, at the cost of a larger download. And that's all.

Tuesday, September 21, 2021

Experimental binary Gentoo package hosting (amd64)

IMPORTANT: This blog post is outdated! As direct result of this experiment, we now have official Gentoo binary packages available. See the announcement for more information and further links!  The old blog text follows...

As an experiment, I've started assembling a simple binary package hosting mechanism for Gentoo. Right now this comes with some serious limitations and should not be used for security or mission critical applications (more on this below). The main purpose of this experiment is to find out how well it works and where we need improvements in Portage's binary package handling.

So what do we have, and how can you use it?

  • The server builds an assortment of stable amd64 packages, with the use-flags as present in an unmodified 17.1/desktop/plasma/systemd profile (the only necessary change is USE=bindist).
  • The packages can be used on all amd64 profiles that differ from desktop/plasma/systemd only by use-flag settings. This includes 17.1, 17.1/desktop/*, 17.1/no-multilib, 17.1/systemd, but not anything containing selinx, hardened, developer, musl, or a different profile version such as 17.0.
  • Right now, the package set includes kde-plasma/plasma-meta, kde-apps/kde-apps-meta, app-office/libreoffice, media-gfx/gimp, media-gfx/inkscape, and of course all their dependencies. More will possibly be added.
  • CFLAGS are chosen such that the packages will be usable on all amd64 (i.e., x86-64) machines. 

To use the packages, I recommend the following steps: First, create a file /etc/portage/binrepos.conf with the following content:

[binhost]
priority = 9999
sync-uri = https://gentoo.osuosl.org/experimental/amd64/binpkg/default/linux/17.1/x86-64/

You can pick a different mirror according to your preferences (but also see the remarks below). Then, edit /etc/portage/make.conf, and add the following EMERGE_DEFAULT_OPTS (in addition to flags that you might already have there):

EMERGE_DEFAULT_OPTS="--binpkg-respect-use=y --getbinpkg=y"

And that's it. Your next update should download the package index and use binary packages whenever the versions and use-flag settings match. Everything else is compiled as usual.

What is still missing, and what are the limitations and caveats?

  • Obviously, the packages are not optimized for your processor.
  • Right now, the server only carries packages for the use-flag settings in an unmodified 17.1/desktop/plasma/systemd profile. If you use other settings, you will end up compiling part of your packages (which is not really a probem, you just lose the benefit of the binary download). It is technically possible to provide binary packages for different use-flag settings at the same URL, and eventually it will be implemented if this experiment succeeds.
  • At the moment, no cryptographic signing of the binary packages is in place yet. This is the main reason why I'm talking about an experiment. Effectively you trust our mirror admins and the https protocol. Package signing and verification is in preparation, and before the binary package hosting "moves into production", it will be enforced.
That's it. Enjoy! And don't forget to leave feedback in the comments.

Sunday, March 14, 2021

Gentoo AMD64 Handbook "Preparing the disks" section reworked

Since the text was becoming more and more outdated and also more and more convoluted, I have completely reworked the "Preparing the disks" section of the Gentoo AMD64 handbook

  • Since fdisk supports GUID partition tables (GPT) for a long time now, references to parted have been dropped.
  • The text restricts itself now to the combinations 1) UEFI boot and GPT and 2) BIOS / legacy boot and MBR. While mixing and matching is here certainly possible, we should treat it out of the scope of the manual.
  • Hopefully the terminology regarding the boot partition, UEFI system partition, and BIOS boot partition is more clear now (it was horribly mixed up before).

Please proofread and check for mistakes! I'll drop the "work in progress" label in a few days if nothing comes up.

Sunday, January 31, 2021

New Gentoo riscv (and arm) stages

With the help of our infrastructure team, I've finally managed to integrate the riscv stage builds with our signing and mirroring system. So now we have a riscv tab on the installation media download page, and the mirrors carry weekly signed stage3 archives for riscv64-lp64d and riscv64-lp64, in both openrc and systemd variants.

Using the same build infrastructure based on qemu, there are now also slowly updated stages for all arm variants coming to the mirrors. Please test them, and if anything does not work as expected, file bugs! The qemu-based builds are here a temporary measure; Matt Turner (mattst88) is preparing a fast multi-core arm64 machine, where this task will move to soon.