35
submitted 1 year ago by theneverfox@pawb.social to c/linux@lemmy.ml

Between wanting to do more with local LLMs, wsl annoyances, and the direction tech companies have been going lately, I think it's time I start exploring a full Linux migration

I'm a software dev, I'm comfortable in the command line, and I used to write the node configuration piece of something similar to chef (flavor/version agnostic setup of cloud environments)

So for me, Linux has always been a "modify the script and rebuild fresh" kind of deal... Even my dev VMs involved a lot of scripts and snapshots. I don't enjoy configuration and I really hate debugging it, but I can muddle through when I have to

Web searches have pushed me towards Ubuntu for LLM work, but I've never been a big fan of the window Managers. I like little flourishes like animation and lots of options I can set graphically, I use multiple desktop multiple monitors

I've tried the one it comes standard with, gnome, and kde (although it's been about 5 years since I've last given them a real shot).

I'm mostly looking for the most reasonable footprint that is "good enough", something that feels polished to at least the Windows XP level - subtle animations instead of instant popups, rounded borders, maybe a bit of transparency here and there.

I'm looking at Ubuntu w/

  • kde w/ plasma (I understand it's very configurable, I don't love the look and it seems to be a bigger footprint

  • budgie (looks nice, never heard of it before today)

  • kylin (looks very Windows 10 which is nice, a bit skeptical about the Chinese focus)

  • mate (I like the look, but it seems a bit dubiously centralized)

  • unity (looks like the standard Ubuntu taken to it's natural conclusion)

  • rhino Linux (something new which makes me skeptical, but pretty and seems more like existing tools packaged together which makes me think the issues might not impact actual workflow)

  • anything the community is big on for this, personally I'd pick opensuze, but I need to maximize compatibility with bleeding edge LLM projects

My hardware and hard requirements are:

  • nvidia 1060ti
  • ryzen 5500u
  • 16g ram
  • 4 drives nearly full, because it's a computer of Theseus running the same (upgraded) vista license that came with the case like 15 years ago
  • multi desktop, multi monitor
  • can handle a lot of browser Windows/tabs
  • ideally the setup is just a package mana ger install script with all my dependencies
  • gaming support would be nice, but I'll be dual booting for VR anyways

I've been out of the game for a while, I'd love to hear what the feeling is in the community these days

(Side note, is pine as cool a company as it seems?)

top 23 comments
sorted by: hot top controversial new old
[-] gunpachi 12 points 1 year ago* (last edited 1 year ago)

My recommendstions would be -

  1. Linux Mint / vanilla debian
  2. Fedora / Nobara
  3. Opensuse tumbleweed (Like fedora, but rolling release and has btrfs snapshots configured out of the box)
  4. Endavour OS / vanilla arch ( if you want to configure everything manually)
  5. NixOS (very different distro, you can configure your entire system with a single file)

People have a misconception that Linux Mint is a newbie distro but don't let that stop you from using it. It's quite stable and will serve you very well.

For Desktop Environment -

You can try out XFCE, it doesnt look great out of the box, but it has all the options you'll need to make it look to your liking.

Then there is also Cinnamon, it doesn't have many configuration options but is really nice in general. The flagship version of Linux Mint comes with Cinnamon.

[-] HumanPerson@sh.itjust.works 1 points 1 year ago

I agree with those recommendations recommendations but perhaps the Debian based Mint instead. I am not aware of any major change Ubuntu has made to Debian other than DE and spyware. Also budgie desktop looks great and never broke / broke anything for me.

[-] owenfromcanada@lemmy.world 11 points 1 year ago

I've been using Mint as a daily driver and it's the first distro/de that has worked as a full replacement. Everything working out of the box, though I changed the default Nvidia driver from the open source to the proprietary one (and Mint even provided a handy utility for that). My dual monitor setup works great.

I don't even dual boot for gaming--with Lutris, most things work right away or with a little tweaking. Though admittedly I don't play the newest games.

All the benefits of Ubuntu, with flatpak and a nice DE.

[-] Diplomjodler@feddit.de 7 points 1 year ago

Seconded. If you want something that just works so you can get on with your other stuff, Mint fits the bill perfectly.

[-] unbuckled@lemm.ee 7 points 1 year ago

I’m really happy with Fedora Workstation. I actually think Gnome is pretty great these days.

[-] Ultra980@lemmy.world 5 points 1 year ago

From how you've described modifying your distro, that's literally NixOS. Your entire config is declared in a git repo, when you update the system it rebuilds it from that repo. But you'll have to learn the nix language, and it's not a easy-to-use, beginner-friendly distro.

[-] nottheengineer@feddit.de 5 points 1 year ago

You'll probably want KDE as it has the most options to set graphically and still just works out of the box. It has a theme store so you can just try a few different ones.

The footprint is still about a hundred times smaller than windows, so don't worry about that.

For a distro, I'd recommend not using ubuntu because it tries to force snaps on its users and they cause a ridiculous amount of issues. Especially if you want to do anything in python.

[-] cerement@slrpnk.net 4 points 1 year ago
  • “I don’t enjoy configuration and I really hate debugging it, but I can muddle through when I have to”
  • “but I’ve never been a big fan of the window Managers”
  • as for “bleeding edge” distros
    • NixOS (above)
    • Debian Sid (unstable branch) – Ubuntu is based on Debian but is community run, you’re not subject to the whims of Canonical’s choices
    • Arch or EndeavourOS (Arch based) – most of the problems people have is indiscriminate use of AUR (user packages) rather than sticking with official package channels
    • openSUSE Tumbleweed – rolling release channel of openSUSE, uses btrfs snapshots for rollback and recovery
[-] PipedLinkBot@feddit.rocks 2 points 1 year ago

Here is an alternative Piped link(s): https://piped.video/watch?v=DMQWirkx5EY

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I'm open-source, check me out at GitHub.

[-] rutrum@lm.paradisus.day 4 points 1 year ago* (last edited 1 year ago)

Never forget that no matter the distro (well most of them) you can install whatever desktop environment you want. That said, if you want to dip your toes in first time, I'd go with Mint. Its debian based, so most stackoverflow solutions will already have the apt install command you need for you. It has a variety of DE options out of the box on their website too.

Also, KDE and Gnome have changed a lot over the last 5 years. Id give each of them another shot.

EDIT: yes, pine is based

[-] BCsven@lemmy.ca 4 points 1 year ago

Since you want GUI config go with OpenSUSE. it has Yast2-gtk GUI for all admin config, server config, software install, etc. And if you mess anything up you do a boot from previous snapshot to get back to normal operation, if all is good issue snapper rollback command, and that snapshot is now your default boot. (No need to diagnose what is wrong, more time being productive) if you can't find a package in the GUI search (of default repos) then software.opensuse.org has OBS community and experimental packages (like arch AUR). During the install summary you can go into software details and remove all, or any packages you want, or add...so you don't have to do the full install of everything if you like more minimal system.

[-] gunpachi 1 points 1 year ago

I really enjoyed my time with tumbleweed some time back. The installer has a lot of useful options but it might be a bit daunting to new users. The installer could use a UI/UX improvement.

[-] BCsven@lemmy.ca 1 points 1 year ago

It is a lot of info. When I was new to it I did a few installs because I was getting used to what MBR vs GPT was, or separate home from system, etc. So many options in the disk partitioner during install without enough "this is used to do x, advantages are y", etc

[-] 52fighters@kbin.social 3 points 1 year ago

If you want Budgie, give Solus a try. It is an easy to maintain system, is rolling, stable, and independent.

[-] refurbishedrefurbisher@lemmy.sdf.org 2 points 1 year ago* (last edited 1 year ago)

For a DE, GNOME with Dash to Panel is a great Windows replacement. I'd recommend using X11 for now because Nvidia.

For a distro, NixOS is great. It is configured in the Nix language, which is very easy (IMO) to wrap your head around if you know any language. The documentation is procedurally generated and is quite good. The default repo is the largest default repo in any distro, with PRs handled in GitHub.

I like to set aliases to make life easier.

The only issue is it's difficult to get downloaded binaries running at times without creating a package for it. For games, I use steam-run (separate from Steam), for AppImages, appimage-run. Flatpaks just work.

It's either enjoyable or it's not. Depends on what you like. You can also copy your config to replicate your system on another device, even across arches or form factors, like from a PC to a laptop to a phone to a Raspberry Pi.

If that doesn't sound appealing, Arch is a fantastic, more standard distro, or Endeavor if you want a GUI, preconfigured install.

[-] panbroggi@feddit.it 2 points 1 year ago

I would recommend MX Linux. It's solid and has a lot of nice and simple plus that are very much appreciated (a menu entries editor, some selected packages not available in debian, grub editor and helper, a very active and welcoming community)

[-] vulkanbutt@startrek.website 1 points 1 year ago

After arch I've always told myself nixos; however, I never find a reason to switch from arch and xfce.

[-] Quazatron@lemmy.world 1 points 1 year ago

My workstation has been running Xubuntu LTS for over 10 years now, because I need a solid OS that I can upgrade easily and a desktop that doesn't get in my way.

Give it a try.

[-] sirico@feddit.uk 1 points 1 year ago

I like to not faff too much with my system for Dev work. I want to love pop but it eventually Bork's at some point. But I love pop shell as a simple window manager like experience with good shortcuts.

So I currently use open suse tw gnome with pop shell. I'm well aware that one day this won't work anymore but for me it's solid.

Despite my experience I would recommend looking at pop as it ticks a lot of the boxes you stated. Big community, window manager workflow, Ubuntu based, styled without being distracting.

[-] LinusWorks4Mo@kbin.social 1 points 1 year ago

pro tip use Linux distro from any of the lists posted here, use docker for your local llm, which are often Ubuntu based. consider getting a more modern graphics card like 30 series with 16gb vram

[-] theneverfox@pawb.social 1 points 1 year ago

I had a contract come up and had to shelve this for a bit, and your comment immediately annoyed me, because it really isn't what I wanted to hear

But it also stuck with me because it sounded like the advice I throw at new devs starting a project, knowing it's a PITA up front, but pays dividends pretty quick.
So I looked it up, and despite my bad experiences with docker and kubernetes (I was tasked with doing weird, off label things with them and it sucked), I've decided to take your advice and stop looking for docker workarounds

And since it seems like it comes from a place of experience, I figured I'd share a bit more about what I want to do and see if you had any more advice

Basically, I want to link together basic models trained to do different things, with the end goal being something between a conversation partner and an assistant. The idea being I build very specific prompts to bypass the limitations of smaller models - the first goal is to take one LLM and a conventional management program and summarize key information, then use very specific structured prompts to generate a response to be vocalized and metadata that changes the state of the management system.

My thought is to take something like alpaca or falcon 7B to track and summarize relevant information, feed it into another such model trained as a conversation partner with this input and output format, then throw together a web interface and do text<->speech on my phone or dev computer.

When it comes to neural networks and LLMs, I have a good understanding of the theory of them and a great one of how brains work, but I'm mostly looking to use these systems as a black box initially. My initial goals are to generate dialogue trees for games and maybe practice my Spanish with a chatbot - accuracy and capabilities don't matter too much, I've played with projects that could do this by just sending prompts to an endpoint

Down the road, the goal is to have something extremely modular. This tech is moving fast and I envision linking a bunch of modules together to perform different tasks, and as better modules come out or I add/upgrade hardware, I want to be able to write something to act like autopilot in my ide or pilot a model in a game engine

The main objective is to learn and to run agents on my own hardware. I'm looking for a side project that will be useful enough to keep up my interest, but also give me a starting point to modify from so I'm not sitting at a python terminal forcing myself through a tensor flow course before I get to the good stuff

Any thoughts, advice, or projects you think I should know about when starting this journey?

[-] dandroid@dandroid.app 1 points 1 year ago

I have used Ubuntu for about 5 years for my server, dual booting my desktop, and previously for a work laptop. In my experience, it's solid on desktops, but I always had some issues on the laptop with Ubuntu, I think related to the graphics drivers. Literally last night I installed openSUSE Tumbleweed on my laptop with KDE Plasma. Man, I love Plasma. It's so much better than Gnome. And I don't have any of the weird issues with the graphics driver, although I suspect that everything is running on the GPU, which will kill my battery. But I haven't don't any investigating yet. I did zero setup for Optimus. I just installed the proprietary Nvidia driver and launched a game to verify if it used the integrated graphics or dedicated graphics, and it was using the dedicated.

I like that literally all Linux software works for Ubuntu. By that I mean every software has a .deb package. You will always find guides for how to do things on Ubuntu. It's a great beginner's distro for this reason. There are even better distros based on it for beginners, too. I like apt a lot. It's quick. I'm used to the syntax and commands. It comes with repositories by default that give you a massive selection of software. I don't like that Ubuntu takes forever to get kernel upgrades. And the default apt repositories have very old versions of software.

OpenSUSE, while it's not nearly as popular as Ubuntu, and therefore won't have as many guides to do things, it fixes my issues with software being outdated and kernel upgrades lagging behind. Zypper is just okay imo. It's slow. But the syntax and commands make sense to me (I don't like pacman's syntax or commands at all).

Idk, I'm happy with OpenSUSE for now. But I have only had it installed for half a day now.

[-] Hexadecimalkink@lemmy.ml -1 points 1 year ago

You'll likely settle on Linux Mint because it just works.

this post was submitted on 11 Aug 2023
35 points (90.7% liked)

Linux

48179 readers
879 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS