GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erstellen Sie mit dem Linux MLVWM einen Retro-Apple-Desktop

Stellen Sie sich vor, Sie reisen in eine alternative Geschichte, in der Apple II GS und MacOS 7 auf Open-Source-POSIX aufgebaut wurden und dieselben Konventionen wie modernes Linux verwenden, wie Klartext-Konfigurationsdateien und modulares Systemdesign. Was hätte ein solches Betriebssystem seinen Benutzern ermöglicht? Sie können diese Fragen (und mehr!) mit dem Macintosh-ähnlichen Virtual Window Manager (MLVWM) beantworten.

MLVWM installieren

MLVWM ist keine einfache Installation und befindet sich wahrscheinlich nicht im Software-Repository Ihrer Distribution. Wenn Sie die Zeit haben, eine schlecht übersetzte README-Datei zu entschlüsseln, bearbeiten Sie einige Konfigurationsdateien, sammeln Sie einige alte .xpm und passen Sie deren Größe an Bilder und bearbeiten Sie eine oder zwei Xorg-Einstellungen, dann können Sie MLVWM erleben. Ansonsten ist dies ein neuartiger Fenstermanager mit seiner letzten Version aus dem Jahr 2000.

Um MLVWM zu kompilieren, benötigen Sie imake installiert, die das xmkmf bereitstellt Befehl. Sie können imake aus dem Software-Repository Ihrer Distribution installieren oder es direkt von Freedesktop.org herunterladen. Angenommen, Sie haben das xmkmf Befehl, wechseln Sie in das Verzeichnis, das den MLVWM-Quellcode enthält, und führen Sie diese Befehle aus, um ihn zu erstellen:

$ xmkmf -a
$ make

Nach dem Erstellen wird die kompilierte Datei mlvwm binär befindet sich im mlvwm Verzeichnis. Verschieben Sie es an einen beliebigen Ort in Ihrem Pfad, um es zu installieren:

$ mv mlvwm/mlvwm /usr/local/bin/

Bearbeiten der Konfigurationsdateien

MLVWM ist jetzt installiert, aber es wird nicht richtig gestartet, ohne mehrere Konfigurationsdateien anzupassen und die erforderlichen Bilddateien sorgfältig anzuordnen. Beispielkonfigurationsdateien befinden sich in sample_rc Verzeichnis des heruntergeladenen Quellcodes. Kopieren Sie die Dateien Mlvwm-Netscape und Mlvwm-Xterm in Ihr Home-Verzeichnis:

$ cp sample_rc/Mlvwm-{Netscape,Xterm} $HOME

Bewegen Sie den Mlvwmrc Datei nach $HOME/.mlvwmrc (Ja, Sie müssen ein kleines "m" verwenden, obwohl die Beispieldatei täuschenderweise mit einem Großbuchstaben beginnt):

$ cp sample_rc/Mlvwmrc $HOME/.mlvwmrc

Öffnen Sie .mlwmrc und finden Sie die Zeilen 54–55, die den Pfad (den "IconPath") für die Pixmap-Bilder definieren, die MLVWM in seinen Menüs und seiner Benutzeroberfläche verwendet:

# Set icon search path. It needs before "Style".
IconPath /usr/local/include/X11/pixmaps:/home2/tak/bin/pixmap

Passen Sie den Pfad an ein Verzeichnis an, das Sie mit Ihren eigenen Bildern füllen werden (ich schlage vor, $HOME/.local/share/pixmaps zu verwenden ). MLVWM stellt keine Pixmaps bereit, also liegt es an Ihnen, Pixmap-Symbole für den von Ihnen erstellten Desktop bereitzustellen.

Tun Sie dies auch dann, wenn Sie Pixmaps an anderer Stelle auf Ihrem System haben (z. B. /usr/share/pixmaps ), da Sie die Größe der Pixmaps anpassen müssen und dies wahrscheinlich nicht auf systemweiter Ebene tun möchten.

