Pygame auf Ubuntu installieren

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
Python 1
User
Beiträge: 2
Registriert: Freitag 14. Februar 2025, 20:09

Hallo,
Gibt es einen Befehl mit dem man auf Linux Ubuntu 24.04.1 LTS pygame installieren kann.
nezzcarth
User
Beiträge: 1729
Registriert: Samstag 16. April 2011, 12:47

Das empfohlene Vorgehen ist, dass du dir ein virtual environment für dein Projekt anlegst, es aktivierst und da dort pygame dann mit pip installierst (pip install pygame). Zum Einstieg siehe: https://wiki.ubuntuusers.de/venv/ Das systemweite installieren von Paketen für eigene Projekte über apt ist hingehen nicht empfehlenswert.
Benutzeravatar
__blackjack__
User
Beiträge: 13882
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Wobei Pygame bei Ubuntu eigentlich auch als Package über ``apt`` installierbar sein sollte. Ist ja nix exotisches.
“Man wirft uns vor, wir hätten kein Programm, das Programm sei nicht umsetzbar, und die anderen Parteien hätten das alles auch im Programm.“ — Pavel Mayer, Piratenpartei
Benutzeravatar
noisefloor
User
Beiträge: 4118
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Genau, pygame ist über die Paketquellen installierbar, siehe https://packages.ubuntu.com/search?keyw ... ection=all. Wenn man eine neuere oder die neuste Version braucht wäre der Weg dann via pip.

Gruß, noisefloor
nezzcarth
User
Beiträge: 1729
Registriert: Samstag 16. April 2011, 12:47

Mir ist bewusst, dass man pygame über apt installieren kann. Ich selbst bin aber inzwischen dazu übergegangen, keine Python-Pakete des OS mehr zu benutzen, sondern für meine eigenen Sachen grundsätzlich alles in Projekt-spezifische venvs zu installieren. Und ich dachte bisher eigentlich, das wäre inzwischen weitestgehend Konsens; anscheinend aber nicht :)
Benutzeravatar
noisefloor
User
Beiträge: 4118
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

@nezzcarth: grundsätzlich mache ich das auch. Aber primär, weil ich a) entweder Windows benutze und es da keine Python-Module OOTB gibt ;-) und b) bei Ubuntu und Raspberry Pi OS viele Python-Module schlicht zu alt sind bzw. X Bugfix-Releases hinterher.

Aber man natürlich trotzdem via apt installieren. Was ja auch mit der "Meinung" von pip einhergeht:

This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.

If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.

If you wish to install a non-Debian packaged Python application,
it may be easiest to use pipx install xyz, which will manage a
virtual environment for you. Make sure you have pipx installed.

Gruß, noisefloor
nezzcarth
User
Beiträge: 1729
Registriert: Samstag 16. April 2011, 12:47

@noisefloor: Wenn die Paketquellen einer Linux-Distribution ein Paket für ein Python-Modul bereitstellen, gehe ich persönlich davon aus, dass es in erste Linie enthalten ist, weil es als Abhängigkeit von anderer Software benötigt wird, nicht unbedingt als Selbstzweck; ich kann das mitbenutzen, aber es ist nicht primär dafür gedacht und es wird auch keine Rücksicht genommen. Es ist ein System-weites Paket und die Versionsnummer ist darauf abgestimmt, im Kontext aller anderen Pakete, die das direkt oder indirekt brauchen, zu funktionieren. Manche Distributionen sind da vielleicht etwas lockerer/strenger und bei einigen Python-Modul gibt es da sich auch Grenzfälle. Aber wenn man selbst Kontrolle über die Version haben möchte, sollte man die zusätzlichen 30 Sekunden investieren und ein virtual environment aufsetzen, finde ich. Oder zumindest das Paket dann per pip für den user installieren, was ja auch geht.
Benutzeravatar
noisefloor
User
Beiträge: 4118
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,
Wenn die Paketquellen einer Linux-Distribution ein Paket für ein Python-Modul bereitstellen, gehe ich persönlich davon aus, dass es in erste Linie enthalten ist, weil es als Abhängigkeit von anderer Software benötigt wird, nicht unbedingt als Selbstzweck;
Die Aussage stimmt in der Pauschalität für Ubuntu sicher nicht. Bei Paketen aus main - vielleicht bzw. wahrscheinlich. Bei Paketen in universe: ziemlich sicher nicht. Da kann jeder Pakete paketieren und Vorschlagen. Die werden dann von den MOTW geprüft und wenn i.O. durchgewunken.

Canonical sagt zum universe Repo selber: "The universe component is a snapshot of the free, open-source, and Linux world. It houses almost every piece of open-source software, all built from a range of public sources.".

Wie andere Distros das machen weiß ich nicht.

Gruß, noisefloor
nezzcarth
User
Beiträge: 1729
Registriert: Samstag 16. April 2011, 12:47

noisefloor hat geschrieben: Sonntag 16. Februar 2025, 12:30 Bei Paketen aus main - vielleicht bzw. wahrscheinlich. Bei Paketen in universe: ziemlich sicher nicht. Da kann jeder Pakete paketieren und Vorschlagen.
Aber ist "universe" nicht ein Repo, das man explizit aktivieren muss und bei dem Canonical auch sagt, dass man wissen sollte worauf man sich einlässt (so kenne ich es, wenn ich mich nicht vertue, von den Ubuntu-Systemen, die betreue)? Ansonsten hast du recht. Ich bin von den Hauptrepositorieren ausgegangen, nicht von denen, die von die Community. Bei mir unter Arch gilt meine Behauptung für AUR-Pakete natürlich auch nicht, aber an diese Pakete kommt man nur ran, wenn man explizit etwas tut und mir war aber nicht klar, dass so solche Pakete bei Ubuntu anscheinend zum Standard gehören (?).
Benutzeravatar
noisefloor
User
Beiträge: 4118
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

also universe ist bei Ubuntu schon lange aktiviert. Und selbst bei _U_buntu landen in der Grundinstallation Pakete aus "universe" auf der Platte. Zumindest bei der Desktop-Installation. Beim Server weiß ich es nicht genau. Bei allen Desktop-Derivaten muss universe aktiv sein, weil da die Desktop-Umgebungen drin liegen.

Aber grundsätzlich bin ich bei dir: zum "richtigen" Entwickeln immer ins venv installieren. Um mal schnell was auszuprobieren kann man IMHO auch temporär ein Paket aus den Quellen nehmen.

Gruß, noisefloor
Antworten