Replies

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

InternetIsScary, to lemmy French
@InternetIsScary@mstdn.social avatar

deleted_by_author

  • Loading...
  • Max_P,
    @Max_P@lemmy.max-p.me avatar

    It’s just a shortened version of my name. Mine comes from elementary school. One of my classes had 3 Max in them as the name was really popular for my generation. So we just started using Max-X where X is the initial of the last name.

    It has stuck since.

    sordid, to asklemmy

    CITIZENS OF LEMMY DOT ML!!! CAN YOU READ THIS Y/N??? (testing federation hi) @asklemmy

    Max_P,
    @Max_P@lemmy.max-p.me avatar
    bl4ze, to firefox
    @bl4ze@techhub.social avatar

    @firefox I'm using this extension called New Tab Override and just saw that the dev complained a few years back about how it wasn't possible to highlight the url of a newly opened tab and there hasn't really been any recent response, will I ever see this? So far I had to reprogram my brain to type Ctrl + A right after the Cttl + T

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    Lemmy communities show up as people on Mastodon, that’s why. The hashtags won’t reach Lemmy.

    talesofaprinny, to linux
    @talesofaprinny@mastodon.social avatar

    Anyone knows how to properly start a multiseat wayland with a desktop environment or window manager running?

    I just need simple stuff such as profile initialization of the user and if it's possible to just share the same discrete GPU across multiple seats?

    The end result? I want to isolate my current user space from the gaming space where I can just connect using moonlight/sunshine. I want it all headless.

    @linux_gaming

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    How many GPUs do you have? If only one, not possible, at least not easily.

    But, to answer the question, yes I know. It’s kind of a mess because the API is very much designed around display managers. Basically you need to call some DBus functions after authenticating the user but before dropping privileges to register the user with logind. The result of that is some permissions are modified to your user so the compositor has access to keyboard, GPU, mouse, etc. That makes running two sessions of the same user really hard because that lets the compositor try to grab the same resources as the other session.

    Here’s the script I had made, but I ended up just using a VM for a while since I wanted to also isolate installed packages and whatnot so it’s barely enough to start gamescope.

    
    <span style="color:#323232;">#!/usr/bin/env python3
    </span><span style="color:#323232;">import os
    </span><span style="color:#323232;">import dbus
    </span><span style="color:#323232;">
    </span><span style="color:#323232;">sysbus = dbus.SystemBus()
    </span><span style="color:#323232;">
    </span><span style="color:#323232;">login = sysbus.get_object(
    </span><span style="color:#323232;">        "org.freedesktop.login1",
    </span><span style="color:#323232;">        "/org/freedesktop/login1"
    </span><span style="color:#323232;">)
    </span><span style="color:#323232;">
    </span><span style="color:#323232;">manager = dbus.Interface(login, dbus_interface="org.freedesktop.login1.Manager")
    </span><span style="color:#323232;">
    </span><span style="color:#323232;">manager.CreateSession(
    </span><span style="color:#323232;">        1001,           # u uid
    </span><span style="color:#323232;">        os.getpid(),    # u pid
    </span><span style="color:#323232;">        "tv",           # s service
    </span><span style="color:#323232;">        "wayland",      # s type
    </span><span style="color:#323232;">        "user",         # s class
    </span><span style="color:#323232;">        "gamescope",    # s desktop
    </span><span style="color:#323232;">        "seat1",        # s seat_id
    </span><span style="color:#323232;">        0,              # u vtnr
    </span><span style="color:#323232;">        "",             # s tty
    </span><span style="color:#323232;">        "HDMI-A-1",     # s display
    </span><span style="color:#323232;">        False,          # b remote
    </span><span style="color:#323232;">        "tv",           # s remote_user
    </span><span style="color:#323232;">        "localhost",    # s remote_host
    </span><span style="color:#323232;">        []
    </span><span style="color:#323232;">)
    </span><span style="color:#323232;">
    </span><span style="color:#323232;">os.execve("/usr/bin/fish", ["--login"], { "XDG_SEAT": "seat1" })
    </span>
    

    Run it with

    
    <span style="color:#323232;">sudo systemd-run --system --scope
    </span>
    

    This will make systemd create a fully detached session from your user, so you can su to a different user, run PAM modules, start the XDG session.

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    How… do you find all these pieces to glue together? Who or what is putting these out there “hey I want to initiate an desktop env”

    Painful reading of the manuals. You really need to know what you’re looking for, what keywords to search. I also played around a good bit with SDDM’s source code to piece it together/see a working example.

    Some docs

    I’m still bummed and a bit confused on the one shared GPU business I thought it wouldn’t matter if you ran multiple graphical applications regardless or is this imposed by Wayland at the moment? If not wayland would X11 do the same?

    It’s mostly that on Linux, GPUs are a bit all or nothing at the moment. You can have two sessions running, but only one of them can be active at a time. You can’t have one on one monitor and one or another. Well technically you can, but people basically run Sway with a full screen nested compositor on each monitor.

    Technically there’s nothing preventing the creation of a headless compositor with GPU acceleration. It’s just such a niche use case I don’t know of any compositor that lets you do that. They use nested compositors for development, but those still need a window on the parent compositor.

    X11 won’t save you there, people use specialized headless servers for that like xvnc (not to confuse with x11vnc which runs as a X11 client) or xephyr because Xorg can’t do headless on its own that I know of.

    My use case was barely slightly less niche than yours: I wanted Steam big picture on my TV at all times, independently from my main session so I can just pick up a controller and play. That’s possible, I got it to launch, but in the end there was too much mixing in with my daily system I figured I kinda want a clean install with just the necessary packages, so I ended up back with VFIO.

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    The problem there is really getting a compositor to run. By the time you have something to set WAYLAND_DISPLAY to, you already have solved the problem because you have a headless compositor running.

    I did a little bit more research, and it seems at least wlroots compositors (Sway, Hyprland, Gamescope) do support headless with WLR_BACKENDS=headless (from this Reddit thread). Kwin apparently has a –virtual flag. Now I’m not sure that will result in a compositor with graphical acceleration, maybe it will if there’s a GPU available?

    The main issue remains those are usually used for testing or remote desktop situations, like running GUI apps in CI and testing them. So they’re not very well documented nor all that well tested and supported.

    Happy to help, I spent days on this so I’m glad to share the information! Feel free to ask more questions.

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    but man I can’t imagine anyone new be like “so there’s a centralized documentation/communication channel for all of this, right?” 😆

    I’ve contemplated making a blog series on it, but that involves finding time to actually make it work reliably and not hacked together, and also I guess setting up a blog for it. Ultimately I would be building a micro-DM of sorts that’s a one-shot command line where you give it a user and a session name, and it spawns the session correctly, with the goal to be able to run this alongside another DM like SDDM or GDM.

    But yeah the documentation on this is pretty sparse, it’s very developer oriented and mostly used by people already in the deep ends of systemd and Wayland, ie. Gnome/KDE/wlroots developers. Also technically the Python script I shared is sort of v1, I have another version in Rust that goes through PAM and simulates a more accurate session startup. If you read the DBus API docs for login1, the function I’m calling is technically reserved for PAM. But PAM is like, a whole other thing. It fixed some issues and introduced a bunch more.

    It’s a good step in the right direction but there’s still not really a good concept of headless seats, right now a seat will only be marked as graphical if it’s got a GPU attached to it, and you can only attach a GPU to a single seat at a time (at least via loginctl).

    MylesRyden, to KDE
    @MylesRyden@vivaldi.net avatar

    So far, I have to say that my #KDE #Plasma6 experience sucks.

    The theme I was using doesn't work. The icons all suck. EventCalendar, which was synced to my Google calendar is dead. Vivaldi looks like crap. The panel at the bottom of my screen is floating up probably 100 pixels, leaving useless space below it, I can't find a way to sink it to the actual bottom of the screen. I had increased all my font sizes because my eyes are bad, they have all shrunk and changing the font sizes and the interface percentage doesn't fix it.

    So far, not a happy experience @kde

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    Also gotta keep in mind this is a major release. It’s allowed to break stuff, and the very first release is bound to have some bugs. We’re far into the Plasma 5 lifetime, a lot of the quirks have been ironed out.

    It literally just came out, of course a lot of things haven’t been updated for it yet. Most people’s distros don’t even have it yet, addon authors don’t even know their addons are broken yet.

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    What distro?

    You really shouldn’t have 6.0 unless you’re on a rolling distro that’s very fast at updating packages. Even Arch doesn’t have 6.0 in the main repos yet, you only get it if you enable the testing repos. And that’s kind of what you sign up for with rolling distros, especially with testing repos enabled.

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    The average user shouldn’t have it, only some rolling distros have it so far, and KDE Neon for obvious reasons. Even Arch doesn’t have it in the main repos yet.

    MylesRyden, to kde
    @MylesRyden@vivaldi.net avatar

    Is there a way to revert back to Plasma 5.27?

    I don't think #Plasma6 is ready for prime time. When I open apps, the title bar goes above the screen space and I can't move or close the app or use the menus.

    @kde

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    Or disable the -testing repos and reinstall the offending packages. It’s in extra-testing and kde-unstable, with the latter being 2 revisions newer than extra-testing. So clearly they’re fixing some issues.

    jlou, to technology

    Apple Is Trying to Kill the Open Internet!

    https://youtu.be/up-zUEFNMww

    @technology

    Max_P, (edited )
    @Max_P@lemmy.max-p.me avatar

    Firefox is just a browser and has nothing to do with PWAs that require OS support.

    It does. PWAs are browser installed apps. On Android, they show up as independent icons with the Firefox logo on it:

    Lemmy icon as a Firefox PWA

    Those behave like independent apps, they have their own icon, their own entry in the app switcher, they’re full screen with no browser UI elements. Just a full screen web page. This has been possible for a long time on iOS too with Safari.

    It has nothing to do with sideloading. PWAs were a way to make web apps feel as close as possible to real apps as possible. Things like vger.app feels almost like native apps.

    Apple’s decided they’d rather get rid of it than let third party browsers be able to do that, as they can’t control how much those apps can do. Chrome can just make WASM really good and make native apps less necessary, and make the AppStore tax more avoidable, and they won’t let that happen.

    And Firefox does indeed also kinda suck in the PWA department, and have kind of soft-abandonned them, and they’re buggy. On Chrome, a good PWA can feel as good as native.

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    I think they fear someone will make a browser that makes native apps less desirable.

    Google could wrap all the iOS widget, expose them to WASM and basically let people bypass the AppStore entirely and install everything as Chrome “apps”.

    Safari conveniently lacks a lot of the features that would compete with native apps in features, like refusing to implement WebPush until very recently.

    They don’t want web apps to even have a chance to compete with their AppStore. With Safari being the only allowed browser, they could make sure the browser is always less desirable than downloading the app.

    chebra, to opensource
    @chebra@mstdn.io avatar

    The federation between mastodon and lemmy is strange. If a M account wants to follow a L community, they need to follow an automated M account which represents the L community. But if any M post mentions that L community, the post will get boosted by the community's M account, so everybody who follows will get a notification. And I'm not sure if this can be moderated from the L side, because it seems like it never goes through L. Such as - do you see this @opensource ? Does a L mod see this?

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    @chebra From the ActivityPub perspective (the protocol Mastodon and Lemmy uses), it’s interesting how it all ties down. The protocol is fairly generic and doesn’t really define what a user or community is, they’re all just actors which can map to anything depending on the platform. Mastodon I believe treats all actors like an account. For Lemmy, they can be users or communities. When a post is directed at a community, it becomes a post. For a Wordpress blog, an actor would be an author or some meta actor for the whole blog. How those are interpreted and used is how it gets a little weird sometimes.

    The automated account you mention, is it the tagginator bot? If so, well moderation is weird because the post is retracted but the tagginator reply to it which brings it into the Mastodon world is not, so effectively that doesn’t mitigate the spam because it’s a completely separate account linking to the spam, automatically because it’s a bot.

    belovmv, to firefox Russian

    Вчера пытался перейти на Яндекс Браузер - не смог, к вечеру вернулся на @firefox.
    А все из-за рекламы, которую Яндекс активно продвигает даже платным пользователям и заблочить её ни какими средствами не получается (половину плагинов удаляющих рекламу установить не возможно, приложение Adguard спокойно рекламу от Яндекс пропускает).

    А #firefox хорошо, установил #ublockorigin и красота!

    Max_P,
    @Max_P@lemmy.max-p.me avatar

    That’s from Mastodon, they’re just microblogging and tagging communities.

    That particular use case doesn’t translate very well into Lemmy.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • kavyap
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • tacticalgear
  • khanakhh
  • Youngstown
  • mdbf
  • slotface
  • rosin
  • everett
  • ngwrru68w68
  • Durango
  • megavids
  • InstantRegret
  • cubers
  • GTA5RPClips
  • cisconetworking
  • ethstaker
  • osvaldo12
  • modclub
  • normalnudes
  • provamag3
  • tester
  • anitta
  • Leos
  • lostlight
  • All magazines