NixOS oder bei Fedora bleiben?

DrCox1911

Lt. Junior Grade
Registriert
Juni 2018
Beiträge
504
Servus zusammen,

ich bin schon seit einigen Jahren Fedora User und eigentlich auch soweit zufrieden.
Dabei läuft Fedora auf allen meinen Endgeräten, das betrifft:
  1. Laptop
  2. Haupt-PC
  3. Zweit-PC (den nutzt die Freundin, hauptsächlich für Banking und hin und wieder Sims 4)
Mein Laptop (Framwork 16) wird dabei zu 99% zur Softwareentwicklung mit .Net Core verwendet. Als IDE benutze ich JetBrains Rider.
Der Haupt-PC wird ebenfalls zu ca. 40% zur Sofwareentwicklung mit .Net Core verwendet, die anderen 60% spiele ich allerlei Spiele damit (z.B. Anno 1800, S.T.A.L.K.E.R G.A.M.M.A, Hunt Showdown, hin und wieder SPTarki, RDR2, ...).

Gerade bei der Robustheit bin ich bisher von Fedora mehr als begeistert, egal was ich mit meinem System mache, ich habe es bisher noch nicht zerschießen können. Ebenfalls mit der Peformance bei den von mir gespielten Spielen kann ich mich bisher nicht beklagen.
Was mich dabei aber immer etwas nervt betrifft die Softwareentwicklung. Die mitgelieferte .Net Version hängt immer etwas hinterher, so z.B. gibt es aktuell die 8.0.203, ich hänge aber noch bei 8.0.102. Ist jetzt nich schlimm, eher nervig ist es bei komplett neuen Versionen. So musste ich z.B. ein paar Monate auf .Net 8 warten.

Wäre das denn bei NixOS wirklich besser? Ich habe es noch nicht auf einer VM aufgesetzt, bin aber aktuell schon mal am Einlesen und Informieren.

Wie würdet ihr denn vorgehen? Ich will wenn dann gerne NixOS wieder auf allen PCs haben, d.h. auch bei meiner Freundin. Wirklich etwas installieren muss sie eigentlich nicht, aber bisher läuft Fedora eigentlich komplett schmerzfrei auf allen Systemen, wenn da halt nicht die verspäteten .Net Releases wären.
 
Probiers in der VM, dann bist du schon ein Schritt weiter.
 
DrCox1911 schrieb:
bisher läuft Fedora eigentlich komplett schmerzfrei auf allen Systemen, wenn da halt nicht die verspäteten .Net Releases wären.
Fedora folgt dem Ansatz 'Cutting Edge anstatt bleeding Edge'. Also alles was unwichtig ist und keine Probleme machen kann, ist gerne mal sehr schnell up to date dafür sind andere Komponenten auch mal etwas hinten. Sehr viel aktueller als Fedora wird es mit anderen Distros aber nicht wirklich werden, wenn du nicht gerade irgendeine auf Entwickler optimierte Distro verwenden willst die dafür wieder andere Probleme hat.

Kurz und knapp: Schau dir NixOS wie geplant in der VM an aber erwarte keine Wunder. Die Idee dahinter ist zwar ziemlich gut aber wie die praktische Umsetzung ist weiß halt keiner (bzw. ich nicht). Bei Fedora steht ein riesiges Unternehmen dahinter das dafür sorgt, dass alles läuft. Bei NixOS sind das vermutlich deutlich weniger...

Debian Testing könnte man sich vermutlich noch kurz ansehen da dort die Software auch meist ziemlich aktuell ist und ziemlich problemlos läuft allerdings habe ich keine Ahnung wie es dort mit dem Gaming aussieht.
 
  • Gefällt mir
Reaktionen: GTrash81 und madmax2010
Also, wenn du dem Standard Channel (23.11) bei NixOS nutzt, sind sehr viele der Pakete auch etwas hinterher. Es gibt auch die unstable Channel die dann ziemlich cutting edge sind, aber eben wie der Name auch sagt nicht super stabil.
Wenn du da etwas mehr Kontrolle haben willst, kannst du mit Flakes den Channel quasi per Paket steuern. Das ist aber schon teil der spezielleren Konfiguration von NixOS wo die Doku ihre erheblichen schwächen zu zeigen beginnt.

