openSUSEway is a full Wayland DE based on Sway
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 33 | |
Author | ||
Contributors | ||
License | CC Attribution 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/54697 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
2
3
5
6
7
9
13
14
18
19
21
22
24
26
28
29
30
32
33
00:00
Virtual realityOnline helpMusical ensembleEmailHand fanWeb pageIntegrated development environmentMultiplication signOpen sourceOpen setComputer animation
01:00
VacuumWeb pageMiniDiscSource code
01:20
WikiWindowTesselationDampingData managementMereologyIntegrated development environmentLoginInformation
02:07
Local GroupRevision controlUniform resource locatorConfiguration spaceDrop (liquid)Correlation and dependenceComputer fileConfiguration spacePattern languageComputer animationSource codeXML
02:30
Configuration spacePhysical systemSource code
02:45
Electric currentRepeating decimalConfiguration spaceComputer filePhysical systemDirectory serviceComputer animation
02:57
AuthenticationCartesian coordinate systemSoftware development kitAuthenticationIntegrated development environmentGame controllerBuildingVolume (thermodynamics)PasswordNormal (geometry)
03:34
Electric currentComputer iconPasswordMultiplication signComputer animation
03:47
Price indexQuery languageComputer animation
04:25
Configuration spaceComputer configurationComputer fileMotif (narrative)Computer animation
04:36
NumberSoftware repositoryRadical (chemistry)Square number
04:53
Computer animation
05:20
WikiCartesian coordinate systemTouchscreenZoom lensCommunications protocolVideoconferencingCuboidComputer animation
05:58
Disk read-and-write headTouchscreenStreaming mediaMusical ensemblePhysical systemMereologyRow (database)Key (cryptography)Right angleFunction (mathematics)Integrated development environmentZoom lensVideoconferencingMedical imagingScaling (geometry)Web pageWindowModule (mathematics)VirtualizationGeometryKernel (computing)Communications protocolInterface (computing)Cuboid
09:15
Inclusion mapHill differential equationComputerVideoconferencingError messageTouchscreenShared memoryComputer animation
09:32
Zoom lensSet (mathematics)Integrated development environment
10:00
Shared memoryTouchscreenZoom lens2 (number)Content (media)MereologyStreaming mediaExpected valueRight angleComputer animation
10:24
Electric currentCartesian coordinate systemComputer fileZoom lensIntegrated development environmentTouchscreen
10:46
WikiLattice (order)BefehlsprozessorShared memoryTouchscreenCuboid
10:58
Menu (computing)Bloch waveEvent horizonShared memoryTouchscreenCuboidComputer animation
11:11
Computer iconBlock (periodic table)MereologyVideoconferencingCASE <Informatik>TouchscreenShared memoryComputer animation
11:31
Branch (computer science)CurvatureImage resolutionZoom lensRow (database)VideoconferencingTouchscreenComputer animation
12:15
SoftwareSynchronizationDefault (computer science)Electronic visual displayMenu (computing)Electronic visual displayOpen sourceDefault (computer science)Scripting languageIntegrated development environmentProjective planeData managementServer (computing)Exterior algebraService (economics)Multiplication signSoftware testingMusical ensembleOcean currentBit
14:18
MathematicsDisintegrationWhiteboardFactory (trading post)Web pageKernel (computing)Software developerPower (physics)Internet forumHash functionDefault (computer science)Installation artData managementScale (map)Duality (mathematics)Denial-of-service attackModule (mathematics)Computer fileSource codeOcean currentComputer animation
14:43
Data managementWindowOpen sourceSource code
15:05
VideoconferencingVirtual realityHypermedia
Transcript: English(auto-generated)
00:07
Hello, my name is Denis Kondratenko and today I will talk about the OpenSUSE way as a full Wayland desktop environment based on Sway. I used to work at SUSE for some time, now I work at Percona, but still I support
00:25
some of the packages in OpenSUSE and I use Tumbleweed really well and I'm a huge fan of the OpenSUSE Tumbleweed running release. If you want to contact me, you can send me an email or on GitHub you can open issues
00:44
or something, or maybe even on Discord you can contact me there, I'm an OpenSUSE community as well. What is the OpenSUSE way, right? I had a talk before about it, so you can find it on my GitHub.io page.
01:09
The last year on this conference and you can find out the basics, what is that, how it works and etc.
01:21
After that, we actually created the portal when there are much more extensive information, what kind of packages it includes and how it's configured. In the basics, it tries to create the desktop environment. It's probably really good stuff for the beginners that are starting with the Tiling Windows
01:44
Manager and maybe have some issues to stop it from scratch. This provides you everything and then you can customize it. It has login manager, status bar pre-configured, the notifications as well as the Sway itself.
02:05
It actually consists from a couple of parts. One is just a lot of the config files and some of the config files and also the spec files which lives on OBS. It's a pattern that pre-setup the needed packages as well as the OpenSUSE way itself.
02:32
So that lives on GitHub and then the OBS, how it looks like on the system.
02:45
It's just the Sway config file, the standard one that lives in ETC as well as includes your own directory for customization. And the system one, the desktop environment, which set up some of the more controls for
03:04
you, like rising the volume, some of the special key bindings, some of the themes, the notifications and, for example, here is a pollkit norm authentication agent which
03:22
allows you to run as a privilege user. For example, running some application that requires the privileges and it will pop up and ask you permissions, like, ask you a password.
03:40
And let's talk about what is new since last time. So the new stuff here is, for example, that was the community contribution. There is a new status indicator about the packages, how many packages needs to be
04:02
updated. So it queries it and shows it here. And also, if you click on that, it will run zipper.dub to update the packages. It will ask you if you would like to proceed all of that stuff.
04:20
So this is actually done in Waybar. You can see this just queries number of packages and indicates it.
04:43
And when you click it, it runs the terminal and just updates the repos and then does the zipper.dub. Another feature that was added is the GritD, Gritter supports the GTK styles now.
05:05
And we added the styles here to match all the experience. So you see the background and kind of your style of openSUSE way.
05:20
You can log in into the Sway. Another big topic for the Sway and Wayland in general is the sharing the screen applications during the Zoom calls or other video conferences you would like to share on the screen.
05:42
Not all of the applications support Wayland natively or not all the protocols. For example, Zoom doesn't support the Sway out of the box. But we can override that or just overcome that with using the loopback device.
06:11
So I set up the loopback module in my system, which allows me to share
06:24
some of the screen or part of the screen, all the screen through the video device that's presented as a video camera to the system. So to do that, you just need to install the kernel module for that, as well as tools are really handsome to actually find which device you use.
06:50
So for that, you need to load that module. Or you can probably start it up automatically. I'm doing that by hand when I need it.
07:02
After loading, you can start the recording. And for that, I use VFRecorder, which can share part of the screen or full screen. So it understands the Wayland protocol and what it does. It actually outputs the selected region. And here I have it set up right.
07:23
I know which part of the screen I'm showing in my talent windows. So I just set that geometry over here. And I'm showing this resolution. And for Zoom, it works the best, I think.
07:42
There are some glitches. Depends how Zoom scales the image. So you can experiment and find out by yourself. There are a couple of needed keys for the loopback device. Those are important. And you can find them on the VFRecorder page.
08:01
And here is the output, right? It's where you're streaming. This should be a loopback device. And to find out the loopback device, you can use the CTL tool, which you can just list devices.
08:22
And you can see that the virtual camera loopback is set up in the devvideo0. I have my external camera as well as integrated one. Now when we set up, like we have the ability to stream the part of the screen through the video camera interface, we need Zoom to work, right?
08:45
And Zoom out of the box doesn't support Sway. So we set up... Sway actually set up this environment, XDG desktop environment.
09:00
So it shows the Sway, right? And Zoom doesn't know about that. Let's run Zoom. And you can see that it runs. It's fine. It can actually share my video.
09:21
I won't share it, but when you push the screen, it has the error message that it supports it only on GNOME. So I dig it a little bit further, and I found out that it actually can be really easily fixed, right?
09:41
So I just, instead of setting this, I just override this environment for Zoom. And that makes it think that it's a knob. So let's run Zoom again.
10:02
And you can see now, if I share screen, it's actually have the shared dialogue. And here, it's like you use the content of second camera, which will be loopback device. Right now I use it for this streaming, but it will be essentially the same. So I will just stream this part of the screen.
10:22
So you can share with Zoom and everything works as expectedly. So let's scan share. If you don't use Flatpak, just prepend this environment and run Zoom like that. It will work. Or you can replace that in desktop file if you would like to.
10:44
But some of the applications actually support the screen sharing natively, right? For example, Jitsi. Jitsi supports the screen sharing out of the box with Firefox.
11:12
So as you can see, that's like I'm just sharing the same part of the video.
11:20
And on my left side is my OBS. On my right side, you see the part of the screens I'm sharing. This shares the full screen, which in my case is quite big.
11:41
The resolution is too big to share the full screen. I mean, it's not too big, you can share that, but you don't need that. I use Flatpak quite extensively. And everything works for me, like OBS Studio where I record in this.
12:01
The Slack video works, everything works. Then the Zoom telegram. So with XDG portals, the Flatpak works really well. What is next? Next is we have this project.
12:22
And we try and plan what we are doing. I would like to add this way into the installations, but for that I probably will need to add some tests. So it's some kind of for a long time and backlog, but eventually maybe I would find time or maybe someone will contribute that.
12:42
I think we'll just continue to support the people, ask questions, open the issues, and a bit further we'll try to improve the UI UX for the OpenSUSE way. Maybe adding some application scripts to do some stuff automatically
13:01
as better desktop environment. We also plan to go to user ATC, there are some issues, so we need to do that. And that's more or less it for community. Another stuff that is in log there is what maybe needs to be fixed,
13:21
is just like how to enable GridD as the default display manager. Currently it's done by hand. I think that's because the OpenSUSE, not it, I think it's for sure OpenSUSE used the XDM. I actually, as default display manager, it's setups in the preset that actually
13:44
XDM provides the display manager service and that's a default and you need XDM. And I actually don't like to add it because it's full variant and I don't look like X anywhere. I even tried to maybe figure out how some RFC, how to fix that in the OpenSUSE,
14:04
but I mean this is just how OpenSUSE works. It's used the alternatives instead, update alternatives instead of the systemd and XDM servers actually figure out which display manager to check.
14:21
And you can actually figure out this in the documentation. I would like to add GridD to preset, but that's not possible currently. Maybe the drawer does it differently. Maybe we should do that way, but anyway, this is not critical to add.
14:43
So I would like to thank the community that people that contributed or opened the issues with suggestions or with notice. Thank you everyone. Use OpenSUSE away. Try it. Use open source.
15:00
Use way. Thank Windows manager and Wayland. Thank you. Bye-bye.