linux

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

dark_stang, in cheapest new computer running linux <$500
@dark_stang@beehaw.org avatar

Desktop or laptop? Do you need peripherals included? Honestly for under $500 I’d highly suggest looking at refurbished machines. You’ll be able to pick up an off-lease Dell or Lenovo or HP system for < $300.

director,
@director@some.institute avatar

Tons of good options in the used enterprise market. 3-5 years old, usually some paths for basic upgrades, as well as a flood of part availability from all the other similar systems being off boarded that were broken and not resellable. Laptops can be a bit roughed up, but full sized and sff desktops are usually in great condition.

avidamoeba, in Firefox (finally) enables Wayland by default on their builds
@avidamoeba@lemmy.ca avatar

Requires login. Any word on when it’s making in stable?

joojmachine,

Updated the link, hopefully it works now. Weirdly enough I was sure the original link I shared didn’t require it

mojo, in Wayland is a cancer to the Linux desktop.

Schizo post

logifad501,

Wayland shills call everyone names but the moment anyone criticises it they call everyone they don’t like a bigot, get them cancelled and stop any discussion about the negatives of wayland. Why are they so insistent on forcing everyone to adopt an unfinished product? It’s almost like a big corporation with a hat wants to sabotage the linux desktop.

Flaky, in How do y'all deal with programs not supported on Linux?
@Flaky@iusearchlinux.fyi avatar

Depends. Steam and Proton handles most games and if not, I’ll check Lutris. FWIW, some games like Doom and RollerCoaster Tycoon (the Sawyer, 2D era) have open-source remakes that work on modern machines.

For regular software, I will try it in WINE and if it provides a good enough experience for daily use, I’ll keep it there. If it doesn’t, for any reason, I’ll stick it in a Windows VM. For instance, Exact Audio Copy will work fine in WINE provided you get .NET 3.5 installed for the MusicBrainz metadata plugin, but MusicBee has severe enough problems (font redirection problems, lag when scrolling, can’t drag tabs) for me that I just use it in a virtual machine or another PC. (I actually have another rig I’m considering using as a “jukebox” machine, since I have macOS on it and use it for Apple Music, so I’m compartmentalising my music to one machine if that makes sense)

Atemu, (edited ) in One single partition for Linux versus using a partition table?
@Atemu@lemmy.ml avatar

What you’re doing is perfectly fine.

It is however more of a mitigation for bad distro installers than general good practice. If the distro installers preserved /home, you could keep it all in one partition. Because such “bad” distro installers still exist, it is good practice if you know that you might install such a distro.

If you were installing “manually” and had full control over this, I’d advocate for a single partition because it simplifies storage. Especially with the likes of btrfs you can have multiple storage locations inside one partition with decent separation between them.

callyral, (edited ) in Wayland is a cancer to the Linux desktop.
@callyral@pawb.social avatar

wayland solved a vsync issue i had with firefox

  • obs works with full screen capture on wlroots and also with per-window capture on kde and gnome
  • redshift is for xorg. use gammastep on wayland instead
logifad501,

Good for you. Wayland solved zero issues and created hundreds of new ones for me and plenty of people.

TheAnnoyingFruit, in Comparison between NixOS vs blendOS vs Vanilla OS: what to pick and why?

I would check out something like universal-blue.org. It is fedora silverblue but with fixes that make it more usable (like codecs by default). It also ships distrobox right out of the gate so you can use that for apps that aren’t in the fedora repos, copr , or flatpak. You also don’t have to layer packages if you install via distrobox so I think it ends up being pretty handy for stuff that you want that isn’t available as a flatpak. Finally there are many different images for all different desktop environments so you can switch between them just by using rpm-ostree rebase and the link to the different image.

EccTM, in Wayland is a cancer to the Linux desktop.

Nobody is forcing you to use Wayland. Just take up the mantle of maintaining X11 yourself, because nobody is forced to keep that alive either.

logifad501,

But wayland people will call me a bigot for using X11

intelisense,

Trust me, nobody gives a flying fuck what you use.

logifad501,

Then why are dozens of people blindly coaxing people to use wayland for no reason? None of it feels remotely organic.

PrivateNoob, in these are the same gnome devs who complain about getting harassed

