allocaeightzerofoureightsix
allocaeightzerofoureightsix
Alloca486
5 posts
The blog of an amateur developer and avid linux tinkerer
Don't wanna be here? Send us removal request.
Text
You know one thing that this all accomplishes for the big companies is that it makes it extremely difficult to create free software with a user interface that users will accept. When eye candy is the expectation, practical user interfaces become stigmatized.
For example, all the GUI programming that I know is in the form of Xlib, Tcl/Tk and its python binding Tkinter. Tkinter makes good, usable, utilitarian interfaces with a very easy API in a popular and easy language. But it also has a very 90s look and feel, simple beveled 3D buttons, no advanced color parameters or animations, no shaped elements... because when you're designing an interface toolkit for all use cases why would you stop and try and implement eye candy as well? What would you anticipate needing?
Now with the rise of gtk and Qt and whatever KDE has (I'm sorry, KDE, we just couldn't get along), there are eye-candy interface toolkits in the open source world, but to me those are all compromised by the fact that they're trying to play the enemies' game. The barriers to entry in gtk are absurdly high because instead of a natively object-oriented language, the gtk API is based around an incredibly sloppy object-oriented extension of C that essentially tries to implement something resembling C++ in macros on top of pure C. This is necessary to do a huge bloated commercial-software style interface toolkit in a typical open-source "pure C" paradigm and frankly it sucks.
(Every Linux computer might as well have GNOME installed because it already has the entire fucking gtk library installed in able to use some indispensable piece of software.)
So we're actually slowed down and crippled by having to try and imitate the complex and graphics-heavy interfaces of commercial developers, or otherwise our software is rejected for looking "dated" despite the more basic toolkits being as practical now as their graphical forebearers were in the 90's.
I guess that's my rant. I could write shorter sermons but it'd take me longer.
Tumblr media
57K notes · View notes
Text
Lenova Ideapad 3 17iil05: My Review as a Linux User
This is the most expensive and nicest new computer I have ever owned (I have had several used computers that were nicer in their time.) I bought it at a severe discount, open-box, right before Best Buy brought in new stock for the holiday season.
Specs:
Processor: Generation 10 Intel Core i5-1035G1 (4 cores, 8 threads)
Base memory: 8GB soldered ram
Memory Slot: DDR4 SODIMM
Drive: 1TB HDD
GPU: Intel UHD
Removable Storage: SD slot
Other features: NOVO Button, Fingerprint sensor, Webcam with physical shutter, extended keyboard with keypad and media keys, Secure Boot, Bluetooth
I had trouble with this laptop initially. The UEFI firmware includes a bunch of proprietary secure boot stuff, to the effect that I couldn't figure out how to make it boot GRUB from a UEFI partition. Luckily, I still remembered how to do legacy boot under Arch Linux, so I never looked deeper into it. I couldn't use the hard drive that came with it, either, as it had some kind of Windows recovery partition (I think this ties in with the NOVO Button) that CFDISK under Linux couldn't delete. I first tried a 500GB HDD that I had lying around, but it physically didn't fit in this extremely thin-line laptop, so I pulled the 1TB SSD from my old laptop, backed it up, then wiped it, set up Arch and Artix on it in separate partitions, and went to work setting up a livable system.
On a similar note, the touchpad is not compatible with certain Linux kernel modules, for which the proper solution is to blacklist those modules. The quick fix, however, is to just add "pci=nocrs" to your kernel command line (edit it in /etc/default/grub, then regenerate the grub configuration with grub-mkconfig), and this is what I've done, since I mess with the kernel command line on all my systems anyways. As well, there are no Linux drivers for the biometric lock, which is fine by me, as I don't use a display manager, though this may frustrate someone else.
Overall, its Linux compatibility seems very high, as befits Lenovo, who have historically sold some of their pro models with Enterprise-grade Linux distros installed. I did occasionally see some visual artifacts in graphics-intensive programs early on, but this has reduced or stopped since I set up the Intel-specific microcode kernel module. I have had no other hardware or firmware problems, since fixing the touchpad issue.
It's fast, especially with the SSD in it. It cold boots to the login screen in a few seconds, seemingly faster with the systemd-based Arch than with Artix using Runit as its init system--I find this very interesting, as I've always heard that systemd is exceptionally bloated, but I draw no firm conclusions. Eventually I mean to try out an OpenRC-based distro.
Even with just the base 8g of memory (it won't take any of the DDR4 ram chips I have, for reasons that are beyond me,) it does not complain when loading hi-resolution images in GIMP, nor about running Firefox with many tabs open. I have noticed some glitches in Firefox that I did not see under Fedora 33 on my last computer, but I think that's down to Arch being a rolling-release distro. I have only heard the fans on this laptop spin up about four or five times. I made a swap partition though, if i were starting from scratch, I would not do so again; Linux is not inherently very swappy, and even with slightly raised "swapiness" in the system configuration, Linux doesn't seem to reach the point of needing to swap very often, if at all--this, with only eight gigs installed and multiple graphics-intensive programs running. And Linux uses physical memory quite zealously, so as not to render it a wasted resource!
Monitoring the cores with HTOP, each of the eight logical cores seems to receive a very balanced portion of the workload, and I've never seen the whole processor load go up above 30%--usually, it hovers around 6-8%, or about 15% when streaming HD video.
The keyboard is comfortable, full-sized and quiet even by laptop standards. My only complaints are the lack of a "menu key" next to the right Alt key, in favor of new Mac-style arrow keys that are wider than normal keys and not necessarily very comfortable to use with your pinky, as I do (when forced to use arrow keys at all.) The full keypad is nice, though num-lock is placed inconveniently, and the second "Insert" (which is the alternate function of the keypad's "0" key) is easy to hit by accident. Dedicated PrtScr, Insert and Delete keys are also present, as well as media control keys. Hot keys can be turned off in firmware, which I did.
The screen is very large, with adequate resolution and brightness and a luxury matte finish that hides smudges.
The wifi range is excellent, important, as my router is downstairs from my living room. Bluetooth is cumbersome to configure under Linux, but it also has excellent performance.
Now, as to my problems with this laptop:
There are only two USB 2.0 and one USB 3.0 port, all on the left side. There is, of course, no VGA port, though that would genuinely be expecting too much, I think. The whole right side feels wasted, with nothing but a pinhole for the NOVO system and an SD slot.
The laptop is thin and very wide. This leads to it feeling flimsy. Picking it up with one hand is generally a bad idea.
Also, multiple screws have fallen out of the bottom over the few months I have owned this computer. I think they knew this was a problem, and I think they used mild loctite on these screws, which I destroyed when I opened the computer to swap the drive. I've replaced all these screws, but it's a very irritating problem to have.
Between the UEFI problems, the effort required to fix the touchpad issue, and the slight physical frailty of the computer as a whole, I wouldn't necessarily recommend this as someone's first Linux laptop, unless you can get it at a discount, but if you don't mind having a little trouble to get there, it can be quite rewarding. I would recommend not worrying too much about upgrading the RAM... it barely needs it unless you're going to try to make it run AAA games, which... why not just keep it running Windows 10 in that event? And for god's sake, pick it up with both hands.
0 notes
Text
.zshrc
Tumblr media
Alacritty/Tmux & Zsh on i3-gaps with Compton, Arch Linux
0 notes
Text
Alternative to Session/Display Manager:
I hate display managers, because they’re set up to work with desktop environments, not bare window managers. Here’s my solution.
I write a .xinitrc-style file for each window manager I care to have on my system.
I put them each in directories under a directory I made, ~/.sessions, like so.
~/.sessions/”1 i3-gaps” ~/.sessions/”2 CWM”
and so on. Lastly, I put an empty folder called “6 Console.”
then I put the following script in a file called z-login.sh in /etc/profile.d:
if [[ "$LOGNAME" == "alloca" ]] # substitute your username here then        if [[ "`tty`" == "/dev/tty1" ]]        then                clear                figlet Welcome                echo ls -1 /home/alloca/.sessions | /bin/sh | fzf +m --layout=reverse-list --prompt="Choose a Desktop: " --no-info --height=7 | read sessionpath                if [[ "$sessionpath" == "6 Console" ]] # Replace this with whatever number your empty folder ended up being.                then                        clear                else                        startx /home/alloca/.sessions/"$sessionpath"/init                        logout                fi        fi fi
Make sure you have fzf and figlet installed for this. If you don’t want an ascii art “Welcome” banner you can just delete the “figlet Welcome” line instead. Also make sure you don’t have a session manager activated in systemd.
fzf is like dmenu for the terminal. I’ve used several programs that badly want to be fzf, but it took me this long to find fzf itself!
You’ll login at the console logind prompt, then after all the other login scripts, z-login.sh will be run automatically, and you will see a very elegant and minimalist menu.
This is what it looks like, though this is a dry run in a terminal:
Tumblr media
3 notes · View notes
Photo
Tumblr media Tumblr media
My current i3 configuration, running on Arch. Vim-like modal keybindings, dynamic gaps and multiple dmenu scripts. Conky with figlet clock. Alacritty
DM me for dotfiles.
Wallpaper courtesy of Roger Dean.
0 notes