Das große Kernfeature von NixOS die deklarative Konfiguration und damit das Generationenmodel des Systems und die Reproduzierbarkeit sowohl auf der selben als auch mit minimalen Anpassungen auf beliebiger Hardware sehe ich in deinem Beschriebenen Anwendungsfall aber nicht.
Entsprechend würde ich es dir wenn als Lern- und Spaß-Projekt nahelegen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: GTrash81
  • Gefällt mir
Reaktionen: jb_alvarado, Der Lord, Redundanz und eine weitere Person
DrCox1911 schrieb:
Wie würdet ihr denn vorgehen?

Weniger theoretisieren, mehr versuchen.

In der Zeit die du für den Beitrag verwendet hast, wäre NixOS schon locker zumindest virtuell am laufen.
 
Ich würde nur Distro wechseln wenn das auch sonst einen Mehrwert bietet. Gerade in Hinblick auf die letzte xz Lücke sieht man, wie viel vertrauen in den Distributor nötig ist. Gut, das die neueste Version noch nirgends in Stable Channels war (ich hab KA von Arch). Normalerweise würde ich also darauf vertrauen, dass es einen Grund für die Verzögerte Auslieferung gibt. Manchmal ist das distrospezifisch, machmal nicht.

Der TE hat eh geschrieben, dass er eine VM aufsetzt - er will halt die volle Distro-Test-Journey ;-) ich verstehs.
 
Danke für all die Antworten, ich habe inzwischen die VM am Laufen und auch schon etwas rumprobiert.
Prinzipiell finde ich das Konzept von NixOS nicht schlecht, aber was ich ziemlich schnell gemerkt habe: für etliche Packages würde ich dann auf den unstable channel gehen müssen. Bei meiner ersten Recherche wegen .Net war mir das für z.B. .Net9 klar, aber dass mein Fedora in doch etlichen Packages deutlich neuer ist als NixOS hat mich dann stark überrascht.

So z.B. bei Lutris und Heroic. Gerade da hat mich dann NixOS direkt wieder abgeschreckt und bin mit Fedora als "almost-bleeding-edge" wohl doch besser beraten (?).

Das Konzept von möglichen, granular geteilten Konfigurationen von NixOS hätte aber seinen Charme, so könnte ich z.B. das Coding-Setup zwischen Main-PC und Laptop einheitlich halten und einfach "klonen".

Ich werde mal noch mit der VM etwas rumspielen, aber der ständige Wechsel für gewisse Flakes auf den unstable channel scheint mir nicht zielführend für mein Vorhaben.

Was ich bei Fedora gerade auf .Net halt nicht verstehe: 8.0.203 ist ein Security Update, da streuben sich mir etwas die Haare, dass ich das nicht frühzeitiger bekomme.
 
Wenn es dir vor allem um deine devumgebung geht, wieso nutzt du da dann nicht einfach entsprechende Tools um die Umgebung zu verwalten? Sowas wie venvs in Python, keine Ahnung was es da in .Net gibt. Aber eine moeglichkeit waere sonst sowas wie Dev Container in VSCode, nuzte ich mittlerweile sehr begeistert:

https://code.visualstudio.com/docs/devcontainers/containers
 
  • Gefällt mir
Reaktionen: DrCox1911
Kurzer Klarstellung:
Wenn wir bei Nixos von stable (23.11) und unstable sprechen, unterscheiden wir uns um einige Stunden.

unstable, last commit: 2024-04-03T16:51UTC: https://github.com/NixOS/nixpkgs/commits/nixos-unstable
23.11, last commit: 2024-04-03T18:25UTC: https://github.com/NixOS/nixpkgs/commits/nixos-23.11

Aber das ist bei NixOS auch nicht weiter problematisch, da man mit Flakes einfach den Commit angeben kann.
Oder eine zweite Registry-Quelle mit einem Commit angibt, der dann nur für die gewünschten Pakete gilt.
Musste ich in 3 Jahren NixOS so etwa 2 oder 3 Male machen, bei kleinen Nischenpaketen.