Unnecessary to fight over this. Use which DE you like the better.

Certainly_No_Brit, in Wayland is a cancer to the Linux desktop.

I slowly start to believe that sh.itjust.works needs to be defederated. I’ve been seeing too many idiots on that instance lately.

logifad501,

Hahhahaha here we observe a red hat shill in the wild advocating for censorship. I have no words to say.

Certainly_No_Brit,

Do you mean “red hat” for RHEL or USA republicans?

wviana, in How do y'all deal with programs not supported on Linux?

It would be nice if you say in the post which apps are those that hold you. People would be able to suggest solutions.

AlijahTheMediocre, in these are the same gnome devs who complain about getting harassed

Who says clowns don’t use Linux and aren’t using Arch?

heartsofwar, (edited ) in I created a shitty Python script to manage multiple SSH connections because I couldnt find a decent one

Given how the python script is written; I doubt this was meant for linux… because its completely unnecessary on Linux: man SSH config

More power to you though!

Illecors,

☝️

Oha, (edited )

I doubt this was meant for linux…

It is. You cant get ssh to print out a nice list afaik.

heartsofwar,

I showed you how… read on how to setup an SSH config… its completely possible

aard,
@aard@kyu.de avatar

You have a list of systems you’ve connected to in known_hosts, though. And the config file is easy enough to parse - throwing away the stuff you don’t care about - to expand on that list.

Oha,

I could add a import from known_hosts option or something like that

aard,
@aard@kyu.de avatar

I assume you mean “lookup”, as import doesn’t really make much sense.

I’m currently using this with wofi, though I’ll eventually rewrite it as anyrun plugin, which provides a bit more control:


<span style="color:#323232;">#!/usr/bin/env python3
</span><span style="color:#323232;">from argparse import ArgumentParser
</span><span style="color:#323232;">import subprocess
</span><span style="color:#323232;">import json
</span><span style="color:#323232;">import os
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">ssh_config_file = "~/.ssh/config"
</span><span style="color:#323232;">ssh_known_hosts_file = "~/.ssh/known_hosts"
</span><span style="color:#323232;"> 
</span><span style="color:#323232;"># Returns a list of all hosts
</span><span style="color:#323232;">def get_hosts():
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    hosts = []
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    with open(os.path.expanduser(ssh_config_file)) as f:
</span><span style="color:#323232;">        content = f.readlines()
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    for line in content:
</span><span style="color:#323232;">        line = line.lstrip()
</span><span style="color:#323232;">        # Ignore wildcards
</span><span style="color:#323232;">        if line.startswith('Host ') and not '*' in line:
</span><span style="color:#323232;">            for host in line.split()[1:]:
</span><span style="color:#323232;">                hosts.append(host)
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    # Removes duplicate entries
</span><span style="color:#323232;">    hosts = sorted(set(hosts))
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    return hosts
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">def get_known_hosts():
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    hosts = []
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    with open(os.path.expanduser(ssh_known_hosts_file)) as f:
</span><span style="color:#323232;">        content = f.readlines()
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    for line in content:
</span><span style="color:#323232;">        line = line.lstrip()
</span><span style="color:#323232;">        host_entry = line.partition(" ")[0]
</span><span style="color:#323232;">        hosts.append(host_entry.partition(",")[0])
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    # Removes duplicate entries
</span><span style="color:#323232;">    hosts = sorted(set(hosts))
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    return hosts
</span><span style="color:#323232;"> 
</span><span style="color:#323232;"># Returns a newline seperated UFT-8 encoded string of all ssh hosts
</span><span style="color:#323232;">def parse_hosts(hosts):
</span><span style="color:#323232;">    return "n".join(hosts).encode("UTF-8")
</span><span style="color:#323232;"> 
</span><span style="color:#323232;"># Executes wofi with the given input string
</span><span style="color:#323232;">def show_wofi(command, hosts):
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    process = subprocess.Popen(command,shell=True,stdin=subprocess.PIPE,stdout=subprocess.PIPE)
</span><span style="color:#323232;">    ret = process.communicate(input=hosts)
</span><span style="color:#323232;">    host, rest = ret
</span><span style="color:#323232;">    return host
</span><span style="color:#323232;"> 
</span><span style="color:#323232;"># Switches the focus to the given id
</span><span style="color:#323232;">def ssh_to_host(host, terminal, ssh_command):
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    if "]:" in host:
</span><span style="color:#323232;">        host, port = host[1:].split("]:")
</span><span style="color:#323232;">        command = "{terminal} '{ssh_command} {host} -p {port}'".format(terminal=terminal, ssh_command=ssh_command, host=host, port=port)
</span><span style="color:#323232;">    else:
</span><span style="color:#323232;">        command = "{terminal} '{ssh_command} {host}'".format(terminal=terminal, ssh_command=ssh_command, host=host)
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    process = subprocess.Popen(command,shell=True)
</span><span style="color:#323232;"> 
</span><span style="color:#323232;"># Entry point
</span><span style="color:#323232;">if __name__ == "__main__":
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    parser = ArgumentParser(description="Wofi based ssh launcher")
</span><span style="color:#323232;">    parser.add_argument("terminal", help='Terminal command to use')
</span><span style="color:#323232;">    parser.add_argument("--ssh-command", dest='ssh_command', default='ssh', help='ssh command to use (default=ssh)')
</span><span style="color:#323232;">    parser.add_argument("--mode", dest='mode', default='known_hosts', help='where to read from (default=known_hosts)')
</span><span style="color:#323232;">    parser.add_argument("--command", default='wofi -p "SSH hosts: " -d -i --hide-scroll', help='launcher command to use')
</span><span style="color:#323232;">    args = parser.parse_args()
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    if (args.mode == "config"):
</span><span style="color:#323232;">        hosts = get_hosts()
</span><span style="color:#323232;">    elif (args.mode == "known_hosts"):
</span><span style="color:#323232;">        hosts = get_known_hosts()
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    parsed_hosts = parse_hosts(hosts)
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    selected = show_wofi(args.command, parsed_hosts)
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    selected_host = selected.decode('utf-8').rstrip()
</span><span style="color:#323232;"> 
</span><span style="color:#323232;">    if selected_host != "":
</span><span style="color:#323232;">        ssh_to_host(selected_host, args.terminal, args.ssh_command)
</span>
zacher_glachl, (edited )

