<necromansy>
im getting real "programmer ad code" vibes
<midfavila>
...from my program?
<midfavila>
i'm almost offended
<necromansy>
nah just from the conversation about var names
<necromansy>
:>
<midfavila>
I was gonna say.
<midfavila>
see, if you're gonna name your variables something non-generic, it has to be *clever*
<midfavila>
real programmer ads name their variables using unicode or emojis or some bullshit.
<necromansy>
i write mine to be pragmatic usually
<rio6>
const int ONE = 1;
<rio6>
const int TWO = ONE + ONE;
<midfavila>
well, pragmatism over everything else
<necromansy>
b_x_gse for an x component of a magnetic field in a GSE coordinate system
<midfavila>
but I think gnirts[] is more descriptive than s2[]
<midfavila>
s2 is... a second string. woop de doo.
<necromansy>
str_rev
<midfavila>
meh
<midfavila>
gnirts is shorter and adds personality.
<necromansy>
and is a nightmare to read quickly
<midfavila>
meh
<necromansy>
but you do you m8
<midfavila>
I don't intend to write programs for other people
<midfavila>
so maximizing readability isn't like
<midfavila>
super high on my list of priorities
<rio6>
node->head = head;
<necromansy>
this is a fair call
<rio6>
node->tail = tail;
<rio6>
node->left_hand = left_hand;
<midfavila>
as long as *I* can read and understand it, I don't really care how far it deviates from what mr. thought leader has declared
<rio6>
node->right_big_toe = right_big_toe;
<rio6>
linked list 101
<midfavila>
I haven't learned about pointers yet aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
<midfavila>
stop trying to TEACH me things
<necromansy>
ah pointers
<midfavila>
i'm trying to solve every single exercise in K&R, but also every single general problem they present
<midfavila>
so any time they say "X program might look like...", I try to write my own version and then compare the result (once it works) so I can see where I might improve
<necromansy>
good thinking
<midfavila>
as a result, I'm still stuck in chapter one.
<midfavila>
HOWEVER
<schillingklaus>
pointers are the beginning and the end of C
<midfavila>
I'm a fucking *master* at declaring variables
<necromansy>
im planning on going through K&R while also porting my analysis scripts into C code
<necromansy>
for shits and gigs
<midfavila>
i just want to write utility software
<midfavila>
to replace some of the cruftier tools I use
<midfavila>
having a not-shit terminal is high on my priority list, for example
<necromansy>
what you using currently?
<midfavila>
xterm
<midfavila>
xterm is comfy, since it has basically zero latency, but it's clunky and has so many weird and unneeded features
<midfavila>
urxvt is less comfy, and has a little latency, but it's also clunky and has many unneeded features
<necromansy>
st isnt too bad and i havent really noticed problems with latency
<midfavila>
st is, no joke, probably among the worst terminals I've used.
<necromansy>
lmao yeah?
<midfavila>
imho,
<midfavila>
scrolling should be part of the terminal itself.
<schillingklaus>
rxvt is vastly superior
<midfavila>
and the argument of "just apply the patches bro"
<midfavila>
only works when there are no updates.
<midfavila>
schillingklaus it's not hard to be better than xterm or st
<midfavila>
that's like saying "xterm is better than VTE"
<midfavila>
like yeah, but that's only because VTE is ass
<necromansy>
yeah im not a huge fan of the patch system because updates break them
<necromansy>
i know thats a risk but i feel like if you're writing a program to be patched on the user end
<necromansy>
you'd make it more friendly
<midfavila>
if I were to implement a terminal, it would be both extremely minimal and also focus on strong basics
<midfavila>
somewhere between st and xterm
<rio6>
I was surprised that xterm can display image
<midfavila>
xterm can do a *lot*
<necromansy>
im torn on sixel support
<necromansy>
its cool
<midfavila>
like, it's actually hilarious how impressive xterm is
<necromansy>
but also kinda
<necromansy>
bloat?
<midfavila>
xterm is 50k+ lines
<midfavila>
you're stuck with bloat either way
<necromansy>
yeah ofc
<midfavila>
but among terminals it's probably the best.
<midfavila>
again, not saying much.
<midfavila>
i've tried most terminals around, and they always have one or two dealbreakers
<midfavila>
...or they're just stupid.
<rio6>
"gpu accelerated terminal"
<midfavila>
like kitty.
<necromansy>
so many of the alternative terminals these days are heavily feature-focused
<necromansy>
yeaaaaah
<midfavila>
kitty makes me want to kill myself
<midfavila>
"Written in Rust, made with love!"
<midfavila>
:rocket::rocket::rocket:
<midfavila>
>100+ mb just to draw text
<midfavila>
absolutely haram.
<testuser[m]_>
kitty is in python
<testuser[m]_>
even worse
<midfavila>
...is it???
<testuser[m]_>
some C restu pyyhon
<midfavila>
ew
<midfavila>
yeah, the only thing I would want in a terminal is like
<midfavila>
optoinal scrollback, unicode support(maybe), ttf support, and xembed support
<rio6>
what's xembed
<midfavila>
as well as the minimum viable subset of VT100 to maintain compatibility.
<midfavila>
xembed is a protocol that allows you to embed X clients inside of each other
<midfavila>
suckless tabbed is a good example of XEmbed in use
<midfavila>
but yeah, a terminal has no place managing tabs
<midfavila>
tabbing is the job of either the window manager, multiplexer, or tab interface.
<midfavila>
...oh!
<rio6>
spawning another terminal is faster than using tabs :P
<midfavila>
another thing I would do is add an easy way to connect the terminal directly to a device node
<midfavila>
no point in using a program like picocom or minicom to emulate a terminal... inside of your terminal.
<schillingklaus>
i need complete keyboard controllability of terminals.
<midfavila>
use a multiplexer then, fivehead.
eyepatchOwl has joined #kisslinux
<midfavila>
rio6 ultimately when I write my terminal it's going to be about user choice.
<midfavila>
not in like, a meme way
<midfavila>
where it's 1000mb to open and everything is written in a scripting language
<midfavila>
or it's useless out of the box and impossible to hack on yourself
<midfavila>
just a simple, clean, solid terminal.
<midfavila>
anyway, it's just after one. I need to sleep
<rio6>
night
gtms has joined #kisslinux
schillingklaus has quit [Quit: schillingklaus]
sad_plan has joined #kisslinux
<riteo>
good morning!
<sad_plan>
good morning C:
eyepatchOwl has quit [Quit: Connection closed for inactivity]
soliwilos has quit [Ping timeout: 252 seconds]
testuser[m]_ has joined #kisslinux
testuser[m]_ has quit [Changing host]
sad_plan has quit [Ping timeout: 248 seconds]
fwze has joined #kisslinux
aws has joined #kisslinux
aws has quit [Client Quit]
GalaxyNova has quit [Ping timeout: 264 seconds]
cy6x has joined #kisslinux
<cy6x>
Hi all
<cy6x>
I'm trying to install sway on gkisslinux, but when I install the freetype-harfbuzz package, I get the error
<cy6x>
/usr/bin/ld: cannot find -lharfbuzz
<cy6x>
Help please
test10 has joined #kisslinux
<test10>
test
test10 has quit [Client Quit]
<testuser[m]_>
you mean when building freetype-harfbuzz ? cy6x
<cy6x>
Yes
<cy6x>
Sorry, I forgot say that I am using your personal repo "kiss-repo" with wayland packages
<testuser[m]_>
looks like i got the same issue, lemme check
<cy6x>
Ok
<testuser[m]_>
just remove "-lharfbuzz" from line 47, and only keep the -L part
<testuser[m]_>
seems to work fine without
<cy6x>
Oh, I compiled https://github.com/harfbuzz/harfbuzz and everything now build without errors. I suggest adding the harfbuzz package to the freetype-harfbuzz dependencies or remove flag "-lharfbuzz"
<cy6x>
Ok, thank you :)
konimex has joined #kisslinux
<cy6x>
I enabled "nvidia-drm", added "export XDG_RUNTIME_DIR=/tmp" to the .profile, but sway won't start: https://pastebin.com/CmkKvgjK
<cy6x>
:(
<testuser[m]_>
modprobe nvidia-drm modeset=1
<testuser[m]_>
doing this ?
sad_plan has joined #kisslinux
<cy6x>
Yes, nvidia-drm is enabled
<testuser[m]_>
ah also you need to enable the seatd service
fwze has quit [Quit: WeeChat 3.1]
cy6x has quit [Read error: Connection reset by peer]
cy6x_ has joined #kisslinux
<cy6x_>
I ran "ln -s /etc/sv/seatd /var/service", rebooted the pc, but it still gives me an error (sway --my-next-gpu-wont-be-nvidia"
<midfavila>
but at least it satisfies the requirements for 1-19 exactly...
<riteo>
yeah it's weird
<riteo>
You'll surely get more elegant with time though
<midfavila>
"weird" is a polite way to put it
<riteo>
I mean, it works
<riteo>
that's all that matters in the end
<midfavila>
eeeeeeeeeeeh.
<riteo>
it'd be awful if it worked 1/3 of the time
<midfavila>
honestly, the annoying part is the *specific* requirement that it operate per-line
<midfavila>
that's why the ugly while-if statement in main() is there. but at this point I'm just gonna shove this somewhere and not think about it again
<riteo>
yeah, just go on and keep going
kayw has joined #kisslinux
kayw has quit [Changing host]
<midfavila>
Mm. All I need to do now is work on 1-18, and then I can move on to section 1.10 and its exercises...
<midfavila>
...which includes a syntax checker. wh-
<midfavila>
...
<midfavila>
nope. this can wait for another day.
<riteo>
b r u h
<midfavila>
like...
<midfavila>
the best method *I* could think of would be to include variables for each particular symbol you're checking
<midfavila>
ideally a boolean, or a could chars if you wanted to do some bit-fiddling
<midfavila>
s/could/couple/
<midfavila>
what the fuck, me...
<midfavila>
but yeah, flip the bit when you encounter an opening character, flip it back when you encounter a closed. if there are any non-zero syntax variables at the end, just report those. maybe count the number of times syntax errors are found....
* midfavila
shrugs
claudia has joined #kisslinux
<riteo>
mhh that sounds interesting
humky_ is now known as humky
strajder has quit [Quit: leaving]
strajder has joined #kisslinux
cy6x has joined #kisslinux
testuser[m] has joined #kisslinux
kqz has joined #kisslinux
illiliti_ has joined #kisslinux
illiliti is now known as Guest8291
Guest8291 has quit [Killed (zinc.libera.chat (Nickname regained by services))]
illiliti_ is now known as illiliti
<testuser[m]_>
test
<kiedtl>
failed
<testuser[m]_>
nice
fwze has joined #kisslinux
<nerditup->
What are some KISS principled alternatives to Drone for CI?
<nerditup->
I'm thinking of setting up some simple git hooks
<acheam>
testuser[m]_: the underscore is back!
<testuser[m]_>
acheam: my homeserver is still broken lol
<acheam>
:(
fwze has quit [Quit: WeeChat 3.1]
<illiliti>
nerditup-: sr.ht
<acheam>
nerditup-: 2 options come to mind, builds.sr.ht and just hacky thing using ssh and local git hooks
<acheam>
sr.ht is not simple to administer though, but I think nerditup- is experienced in that field
<acheam>
you need postgres, 2 redis instances, a mail server, and a reverse proxy
<acheam>
and wsgi
<testuser[m]_>
not all of that is necessary right ?
<acheam>
it is
<testuser[m]_>
what if you dont need the ML
<acheam>
you still need transactional mail for accounts and stuff