linux

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

captain_aggravated, in How do y'all deal with programs not supported on Linux?
@captain_aggravated@sh.itjust.works avatar

Can you give us specific examples of the programs you use, and what you use them for?

Evotech,

Certified Linux answer

captain_aggravated,
@captain_aggravated@sh.itjust.works avatar

I mean, it took me awhile to learn the names of all the software I currently use. And in some fields, it’s still “Yeah there’s not a good substitute.”

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.

thejevans, in Looking for a "couch laptop"
@thejevans@lemmy.ml avatar

I use a 2013 macbook air for almost this exact use case. Ask friends and family if they have any old laptops lying around.

axum, in I created a shitty Python script to manage multiple SSH connections because I couldnt find a decent one
@axum@kbin.social avatar

Multiple ssh connections should really just be managed using Ansible.

Oha,

isnt ansible a tool for automatically deploying stuff?

falsem,

Configuration management.

absGeekNZ, in Linux Mint - Screenshot annoyance
@absGeekNZ@lemmy.nz avatar

Thanks for the replies, on my work computer (Win 10) screenshot “just works” to capture an area with no change to the screen.

For years the built-in tools for print screen on Liunx was far superior to Windows, but this seems backwards now.

mvirts,

I’m very happy with the gnome3 screenshot stuff, it’s basically the same as the win10 hotkey.

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.

Vincent, in Canonical lifts lid on more Ubuntu Core Desktop details

I'm very excited about how the Linux community generally seems to be moving towards various approaches to immutable systems - all of them having in common that system updates are going to be a lot less likely to break. The future is looking good!

lemmyvore,

As long as we don’t end up with Linux systems designed like Android.

wyzim,

“like android/ios” is the ultimate goal of these systems lol

sunbeam60,

Yes except it’s all open source and if you’re unhappy you can fork. Good luck forking iOS.

lemmyvore,

Having distro maintainers decide a rigid partition structure for you would be a really bad approach, so I really hope not.

Chewy7324,

“like Android/ios”

is pretty vague. Do you mean locked down, with features like SafetyNet which locks people in to Google Services? Or do you mean locked down in the sense that installing packages doesn’t just directly change the files in / ?

Systems like rpm-ostree still allow modifications to the OS, it just requires other steps. OpenSUSE MicroOS even allows for arbitrary modifications to the root fs through transactional-update (it even allows for dropping in to a transactional-update shell, so it’s not necessary to prefix each command with transactional-update).

Especially OpenSUSE MicroOS feels more like OpenSUSE Tumbleweed, compared to Fedora rpm-ostree’s limitations compared to Fedora dnf.

anothermember,

Using Fedora Silverblue has gone a long way to dispel that concern for me. It goes out of its way to be much more user-centric than that. I can’t speak for the others yet.

taanegl,

If anyone would lock their OS down like that, it would be Canonical.

spader312, in Looking for a "couch laptop"

I bought a refurbished dall latitude 7490 for like 270$. For the price it’s a powerful machine, 16gb ram and i7 processor. Installed fedora on it and I’m in love with it. For the price it puts out the power I need for software development.

jcarax, in Looking for a "couch laptop"

Personally, I’m waiting to see how support for the M1 Macbook Air and Thinkpad X13s develop. I have a MBA already, so I’ll probably throw Asahi on it eventually, and then wait for the ARM wars of 2025.

I’m not at all a fan of the keyboard on the MBA, but being passive and 13" is perfect for the couch.

QuazarOmega, in I made an IPA keyboard for fcitx on Linux!

That’s really cool!
The screencasting of the keys also caught my attention, may I ask what you used for that?

yukijoou,

i used ShowMeTheKeys!

alteredEnvoy, in I made an IPA keyboard for fcitx on Linux!

That’s amazing! May I suggest using space as a terminator instead of =? We do that all the time in Pinyin Input method and it’s quite convenient

yukijoou,

= is not a terminator! it’s a modifier for the previous key: e= -> ə!

i did set up both space and enter to commit a word though, yeah!

rotopenguin, in Who here uses a less popular Linux distribution? What made you choose it?
@rotopenguin@infosec.pub avatar

I use Ubuntu, which is apparently the least popular distro around.

SamsonSeinfelder,

I use Manjaro and based on the downvotes I received when mentioning it around here, I can assure that you are excused and you can give me this crown.

macattack, in Looking for a "couch laptop"

There are plenty of Chromebooks that can wiped & replaced w/ Linux. I run Debian 12 on my HP x360. Check this list: chrultrabook.github.io/…/supported-devices.html

helenslunch, in Sell Me on Linux
@helenslunch@feddit.nl avatar

only ever used windows, but I’m getting fed up with the bullshit

Well that’s why I switched 🤷

Drove me fucking insane that I couldn’t uninstall Edge. Tried a few times but it always reinstalled itself. It’s just the audacity to say “no fuck you” to the person who is giving you money. Can’t disable Cortana, can’t disable all the XBOX bullshit, not to mention it’s just becoming more and more like Android where the entire OS becomes dedicated to collecting your data. Linux has none of that, and that’s enough for me.

I’m also nervous about using an OS I’m not familiar with for business purposes right away.

Couple of solutions for this:

  1. Dual boot. When you have a hard time, just restart and boot into Windows.
  2. You can’t transfer storage across OS so make sure to use cloud storage for your work files.
CoopaLoopa,

Edge/IE run some underlying services for built-in windows features, so uninstalling them can cause issues with completely different parts of the OS.

Ran into an issue with a client still running Office 2016 where uninstalling IE11 prevented them from opening any links within those apps. Office was harcoded to look at IE for link handling and didn’t respect the setting for your default browser.

helenslunch,
@helenslunch@feddit.nl avatar

All the more reason.

QuazarOmega, (edited ) in Is asus rog strix B55-F gaming wifi ll atx am4 a good motherboard for linux? (known problem?)

I have that, never had problems, Bluetooth works as well! At least with the devices that play well with Linux.

You should check out linux-hardware.org too, it has a huge database of hardware probes that can help you know what works exactly from each device, the search page is what you want: linux-hardware.org/?view=search

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