# Set icon search path. It needs before "Style".
IconPath /home/seth/.local/share/pixmaps

Pixmaps auswählen

Sie haben die .local/share/pixmaps definiert Verzeichnis als Quelle von Pixmaps, aber weder das Verzeichnis noch die Bilder existieren noch. Erstellen Sie das Verzeichnis:

$ mkdir -p $HOME/.local/share/pixmaps

Im Moment weist die Konfigurationsdatei Menüeinträgen und UI-Elementen Bilder zu, aber keines dieser Bilder existiert auf Ihrem System. Um dies zu beheben, lesen Sie die Konfigurationsdatei und suchen Sie alle .xpm Bild. Fügen Sie für jedes in der Konfiguration aufgeführte Bild ein Bild mit demselben Dateinamen (oder ändern Sie den Dateinamen in der Konfigurationsdatei) zu Ihrem IconPath-Verzeichnis hinzu.

Die .mlvwmrc Datei ist gut kommentiert, sodass Sie sich einen Überblick darüber verschaffen können, was Sie bearbeiten. Das ist sowieso nur ein erster Durchgang. Sie können später jederzeit zurückkehren und das Aussehen Ihres Desktops ändern.

Hier sind einige Beispiele.

Dieser Codeblock setzt das Symbol in der oberen linken Ecke des Bildschirms:

# Register the menu
Menu Apple, Icon label1.xpm, Stick

Die label1.xpm Das Bild wird tatsächlich in der Pixmap des Quellcode-Downloads bereitgestellt Verzeichnis, aber ich bevorzuge die Verwendung von Penguin.xpm von /usr/share/pixmaps (auf Slackware). Was auch immer Sie verwenden, Sie müssen Ihre benutzerdefinierte Pixmap in ~/.local/share/pixmaps platzieren und ändern Sie entweder den Namen der Pixmap in der Konfiguration oder benennen Sie die Pixmap-Datei um, damit sie mit dem übereinstimmt, was derzeit in der Konfigurationsdatei steht.

Dieser Codeblock definiert die im linken Menü aufgelisteten Anwendungen:

"About this Workstation..." NonSelect, Gray, Action About
"" NonSelect
"Terminal"      Icon mini-display.xpm, Action Exec "kterm" exec kterm -ls
"Editor"  Action Exec "mule" exec mule, Icon mini-edit.xpm
"calculator" Action Exec "xcal" exec xcalc, Icon mini-calc.xpm
END

Indem Sie der gleichen Syntax wie in der Konfigurationsdatei folgen, können Sie die Pixmaps anpassen und Ihre eigenen Anwendungen zum Menü hinzufügen (zum Beispiel habe ich mule geändert zu emacs ). Dies ist Ihr Tor zu Ihren Anwendungen in der MLVWM-GUI, also listen Sie alles auf, auf das Sie schnell zugreifen möchten. Sie können auch eine Verknüpfung zu Ihrem /usr/share/applications einfügen Ordner.

"Applications" Icon Penguin.xpm, Action Exec "thunar /usr/share/applications" exec thunar /usr/share/applications 

Nachdem Sie die Konfigurationsdatei bearbeitet und Ihre eigenen Bilder zu Ihrem IconPath-Verzeichnis hinzugefügt haben, müssen Ihre Pixmaps alle auf ungefähr 16 x 16 Pixel skaliert werden. (MLVWM ist in seinen Standardeinstellungen nicht konsistent, daher gibt es Raum für Variationen.) Sie können dies als Massenaktion mit ImageMagick tun:

