Kurz Howto: Transparentes Gnome-Terminal 3.54.0 unter OpenBSD

dettus

Bicycle User
Persoenlich bin ich ein Fan transparenter Terminals. Eterm sah damals(tm) am Besten aus. Aber das wirkt fuer mich dann mittlerweile doch zu altbacken. Also bin ich mittlerweile bei den Gnome-Terminals gelandet.
Ubuntu ist immer so nett und patcht dort die Transparenz rein. Der Standard OpenBSD Port hat das nicht, aber es ist ganz einfach das nachzuholen.


WENN IHR DAS AUCH MACHEN WOLLT: Hier sind die Schritte, die es da bei mir gebraucht hatte.
Ich hatte vorher schon als Paket GNOME und GNOME-TERMINAL installiert, und noch ein paar Build Tools wie meson, ninja und gtar.

Wie immer gilt: BENUTZUNG AUF EIGENE GEFAHR!!!




1. Sourcen und Patch herunterladen.
Z.B. hier: https://launchpad.net/ubuntu/+source/gnome-terminal/3.54.0-1ubuntu1

Code:
; mkdir tmp
; cd tmp
; ftp https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/gnome-terminal/3.54.0-1ubuntu1/gnome-terminal_3.54.0.orig.tar.bz2
; ftp https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/gnome-terminal/3.54.0-1ubuntu1/gnome-terminal_3.54.0-1ubuntu1.debian.tar.xz

Und dann auspacken

Code:
; gtar xvfj gnome-terminal_3.54.0.orig.tar.bz2
; gtar xvfJ gnome-terminal_3.54.0-1ubuntu1.debian.tar.xz

2. Patchen, automatisiert
Code:
; cd gnome-terminal-3.54.0
; cat ../debian/patches/0001-* | patch -p1


3. Build environment Patchen, von Hand
Jetzt muss noch die Abhaengigkeit von der libdl rausgenommen werden.

Code:
; vi meson.build

Ungefaehr Zeile 232-241 sollten danach so aussehen:

Code:
# Check for functions

#libdl_dep = cxx.find_library('dl')
#
#check_dl_functions_required = [
#  'dlsym',
#]
# 
#foreach func: check_dl_functions_required
#  assert(cxx.has_function(func, dependencies: libdl_dep), func + ' not found')
#endforeach
    
# Compiler flags

Und in der Datei src/meson.build sind es die Zeilen 256-269:

Code:
; vi src/meson.build
server_deps = [
  gio_dep,
  gio_unix_dep,
  glib_dep,
  gtk_dep,
#  libdl_dep,
  libhandy_dep,
  pcre2_dep,
  pthreads_dep,
  schemas_dep,
  uuid_dep,
  vte_dep,
  x11_dep,
]

4. Sourcen patchen, von Hand

In der Datei terminal-util.cc wird noch die OpenBSD fremde Funktion strchrnul aufgerufen. Ich habe sie einfach durch strchr ersetzt (KEINE AHNUNG, WAS DAS HEISST).
Code:
; vi src/terminal-util.cc
:1,$s/strchrnul/strchr/g
:wq!


5. Build

Das Gnome Terminal baut man mit meson und ninja. (Warum auch immer..)
Code:
; meson setup builddir
; cd builddir
; ninja

6. Installieren


Danach noch ein kurzes
Code:
; doas ninja install

Und ihr muesst GNOME neu starten.
 

Anhänge

  • transparent_terminal.webp
    transparent_terminal.webp
    65,7 KB · Aufrufe: 37
Zurück
Oben