I can (and do) just read the ~/ssh/.config file if needed, it’s quite legible. In most cases however zsh autocompletion does all the heavy lifting for me (ssh ser(tab) -> ssh servername).

Still a cool idea for a script, and if it works well for you more power to you, just saying there’s more ergonomic and universally applicable solutions. (Only mentioning this since you said “I couldn’t find a decent solution to this problem”).

forwardvoid,

Great attempt on making a tool, I think your usecase might not be as appealing to others. If I need to list the hosts I have config for I would use: grep Host ~/.ssh/config If your list of servers is too long to remember, you might want to look at Ansible for configuration. But whatever works for you :)

ShortN0te,

Just on the side, Openssh and ssh config works just as well on Windows.

TheGrandNagus, in Firefox (finally) enables Wayland by default on their builds

To be clear, many of us will have already been using Firefox in Wayland mode by default, if our distro enabled it.

E.g. Fedora Workstation has had Firefox in Wayland mode since Fedora 31

joojmachine, (edited )

And it’s thanks to the work of those people that it has finally made it upstream, specially Fedora’s Martin Stránský (who has been doing tons of work on Firefox, including making Fedora the first distro to ship Firefox with VA-API enabled by default).

GlenTheFrog,
@GlenTheFrog@lemmy.ml avatar

Silly question but does that include Fedora spins like the KDE spin? I think the last time I checked Firefox it still said it was running through XWayland (although that was a while ago)

erasebegin, in How do y'all deal with programs not supported on Linux?

wipe the linux partitions and get back to a life of convenience and productivity. until another 6 months have passed and I think “maybe this time…”

phoenixz,

I recently reinstalled Linux. 5 minutes download, 5 minutes USB write, 15 minutes install including setting up an encrypted drive, everything works out of the box. Installling the graphics driver for my RX 7800 was “hard” because it was two steps instead of one, and that added an additional 5-10 minutes. Now I’m having convenience and productivity beyond all coworkers who constantly battle with windows problems, but hey, windows is windows, it always has some issues, it’s fine.