$ for i in ~/.local/share/mlvwm-pixmaps/*xpm ; do convert -resize '16x16^' $i; done

MLVWM starten

Der einfachste Weg, MLVWM zum Laufen zu bringen, besteht darin, Xorg den Großteil der Arbeit erledigen zu lassen. Zuerst müssen Sie eine $HOME/.xinitrc erstellen Datei. Ich habe mir dieses von Slackware ausgeliehen, das es von Xorg ausgeliehen hat:

#!/bin/sh
# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then
    xrdb -merge $sysresources
fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f $userresources ]; then
    xrdb -merge $userresources
fi

if [ -f $usermodmap ]; then
    xmodmap $usermodmap
fi

# Start the window manager:
if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then
  exec ck-launch-session /usr/local/bin/mlvwm
else
  exec /usr/local/bin/mlvwm
fi

Laut dieser Datei ist die Standardaktion für startx Befehl ist, MLVWM zu starten. Ihre Distribution hat jedoch möglicherweise andere Vorstellungen darüber, was passiert, wenn Ihr Grafikserver startet (oder für einen Neustart beendet wird), sodass Ihnen diese Datei möglicherweise wenig nützt. Bei vielen Distributionen können Sie eine .desktop-Datei hinzufügen Datei nach /usr/share/xsessions um es im GDM- oder KDM-Menü aufzulisten, erstellen Sie also eine Datei namens mlvwm.desktop und geben Sie diesen Text ein:

[Desktop Entry]
Name=Mlvwm
Comment=Macintosh-like virtual window manager
Exec=/usr/local/bin/mlvwm
TryExec=ck-launch-session /usr/local/bin/mlvwm
Type=Application

Melden Sie sich von Ihrer Desktop-Sitzung ab und wieder bei MLVWM an. Standardmäßig meldet Sie Ihr Sitzungsmanager (KDM, GDM oder LightDM, abhängig von Ihrer Einrichtung) weiterhin bei Ihrem vorherigen Desktop an, sodass Sie dies überschreiben müssen, bevor Sie sich anmelden.

Mit GDM:

Mit SDDM:

Starten mit roher Gewalt

Wenn MLVWM nicht gestartet werden kann, versuchen Sie, XDM zu installieren, einen schlanken Sitzungsmanager, der /usr/share/xsessions nicht berücksichtigt und macht stattdessen einfach das, was die .xinitrc des authentifizierten Benutzers ist verbietet.

Bauen Sie Ihren eigenen Retro-Apfel

Weitere Linux-Ressourcen

  • Spickzettel für Linux-Befehle
  • Spickzettel für fortgeschrittene Linux-Befehle
  • Kostenloser Online-Kurs:RHEL Technical Overview
  • Spickzettel für Linux-Netzwerke
  • SELinux-Spickzettel
  • Spickzettel für allgemeine Linux-Befehle
  • Was sind Linux-Container?
  • Unsere neuesten Linux-Artikel

Der MLVWM-Desktop ist unpoliert, unvollkommen, genau und macht jede Menge Spaß. Viele der Menüoptionen, die Sie sehen, sind nicht implementiert, aber Sie können sie aktiv und sinnvoll gestalten.

Dies ist Ihre Chance, in der Zeit zurückzugehen, die Geschichte zu ändern und die Computer der alten Schule von Apple zu einer Bastion von Open Source zu machen. Seien Sie ein Revisionist, entwerfen Sie Ihren eigenen Retro-Apple-Desktop und haben Sie vor allem Spaß.


Linux
  1. Finden Sie Dateien und Verzeichnisse unter Linux mit dem Befehl find

  2. Überprüfen Sie den Dateistatus unter Linux mit dem Befehl stat

  3. Erste Schritte mit dem Linux-tac-Befehl

  4. Kopieren und Einfügen in der Linux-Befehlszeile mit xclip

  5. So erweitern Sie die Funktionalität Ihres Linux-Desktops mit PlexyDesk

Lernen Sie Linux mit dem Raspberry Pi

Einführung in das Linux-Dateisystem

So beenden Sie Prozesse auf dem Linux-Desktop mit xkill

Linux-WC-Befehl mit Beispielen

Sichern Sie Linux mit der Sudoers-Datei

Die 15 besten File-Sharing-Software für Linux-Desktop