---

Kann mir überhaupt nicht mehr vorstellen, konzeptionell irgendetwas anderes als deklarative Konfiguration zu nutzen.

Auf der Arbeit richte ich hin und wieder Windows-Geräte ein, erst letzten Montag: Dauer 7h.
Selbst mit Paketmanagern wie Chocolatey nervig, weil zu jedem Programm dokumentiert sein muss, was man vor zig Jahren mal konfiguriert hat und weshalb.

Hier auf einen Rechner vor 2 Wochen NixOS drauf, inkl. leichter Konfig-Anpassung: Dauer 20min.

Größte Schwachstelle ist die Dokumentation. Dafür eher nicht als Hobby-Projekt geeignet, wenn man den Rechner schnell benötigt. Als Softwareentwickler sollte das aber kein größeres Problem sein.
 
Fedora und NixOS sind sehr unterschiedlich, also eigentlich kaum zu vergleichen.

NixOS hat wie schon erwähnt wurde sehr fortschrittliche Konzepte, wo sie anderen Distros teilweise weit voraus sind, aber nichtsdestotrotz hat das auch Nachteile: schwer zu verstehen beim Einstieg selbst für Linux-Veteranen und suboptimale Dokus.

Ich schreibe das jetzt vor allem für andere interessierte Mitleser (da der OP sich ja schon gut informiert hat), dass NixOS wirklich gut ist, aber man es sich gut überlegen sollte, ob man sich auf dessen Konzepte einlassen will oder kann. Es erfordert Einarbeitung, weshalb ich es einem Linux-Einsteiger nicht empfehlen würde. Fedora dagegen ist eine gute "herkömmliche" Distri so wie fast alle anderen, mit Silverblue/Kinoite gibt's auch noch Immutable-Ableger, die NixOS zumindest ein kleines Stück näher kommen, ohne dabei Einfachheit einzubüßen.
 
  • Gefällt mir
Reaktionen: DrCox1911
mastaqz schrieb:
Wenn wir bei Nixos von stable (23.11) und unstable sprechen, unterscheiden wir uns um einige Stunden.
Ähm, aber hier nur auf die Commit-Zeitstempel zu schauen kommt meiner Meinung nach zu kurz. So bekomme ich bei mir im stable Channel nur das .NET SDK 8.0.101, für das von mir oben angesprochene .NET SDK 8.0.203 muss ich bei mir in der VM zumindest auf den unstable Channel gehen.

Selbiges z.B. mit Lutris, das habe ich bei mir in Fedora direkt als 0.5.16 im Repo, bei NixOS unter meiner VM dagegen im stable Channel nur die 0.5.14.

Vielleicht mache ich aber auch etwas falsch und meine Channel sind nicht aktuell? Zumindest spuckt mir das so auch die Seite https://search.nixos.org/packages aus.
jenzen schrieb:
Fedora dagegen ist eine gute "herkömmliche" Distri so wie fast alle anderen
Ja, bin wie gesagt bis auf die langsame Auslieferung des dotnet SDK auch vollkommen zufrieden mit Fedora, das nicht ganz Bleeding Edge aber trotzdem sehr aktuell passt mir bisher am besten und kann es nur wärmstens empfehlen.
NJay schrieb:
Aber eine moeglichkeit waere sonst sowas wie Dev Container in VSCode, nuzte ich mittlerweile sehr begeistert:
Danke für das erneute "in die Erinnerung rufen". Habe mir Dev-Container vor etlichen Monate mal angeschaut, da war mir die IDE Integration aber noch zu dürftig. Denke, dass sich da inzwischne einiges getan hat und werde es die kommende Woche mal testen, wie gut ich damit dann in Rider arbeiten kann.

Wäre auf alle Fälle eine mehr als gute Lösung für mich, wenn das alles reibungslos klappt.
 
  • Gefällt mir
Reaktionen: NJay
Zurück
Oben