Over this past weekend I installed Windows 11. 1.5 times the size. Took about 7 minutes to download, 20 minutes to write to usb, fine.

Then the nightmare started.

First try: boot windows installer, go to install, about 3 minutes later I get an error about windows installer needing drivers. Wut? Search the internet, turns out that windows installer won’t work if Linux partitions are available on the system. WTF, can’t just ignore them? Nope, I gotta screw out the m.2 drive. Fine.

Second try: boot windows installer, go to install, about 3 minutes later I get an error about windows installer needing drivers. Wut? Search again, find that windows installer can have driver issues if it sees a mix of m.2 drives and other devices. Fuck me. Open up the other side of the computer, disconnect the other drives. fine.

Third try: boot windows installer, go to install, about 3 minutes later I get an error about windows installer needing drivers. Wut? Search yet again and it turns out that windows can have issues if it’s using a mix of usb 2/3 port and device. Try a various different USB ports, keep running installer until find one that is accepted. Fine!

Thirteenth try: boot windows installer, go to install, about 3 minutes later I get a new error, turns out that you can’t use Linux ISO writers for windows installers, apparently Microsoft fucked around with why because we gotta make shit hard for non ms users, right? “Luckily” I had a virtual box install, rewrite the usb there.

Fourteenth try and hours later: boot windows installer, go to install, about 3 minutes later I get a new error. My AMD Rhyzen 5 64GB 3000MHz system with an AMD RX 7800 XT and 1TB m.2 dedicated to windows doesn’t match the specs for windows 1, it can’t run windows 11. That’s what it actually said. WHAT THE ACTUAL FUCK! Search again, about an hour later I figre out that Microsoft finally started implementing the evil TPM system and it was disabled in the BIOS. Go to bios, enable it, now I can run the installer.

The install the requires 4 reboots just for the operating system, took about another hour to do so, it asked me loads of times if Microsoft could please please please sell me more shit that I don’t want, it required me to connect it to Microsoft services even though I don’t want that and finally I had a desktop. Installing graphics drivers took about another hour and a reboot.

Then I didn’t wanted to use Microsoft’s shit browser, at the least I prefer google to spy on me rather than Microsoft. Go download gogle Chrome, immediately get bombarded with “please no please use our shitty browser, you get the Microsoft experience ™!!!”

Welcome to the fucking Microsoft experience! It took me over 6 fucking hours to complete. I could have installed Linux arch in LESS time, a version known to be finicky and HARD.

Why does anyone pay money for windows? It’s insane. Their shit doesn’t work because Microsoft never cared a single shit about good software. They care about money and so their marketing department is doing the heavy lifting. Just lie to people, tell them that their shit is all superior and the “best experience”

I run into trouble with Linux sometimes, but NEVER this level of shitty incompetence and sabotage.

cows_are_underrated,

I could have installed Linux arch in LESS time, a version known to be finicky and HARD.

I recently had to install arch 3 times since. First time I fucked up, second try the system fucked up and third time worked. With me trying to fix the system this took me 2-3 hours. Most of them trying to fix the second install. The third time I used the installation script(which didn’t worked in the beginning) which made the install easy as hell taking about 10 minutes configuring the install and about 5 minutes installing everything. Later I just had to install gnome which were about 10 minutes total.

phoenixz,

And yet Microsoft in 2023 still is stuck with “this computer cannot run windows 11” when all that was wrong was that TPM was disabled in the bios. Just say you need TPM and that I need to enable it, why is it impossible for Microsoft to ever give a clear and concise error message?

statist43,

Everytime I install windows again for some reason, its always a fucked up hourlong shit. And after installing then comes the disableing of unnesessary bullshit it comea with.

Linux just works, I use Ubuntu because Im just a normal user, and I don’t know why people even use windows.

phoenixz,

Same, I don’t have a clue why people actually use and PAY for that shit. It’s like buying a new car. You get into he agency, get in, want to start and drive away but right out of the gate the battery is empty. Okay, let’s charge it? But yeeaaahhh, the great 12v standard that works everywhere doesn’t work for windowagon, you need a 15.9v because that way microshit can sabotage those people that just want to get from a to b without having to deal with their bullshit.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #