Updated Project: neofetch but animated
its already a released project, but I will be adding some requested features, clean up the code etc.
the keyreader class was written by chatgpt
I also used chatgpt to find a good tui module to use
Updated Project: neofetch but animated
its already a released project, but I will be adding some requested features, clean up the code etc.
the keyreader class was written by chatgpt
I also used chatgpt to find a good tui module to use
I updated my animated neofetch tool. It is now version 1.0
Trying to do a flicker-less animated fetch tool that also supports terminal resizing without using a tui library and also doing it cross platform was finnicky, I had to use the rich module. It is possible to do it without rich but I couldn’t get it to work the way I wanted it to work, so I had to use rich.
I also had to port over all rendering code from bash to python. That was not really fun but ehh what can I say.
I also made caching 2.5x faster by just doing jpeg frame extraction rather than png and using multithreading while processing frames with chafa.
I did a bunch of stuff, did 1.0 release. I also made a yt video on it. https://www.youtube.com/watch?v=ektxQu2MCU0
New features:
Log in to leave a comment
I need to get rid of that black flicker when it updates the fetch info. will probably move the processing over to a new thread.
Log in to leave a comment
From now on the code will only call ffprobe to get video dimensions if there isnt a valid cache and height isnt known.
I also fixed a weird bug where after caching the terminal mode would be broken and up/down arrows would print ^[[A instead of bringing the previous commands. This was caused by me forgetting to send the output of chafa to subprocess.PIPE. It was sending the outputs to the main terminal which messed up the terminal mode
I also removed the “bc” package from dependencies because it was only used for the bash script, which has been ported over to python.
I have also updated the pyproject.toml file to prepare for the PyPI release. I decided to support python 3.10+.
Log in to leave a comment
I recorded new benchmarks.
I had to get rid of neofetch from benchmarks because it just refuses to work properly in windows, I either need to dual boot linux which I dont want to do or use WSL which is bad. I can’t use a virtual machine because that slows things a lot and not indicative of actual performance.
Anyways the optimizations I did roughly sped up the caching by 2.75x which is great. Only catch is that the cached time is a bit higher but I think that’s acceptable and I can always optimize it later.
It might be technically possible to use git bash to do benchmarks within windows but I couldnt get neofetch to work properly for some reason in my python code. It works if I call neofetch by itself in git bash it works fine, but doesn’t work when my python script calls it in git bash.
Log in to leave a comment
Log in to leave a comment