

It is really neat. I may have to redo all my shell scripts now
he/him
Alts (mostly for modding)
(Earlier also had @sga@lemmy.world for a year before I switched to @sga@lemmings.world, now trying piefed)


It is really neat. I may have to redo all my shell scripts now


my guess is mostly lack of arrays in posix shell. there are other things as well, but arrays are really useful, especially when they are making other things easier to write. A stupid comparison i can think of is a compiled language targettng x86-64v2 or 3 instead of v1 because it has avx (i am not actually sure when avx was added, but imagine some instruction being added). without avx, your binary would be slower (in posix, for arrays, you essentially need to maintain a string and use awk/sed/cut to get particular elements, and many things would just not be possible). If they would target v1 (posix), it will run in more places, but it would be slower for a lot of people who have v2 or newer. And a lot of people have v2 or newer (bash).


to some extents - sunk cause fallacy and performance.
I had a launcher script which required it’s run to complete under 50 ms to be usable. python just did not make the cut (it would call external stuff and more). I know i should not expect performancce from shell scripts, but started from essentially a find of about 20-30 files and a cat of at most 100 lines. It was fast enough then. then I kept adding stuff, it kept slowing down. I thought of converting to python, even did some initial bits, performance was not good.
beyond a certain point, i kinda stopped caring optimising (i replaced bash with dash, made mos tif not all calls to external tools a minimum, and tried to minimise slow calls(think calling some tool again and again vs a vectorised operation, or not reading a variable multiple times in memory )). At some point it reached 300-400ms, and i decided to split it into 2 things - a executor part which cahes output of some commands with certain run conditions, and a launcher part which just read the output file (now almost a 1 miB).
At some point i decided learning rust, and first thing i wrote was that launcher. implemented caching and run conditions better, moved larger files (now it read multiple megabytes(15+)) to /tmp dir, which is mounted in memory, and tried to minimise variable calls. now it lists 10 times more files, in less than a third or fifth of the time.
tl;dr - a stupid person did not shift to a compiled program for a long time and kept optimising a shell script


as top comment has already mentioned - try wikis. think arch wiki or gentoo. you dont have to use those distros to know about linux, just read them. and even better, spin up virtual machine, and install arch/gentoo there. since you already use bazzite, you don’t have to redo stuff already done (like playing game or something), so you use the sandbox playground to just learn. if it breaks, redo, or make checkpoints.
A nice article. I need to read more about it, but I will likely use it. My guess on the performance is that there is not going to be any major performance drawback, but since it is runtime, I can not say for sure.


I do not know why this got so downvoted (maybe for cross posting too much?, if so, try to reduce that a bit). Someone has said wpaperd already, but there is also awww. As to exactly get the rate of switching.
awww img <path/to/img>
# You can also specify outputs:
awww img -o <outputs> <path/to/img>
# Control how smoothly the transition will happen, as well as its frame rate.
# --transition-step: smaller values = smoother. Default is 2 if --transition-type is `simple`, and 90 if it is not.
# --transition-fps: Default = 30.
awww img <path/to/img> --transition-step <1 to 255> --transition-fps <1 to 255>
# There are also many different transition effects:
awww img <path/to/img> --transition-type center
# Note you may also control the above by setting up the AWWW_TRANSITION_FPS,
# AWWW_TRANSITION_STEP, and AWWW_TRANSITION environment variables.
# To see all options, run
awww img --help


I do. I know how to install arch, but I do not always have time or patience to get internet working (mostly this). I prefere arch for many reasons, and there is more to it than just the installer. But when I last installed arch, archinstall script was yet to be stable, so it was not an option, but now even that is fine i guess.


they have done that twice


please do not suggest that manajaro is arch ready to use arch. manjaro is just bad. if you want easier to install arch go endeavour os or cachy or some other arch plus gui installer. https://manjarno.pages.dev/


https://knaben.org/ is an aggregator. I dont sail often, but if i do, and i know what i want is not very recent (like made available in last week) then i go there first


it does now, most important feature in gim3 is non destructive layers
i use lineage os (without gapps or microg). I still have whatsapp. I feel you buddy.