Linux - Reddit – Telegram
Linux - Reddit
771 subscribers
4.19K photos
207 videos
39.9K links
Stay up-to-date with everything Linux!
Content directly fetched from the subreddit just for you.

Powered by : @r_channels
Download Telegram
Debian 10 'Buster' Released
https://redd.it/ca39tz
@r_linux
Linux Laptops

Linux-on-Laptops website is a resource for those who use Linux on a specific laptop model.

Check out https://linux-on-laptops.com if you have any linux issues on your laptop. If you have solutions to any linux issues, please submit here: https://www.linux-on-laptops.com/entry.html

https://redd.it/ca2quu
@r_linux
Haven't even had Linux on my computer for a year and I'm already testing ArchLinux in a virtual machine. Wish me luck!
https://redd.it/ca5cgb
@r_linux
A better way to control the mouse

I avoid using the mouse whenever possible, but sometimes there is no alternative, so I looked for a program that allows me to move the mouse with the keyboard without much speed loss. The best I found is keynav which has an interesting concept, but I couldn't configure it to be as efficient as I wanted, so I finally wrote a new program:

[https://github.com/jbensmann/xmouseless](https://github.com/jbensmann/xmouseless)

​

It basically moves the pointer continuously by holding down keys and changes the speed by holding down some other keys. So maybe someone will find it useful as well. Or do you have another good way of controlling the mouse with the keyboard?

https://redd.it/ca5bkk
@r_linux
Comparing Wayland and X11 Display Server Protocols in Full-screen Applications

Hey everyone! I am a recent computer science graduate who has a passion for Linux so I wanted to do something for my dissertation that would benefit the community. My undergraduate dissertation was on comparing X11 and Wayland display server protocols in full-screen applications. As you may know if you e.g. play games on Linux, the X11 compositor imposes a performance penalty on the game as it introduces [unnecessary steps](https://wayland.freedesktop.org/architecture.html) in the graphics stack. You can usually increase video game performance by disabling compositing. KDE’s compositor, Kwin, has an interesting solution to this issue – automatically disabling compositing when playing full-screen games. [This article](https://blog.martin-graesslin.com/blog/2015/12/gaming-on-linux-move-to-next-generation/), while a bit dated, explains why X11’s graphics stack is inefficient and how Wayland improves on this in more detail.

My dissertation focused on providing benchmarks and doing research on whether Wayland can be an improvement over X11. I wanted to test if Wayland has benefits for the average user (even though IMO Wayland provides most benefits to developers, it makes implementing and maintaining features easier, which helps the average user as well). To fully understand why there is a need for a new display server protocol, we need to look at issues with X11, which [this article](https://www.phoronix.com/scan.php?page=article&item=x_wayland_situation&num=1) covers in detail.

**NOTE: I am going to refer to window managers and compositing window managers as compositors in this post.**

The test was running a very unfinished version of my game on the compositors mentioned below. The game was made with SDL2, it counted the number of frames per second, repeated the test 5 times and averaged the results (the specific game release used for this test can be found [here](https://github.com/SerCoach1/DauntingDungeon/releases/tag/v0.1)).

​

**X11 compositors benchmarked:** i3, KWin and Mutter.

**Wayland compositors benchmarked:** Sway, Weston, Mutter and my own attempt at a compositor, [Wayward](https://github.com/SerCoach1/Wayward), which was a failure to say the least.

**Compositor versions used:**

• i3: 4.16.1-1

• KWin: 5.15.4-1

• Mutter:3.32.1-1

• Sway: 1.0-8

• Weston: 5.0.90

​

I tried to compare similar X11 and Wayland compositors (i3 vs Sway, Both X11 versions of Mutter). The details of how I launched the compositors and everything else can be found in my dissertation [here](https://sercoach1.github.io/).

Finally, **the results**: [https://imgur.com/a/LtqmTGW](https://imgur.com/a/LtqmTGW)

​

All tested Wayland compositors have achieved a slightly better frame rate than the X11 ones. This can be attributed to the simplified graphics stack in Wayland. This is because the compositor is the display server: it allows for more efficient rendering and therefore better performance. According to the tests done in this project, that increase can be from 5 to 10 FPS. In addition to that, rendering was also improved by eliminating screen tearing.

While Wayland outperformed X11, it is still a new protocol that lacks some of the functionality of X11. The results achieved in this dissertation may not be conclusive enough to declare Wayland as superior to X11, but they do show that Wayland is a promising project and, if it keeps evolving at its current rate, this new display server protocol might just overtake the almost three-decade-old protocol used in Linux currently.

The main issue I encountered during the project was outdated and/or insufficient documentation for [Wlroots](https://github.com/swaywm/wlroots). I struggled with understanding how to write a compositor even after reading through Wlroot’s header files and Wayland documentation. That might also be due to Wlroots being updated over time and therefore [other sources](https://drewdevault.com/2018/02/17/Writing-a-Wayland-compositor-1.html) used for the project b
eing of limited use.

​

I would like to thank Daniel Nesbitt for supervising this project and providing his invaluable Linux expertise. Also I would like to thank Adam Gąsior for teaching me how to use cmake, clang and helping with other Linux related issues. Finally, I’d like to mention /u/malano22 for helping me write this post.

If I have made any mistakes please let me know as I am by no means an expert on this topic, just a passionate student trying to contribute to the open source community.

​

Lastly, links summary: [my dissertation](https://sercoach1.github.io/), [the finished game](https://github.com/SerCoach1/DauntingDungeon), [my unfinished Wayland compositor](https://github.com/SerCoach1/Wayward)

​

Tl;dr: Wayland fast, X11 slower.

https://redd.it/ca60wg
@r_linux
TIL that Python's pip is not curated, and anybody can publish code (malicious or otherwise).

Is this common knowledge? I've been using Python for *years*, trusting pip the same way I do apt or other package managers. I didn't realize this was uncurated in such a way. I feel kind of dumb tbh.

Anybody else have similar experience?

https://redd.it/ca6o4p
@r_linux
Linux infomagic december 1999 update

[linux disc opened up](https://imgur.com/gallery/yanyaxO)

I opened up one of the disc sets from my previous post and have pictures to share with the community. I did some research and noticed I still cannot find these anywhere online. These are the december 1999 release and they are a 6 disc set. Still cannot believe I found them, and i have about 38 more sets completely unopened and fac sealed.
If anyone is interested in a copy pm me!

https://redd.it/ca64a1
@r_linux
Bash function 'FuzzyMatch()'.

A few days ago I posted in this [thread](https://www.reddit.com/r/commandline/comments/c7gkfe/is_there_a_command_palette_for_the_unix_terminal/esf84jc?utm_source=share&utm_medium=web2x) and then started to think that I didn't have any 'fuzzy' things in my toolbox.

I looked into the subject and found it quite complicated, there was no practical way to implement real 'fuzzy search' in 'bash'. But I like 'my things' as simple and distro independent as possible. Could I cut some (lots of) corners and write a simplified 'fuzzy search' function?

Well I did and this is the [result](https://i.imgur.com/d4KBCZK.png). As you can see it seems to be pretty fast, 0.25 mS per word (with a 7 characters KeyWord), and it seems to rate matches reasonably well.

I even wrote a new version of 'l', the search command noscript mentioned in this [post](https://www.reddit.com/r/commandline/comments/c7gkfe/is_there_a_command_palette_for_the_unix_terminal/esf84jc?utm_source=share&utm_medium=web2x), 'lf' (local fuzzy), using 'FuzzyMatch()'. [Here is a comparison of the two noscripts](https://i.imgur.com/2bmewfj.png).

Here is the function:

FuzzyMatch() { # $1: String, $2: KeyWord. Exit: 0: Always. Returns match rating: 0 .. 1000. Example: 'FuzzyMatch "ClassifyTextFiles" "txt"'.
if [ -z "$1" ] || [ -z "$2" ] || [ ${#2} -gt ${#1} ] # Notes: Case insensitive, $1's length should be >= $2's length, Vowel characters are 25% less relevant.
then
echo 0;return 0
fi
local S="${1,,}";local K="${2,,}" # Convert to lower-case.
if [ "$S" == "$K" ]
then
echo 1000;return 0
fi
local V="aeiouáéíóúäëïöü";local IV # IV: Is_vowel (boolean).
local FMV=0;local MV=0 # FMV: Full match value; MV: Match value.
local I=0;local C;local R=""
while [ $I -lt ${#K} ]
do
C="${K:${I}:1}"
if [ "$V" != "${V/${C}/}" ]
then
let "FMV = $FMV + 75"
IV=true
else
let "FMV = $FMV + 100"
IV=false
fi
if [ "$S" != "${S#*${C}}" ]
then
S="${S#*${C}}"
if [ -z "$R" ]
then
let "R = ${#1} - ${#S} - 1" # R: Number of irrelevant $1's leading characters.
fi
if $IV
then
let "MV = $MV + 75"
else
let "MV = $MV + 100"
fi
fi
let I++
done
if [ -n "$R" ]
then # If there have been matches.
let "R = ${#1} - $R - ${#S}" # R: Nr of relevant characters: For "0123456789", "25": "2345" (number is 4 - of 10).
let "FMV = $FMV + 100 - (${R}00 / ${#1})" # No change if Nr_relevant_chars -eq Chars_in_string, FMV increases otherwise (+0..100).
fi
let "MV = ${MV}000 / $FMV"
echo $MV;return 0
}

I'd like some feedback. Please use the function and let me know what you think. Can you see a way to improve it? Do you have access to 'fuzzy search' libraries (python)? Could you, please, conduct a test similar to [this](https://i.imgur.com/d4KBCZK.png) using '/usr/share/dict/words' and KeyWord "applgec"? How long does it take per word? Which are the top 10 matched words?

Thank you in advance.

https://redd.it/ca70ay
@r_linux
A restaurant in Chorlton, UK. The logo was rather familiar
https://redd.it/cab5oe
@r_linux
Ubuntu-Maker Canonical’s GitHub Account Gets Hacked (added 11 empty repos)
https://thehackernews.com/2019/07/canonical-ubuntu-github-hacked.html

https://redd.it/ca8t36
@r_linux