<msk[m]>
no problem, thanks for introducing me to it
<necromansy>
damn thing errors out in the build under the bfu subdir
<testuser[m]>
btw what i sent you was the felinks package, its a maintained elinks fork
<msk[m]>
oh nice, glad that people are still giving it care
* necromansy
realises theres a link in the logs
sad_plan has joined #kisslinux
<sad_plan>
msk[m]: elinks is ancient. latest release is from 2012. unless someone forked it at continued its work
<msk[m]>
yeah the felinks last commit is a few weeks ago
GalaxyNova has quit [Read error: Connection reset by peer]
<sad_plan>
I just noticed. its nice to see people keeping such projects alive
m3g has quit [Ping timeout: 250 seconds]
mahmutov has quit [Ping timeout: 272 seconds]
sad_plan has quit [Quit: Quit]
riteo has joined #kisslinux
<riteo>
hiiiii!
gtms has joined #kisslinux
* necromansy
waves
<testuser[m]>
hi
gtms has quit [Remote host closed the connection]
claudia has joined #kisslinux
<claudia>
morning.
<testuser[m]>
Hi
<riteo>
hi!
<claudia>
testuser[m]: You are maintaining 70 packages in community :v
<necromansy>
a valiant effort
<claudia>
* a whopping
<claudia>
The plus side of our current maintainer model is that a package is assigned to a person very clearly. On the downside this model leads to a maintainer monopoly for people who are in need of a package regularly, or just are in need _first_ .
<riteo>
I mean, you can still make PRs, can't you?
<claudia>
I wonder if a maintainer model ala VOID could be suiteable, where some packages, like complex browser packages are assigned to a person who has knowledge about it makes very sense.
<claudia>
Small packages could be signed as "orphaned" and everybody can send PR.
<necromansy>
area of expertise maintainers?
<claudia>
riteo: No, you have to get in contact with the maintainer, so they can do changes.
<riteo>
oh
<riteo>
that feels weirdly unnecessary, although I have a vague idea of why it's done this way
<necromansy>
its mostly to keep the responsibility clear
<claudia>
I mean another downside is, that workpower of other people of the community is unused, even if they have time and will to update stuff.
<claudia>
Yeah, the clear assigned is something important, but its not needed for _all_ packages.
<necromansy>
the upside is that maintainers arent forced to maintain packages they wouldnt use otherwise
<riteo>
maybe we could allow some trusted members to make "prioritary" PRs?
<necromansy>
downside to *that* is you need active community members to fill the hole if a maintainer drops a package
<riteo>
like, if we knew that, for examble, claudia could make very fast updates to certain packages, couldn't we allow her?
<claudia>
I thoght about keeping the current model, but e.g in the buildscript add in the second line "Orphan", so this package is updateable for everybody.
<riteo>
that'd make sense
<riteo>
the packages who need only one assigned mantainer would be very few this way
<claudia>
The situation for the person on the merge button should not be more difficult, and keep clear.
<claudia>
riteo: yeah exactly.
<riteo>
that feels reasonable
<claudia>
I dont know, this something which spooks some time now in my mind. I think this could relax the procedure of updating for a lot of packages / outdated packages. More people could be involved.
<riteo>
I don't see how you idea could be an issue tbh
michalsieron has joined #kisslinux
riteo has quit [Ping timeout: 272 seconds]
mahmutov has joined #kisslinux
michalsieron has quit [Remote host closed the connection]
<alex_>
Hello. So I'm installing KISS but GNU keyserver fails. Is there an alternative mirror?
micro_O has joined #kisslinux
micro_O has quit [Ping timeout: 258 seconds]
<testuser[m]>
git commit verification is optional btw
<testuser[m]>
i think there was some discussion earlier too about the keyserver being ded
mobinmob has quit [Quit: Connection closed for inactivity]
micro_O has joined #kisslinux
micro_O has quit [Ping timeout: 272 seconds]
dilyn has quit [Quit: Connection closed]
Uks2 has quit [Quit: Byee]
Uks2 has joined #kisslinux
mobinmob has joined #kisslinux
micro_O has joined #kisslinux
michalsieron has joined #kisslinux
mulc has quit [Remote host closed the connection]
mulc has joined #kisslinux
<micro_O>
shared maintainership model is what we have now, even if we don't think we do; example: dilyn decided 30 days was the length of time for package abandonement.
<micro_O>
personally, I like growing the community, and allowing someone to make a PR that very clearly updates a package, and accepting their PR, is a great way to welcome people during first impressions
<micro_O>
in other words, I would prefer not to reject someone's PR (at least against my packages in community), just because they aren't the single maintainer
<micro_O>
this is made especially easy with the separate author/committer concepts that git supports.
riteo has joined #kisslinux
<riteo>
hiiiii!
<riteo>
sorry for the sudden timeout, I had issues with my electrical grid
<micro_O>
generally though, it becomes easier to have shared ownership if the packages also run some sort of tests, perhaps in pre-install
<micro_O>
even simple things, like `test "$(packagename --version)" -eq "2.13"` to build confidence
micro_O has quit [Remote host closed the connection]
Uks2 has quit [Quit: Byee]
Uks2 has joined #kisslinux
schillingklaus has quit [Quit: ERC (IRC client for Emacs 26.3)]
<testuser[m]>
Cuz they're sedding random cmake flags
<testuser[m]>
Makeflags* not cmake
claudia has quit [Ping timeout: 265 seconds]
claudia has joined #kisslinux
<claudia>
Yeah, this issue is not wyverkiss related.
<claudia>
I wonder if such a build is even possible for such ancient software with little development.
mulc has joined #kisslinux
mahmutov has quit [Ping timeout: 265 seconds]
kyxor has joined #kisslinux
<kyxor>
so I guess nobody took over libressl repo ? We how can we tolerate this openssl garbage? I looked and it is 2x more bloat, this is not kiss at all
<soliwilos>
Gentoo and other distro's have dropped libressl support, there's hardly any distro left which uses it.
<kyxor>
but there is nothing wrong with it
<soliwilos>
Probably a lot of work making sure stuff doesn't break as libressl and openssl diverge.
<kyxor>
I am about to press that big fork button
<testuser[m]>
Port python ssl lib to use libressl compatible apis again :p
<testuser[m]>
If you don't need it then just install libressl and sed -i 's/openssl/libressl/' */depends
<testuser[m]>
Even stuff needing python for make won't build, since ssl lib is used for ton of stuff
<kyxor>
I wanna see if I can maintain the whole libressl distro myself, so for now I be doing that in personal repo, if it happens to be easy and worth the effort might as well ask to ressurect the one in kiss-comunity
<testuser[m]>
But you can just stay on py 3.9 for years to come
<testuser[m]>
Since it'll be supported
<kyxor>
yeah, and maybe in those years there will be a nice patchset for newer versions
kiedtl|litterbox has joined #kisslinux
<msk[m]>
kyxor: sorry if this is a bit off-topic, but what do you use instead of macros in neatvi?
GalaxyNova has joined #kisslinux
<msk[m]>
I know v. exists but it only does the last edit instead of all on a line
<kyxor>
You mean macros like in vim, where you can record entire input stream?
<msk[m]>
yes
<msk[m]>
or multiple cursors in vis, which does the same thing
<kyxor>
Sadly that's not a thing, maybe v. can be improved to record everything, but I am not sure about how to implement that cleanly
<msk[m]>
Would you just repeat the edits manually, then? My workflow is to have both neatvi and vis installed, opening vis when I need a macro in neatvi
<kyxor>
Hm, trying to find that posix vi(1) paper, there is that weird @@ key, I am always confuzed on how it works
<kyxor>
msk[m]: the @@ might do what you want though, because it can run a prerecorded thing from a register afaik
<kyxor>
but how well it works idk, I don't use it normally
<msk[m]>
I just see "exec buffer empty" no matter what I seem to try
<msk[m]>
in busybox vi it's "@ not implemented"
<kyxor>
It's tricky, one will probably never figure out how it works without reading source code, I am trying to recall right now 1 sec
<GalaxyNova>
testuser[m]: Do you still have that elinks package
<kyxor>
ok so it's like this: you have to type out the vi commands in the file, then you yank the stuff into any character register via "ayy where "a" is register a, then it can execute that buffer via @a where a is that register
<kyxor>
or @@ itself will use the last used register, if you used "a" it would use that
<msk[m]>
how do you specify escape?
<msk[m]>
"" doesn't seem to work
<msk[m]>
<Esc>* dang it matrix client
<kyxor>
probably you would need a raw byte
<kyxor>
so it would need to have the ctrl+C byte in that buffer to do the ESC
<msk[m]>
I have a snippets script that could copy it to my clipboard
<msk[m]>
not sure how to even output the raw byte for 03 somewhere
<kyxor>
probably won't help, because vi will just escape then, you need a hex editor :)
<kyxor>
so type the macro in a txt file, then just append that 03 using hex editor
<GalaxyNova>
bvi is a nice hex editor
<kyxor>
I am pretty sure vi can still yank that
<msk[m]>
but since that's in a different text file, it won't be in the original file's exec buffer
<msk[m]>
I would need to copy paste my original input into the new hexed file, apply the macro, then transfer it back
<kyxor>
in that case you can use :!r file to get it into the buffer you need then probably yank, this is some next level wizardry
<msk[m]>
it doesn't even implicitly add Esc to the end, so I can't leave the macro in insert mode
<kyxor>
not :!r just :r I meant
<kyxor>
it works
<kyxor>
I just got it to exit inrert mode, but I had to use hex editor and that wizardry sruff
<msk[m]>
could I somehow patch the file that does exec buffers to press escape at the end of each macro?
<msk[m]>
then I would have to format the line of vi commands a bit differently but it would be way easier
<kyxor>
Hmm, okay it does not seem like a bad idea to maybe add a feature to vi so that user can type literal bytes, doesn't seem to be hard to implement
<kyxor>
you can patch it too
<msk[m]>
yeah, or be able to disable escaping pasted bytes
<kyxor>
look into vc_execute function vi.c
<kyxor>
you can just add like "term_push("\x03", 1);"
<msk[m]>
adding it after the if (buf) for loop gives me "else without a previous if" when compiling
<kyxor>
just add in scope for if statement {}
<msk[m]>
it works
<msk[m]>
it will still be annoying if there are many inserts on each line that are needed though
<msk[m]>
thank you ver much kyxor
<msk[m]>
very*
<kyxor>
You're welcome. But ofc this is a hacky solution... I am still maybe there is better way
<msk[m]>
maybe term_push could execute \x* as a raw byte? Then hund would have to be remapped though
mahmutov has joined #kisslinux
<msk[m]>
unless I'm misuderstanding it
<kyxor>
hund is it's own program it does it's own keybinds and it's own input handling that is different to vi, it's designed so that there is no friction and user can remove it if desires.
<kyxor>
There's is only like 3 lines of code from vi that you have to remove, so it's neat
<msk[m]>
not remove it, I mean just remap it from
<msk[m]>
from \
<msk[m]>
so that \x03 and stuff like could be used
<kyxor>
Oh
<msk[m]>
s/like/like that
<kyxor>
idk, I don't see a problem with that bind
<msk[m]>
oh wait I just remembered that kj exits insert mode
<msk[m]>
I don't need any escape characters
<kyxor>
yeah it does, but speculatively
<kyxor>
well if from a macro I guess chances are close to %100, doubt there that code will ever execute slower than 500ms
<msk[m]>
that's much easier then
<kyxor>
idk anymore but that timing for kj is defined in led.c line 723 if you ever have problems with it
<kyxor>
you can tweak the delay
GalaxyNova has quit [Quit: Whoooooshh]
<msk[m]>
thanks, I'll keep that in mind
<msk[m]>
one more thing, what's the best way of copying text to the clipboard?
<msk[m]>
right now I select the text with my mouse and use my terminal's copy key
<kyxor>
you mean like x11 clipboard, well sadly there is no other way
<kyxor>
completely terminal dependant feature
<kyxor>
like if you use something like keyboard select patch for st for example that would make it feasible
<kyxor>
that's what I use
<msk[m]>
keyboard select path?
<msk[m]>
I'm also on st
riteo has quit [Ping timeout: 240 seconds]
<msk[m]>
oh it's a patch I think
<kyxor>
obviously there are still limitations, like you can't copy more than you can see, then probably better to just open new file, paste the yanked stuff, then use xclip
<msk[m]>
yeah I found it, but am also concerned about copying more than one screen
<msk[m]>
how would you paste the text into a new file without having it in your clipboard?
<kyxor>
but the vimbrowse is a mess, pretty buggy implementation but has more features
<msk[m]>
I could run xclip -sel c but then I would need to type the entire path
<kyxor>
err, like this: I want next 200 lines of this buffer/file into new one, I do: 200yy :e newfile p ^k then :! xclip (flags) newfile
mobinmob has quit [Quit: Connection closed for inactivity]
<msk[m]>
oh that works, I didn't know the yank buffer persisted like that
<kyxor>
registers persist, I forgot to mention so for a macro you don't need to use the :r macrofile
<kyxor>
hmm also if you just use vi like that for clipboard, I guess you don't even need a clipboard manager, since you can just make newfiles and that would make your clipboard history, and by using vb you can get history of past xclip commands
<kyxor>
it's really nice
<msk[m]>
the password manager I made is already pretty minimal
<msk[m]>
s/password/clipboard/
<cotangent>
<msk[m]> the clipboard manager I made is already pretty minimal
micro_O has joined #kisslinux
<msk[m]>
oh that actually works, I thought it was just a convention
<msk[m]>
I think having vim_browse would be more to keep track of
<kyxor>
msk[m]: btw, some day this will be a new regex engine used in neatvi: https://github.com/kyx0r/pikevm I hope I can get it all working until end of summer
<msk[m]>
is that a breaking change? will I need to edit my sytax rules?
<kyxor>
non backtracking matcher, it's really something. I mean it looks minimal but when you get to understand how it works, it's a heluva cool engineering achievement
<kyxor>
mks[m]: no, actually I will support both versions of regex, there should be no visual difference to the user
<kyxor>
well the current matcher in neatvi is also very fast I hand optimized it, the original from Ali is like 2X slower just by looking at cpu usage.
<msk[m]>
s/s\/fastr\/faster/s\/fastr\/faster\//
<cotangent>
<msk[m]> a million times fastr? o
<msk[m]>
so then it will be 500,000 times faster than the current on kyxor?
<kyxor>
so like right now neatvi mostly sucks with bracket expressions and + operator
<kyxor>
msk[m] depends on the load
<kyxor>
for small strings probably no difference, but for something like [^abc]* on a 1 GB file yes it should be way faster
<msk[m]>
I've never had any delays with the regex, but on that 1 GB file, what would happen with the old engine?
<msk[m]>
the text will stay white will it figures out what to highlight?
<kyxor>
Well nothing really, but If you do a / search for something it would take some time
<kyxor>
also the backtracker is limited to 256 stack, so it can't match patterns that are wider than 256 characters (most of the time)
<kyxor>
So you can search for something and never even find it because of the stack size limitation
<kyxor>
in pikevm there is nothing like that, the memory usage is constant with the regex supplied
micro_O has quit [Ping timeout: 272 seconds]
<msk[m]>
why didn't the original neatvi go for pikevm initially?
<msk[m]>
it sounds better in every aspect
micro_O has joined #kisslinux
gtms has joined #kisslinux
<kyxor>
because it's not implemented fully, I am working on it. Any any other engines that are based on Thompson NFA are bloated, aka C++, rust, and thousands lines of code
<kyxor>
hek even musl's regex implementation sucks
<kyxor>
its 3 times slower than neatvi right now
<msk[m]>
how did they all mess up Thompson NFA so badly?
<kyxor>
I have fixed so many bugs in pikevm from the original research paper, and mostly of that code went under the radar when Russ Cox wrote it
<kyxor>
also the feature creep kinda kills thompson Nfa because something like backreferences can't be computed in N time
<kyxor>
millennium problems
yamchah2 has quit [Ping timeout: 272 seconds]
<kyxor>
But I just don't support them, so no problem XD
<msk[m]>
your implementation sounds pretty significant, then, could it be used for any tool, or is it only for neatvi?
<msk[m]>
yeah I've never needed to use backreferences before
<kyxor>
You can use it for other tool if you want
<kyxor>
just grab the regex.c file and bam
yamchah2 has joined #kisslinux
<msk[m]>
interesting
<kyxor>
try this in neatvi, type "ACCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX" then try to search /A(B|C+)+D
<kyxor>
warning: get htop ready or smth :)
<kyxor>
you'll see catastrophic backtacking in action
<msk[m]>
yep it's at 100 CPU
<kyxor>
so in pikevm that is impossible
<msk[m]>
and it froze
<kyxor>
that's how they DDOSed cloudflare services back in 2019 ironically
<msk[m]>
I look forward to the change, then
<msk[m]>
lol they pretty much ddosed themselves
<msk[m]>
should have hired you at cloudflare to fix the regex implementation
<kyxor>
oh yeah, though back in 2019 I didn't even know how to use regexes, then when started making the text editor learned them cause it was part of it
<msk[m]>
sounds like the cloudflare devs should have tried making a few text editors
<ang>
to enter an escape char, can't you simply use C-v C-[ ?
<ang>
and re copying, maybe I misunderstood, but why not simply `w !xsel -ib`
<msk[m]>
oh that works even better
<ang>
ranges should work too. 5,/foo/w !xsel -ib
<msk[m]>
didn't know you could use w for output into something
<ang>
start with the basics and learn ed, that knowledge transfers nicely to ex/vi
<msk[m]>
:w !xclip -i -sel c also works since I don't like .xsel.log
<msk[m]>
what would you recommend as the best way of getting familiar with ed, using it for every file for a while?
<ang>
I don't like the xclip options but yeah, .xsel.log kinda sucks :D
<ang>
you could try to use it for small edits
<msk[m]>
from what I remember it was annoying to change a small part of a long line
claudia has quit [Ping timeout: 258 seconds]
<ang>
yeah, that's one of its shortcomings
<msk[m]>
I thought sam or somethin was supposed to fix it
<ang>
you either have to retype the entire line or get creative with regexes
<msk[m]>
s/somethin/something
<ang>
structural regular expressions make it a little easier
<ang>
I like ed for writing text. Like git commit messages, by setting EDITOR=ed (or does git use VISUAL?)
<msk[m]>
how long are the commit messages? I made a wrapper so I can write `gca "commit message"` and it adds everything, commits, and git pushes
<ang>
sometimes I add more detailed description of what that commit does, basically one short paragraph or two
<msk[m]>
also, unrelated, what's the proper way of changing coreutils? I want to try sbase, so would I kiss b sbase and then loop through kiss alternatives?
<msk[m]>
oh that's good practice then ang
<ang>
I think you can just change coreutils like that, yeah. But some sbase utilities might lack some needed options to build packages, like sed -i
<ang>
and if you happend to bork your system, remember you can always call /bin/busybox <utilname>
<msk[m]>
then could I use sbase for everything except sed?
<msk[m]>
sed should be in kiss a, right?
<ang>
... and move files manually from /var/db/kiss/choices
<ang>
yeah
micro_O has quit [Ping timeout: 272 seconds]
<msk[m]>
kiss a | grep sed returns nothing
<ang>
busybox is still your coreutils but you have sbase installed?
<msk[m]>
yeah I just built them
<msk[m]>
kiss a | grep sbase shows many entries, but sed isn't there
<ang>
weird. what about `kiss man sbase | grep sed`?
<msk[m]>
it's sbase from community/community/sbase
<ang>
# Unlink sed, because '-i' is widely used
<ang>
from the build file ;)
<ang>
so it's just deleted from the package
<msk[m]>
so what would happen if I switch everything to sbase, then kiss r busybox
<msk[m]>
no more sed?
<ang>
yes
<msk[m]>
is there like a package for just sed
<msk[m]>
so I don't need both sets of coreutils
<ang>
I don't think there is a standalone one
<msk[m]>
oh wait there's community/sed and community/sed-i
<ang>
you could just steal an sed from obase or gnu
<ang>
ah, the sed package is actually gnu sed
<ang>
sed-i is my shell script
<msk[m]>
oh so it just makes a temporary file or something similar
<msk[m]>
so that you don't need gnu sed
<ang>
but with it, it's still not possible to use sbase sed, because some packages use more non-portable sed commands
<ang>
yeah, it's just a wrapper, simulating the -i option by using a temporary file
<msk[m]>
the README says it provides more than just -i
<msk[m]>
so wouldn't that solve the non-portable packages
<msk[m]>
-r and -E
<ang>
it fixes options
<ang>
but not the actual sed script used
<ang>
and there is a lot of unportable sed commands used in the build system of certain packages
<msk[m]>
unportable sed commands? so even further than -i, -r, and -E?
<ang>
yes, the actual sed script
<msk[m]>
how many packages do this?
<msk[m]>
would you recommend using GNU sed, then?
<ang>
I have no idea, I'm lazy and just use busybox
<ang>
I'd probably use gnu sed with sbase
<ang>
forgot to say, busybox provides a lot of more stuff than sbase
<msk[m]>
hmm but what packages did you notice these on
<msk[m]>
maybe I don't need any of those packages, and I'll be fine with sed-i?
<ang>
can't remember
<msk[m]>
yeah I know busybox is less minimal than sbase, that's why I wanted to try sbase
<ang>
try it out and let me know :)
<msk[m]>
also, does sed-i come with the shell script and a sed implementation?
<msk[m]>
or do I need to change the sbase build script?
<ang>
it's only the shell script
<ang>
you'd have to change the build file
<ang>
(of sbase)
<msk[m]>
yep
<msk[m]>
alright thanks ang
<msk[m]>
kiss a | grep sbase | kiss a - should work, right
<msk[m]>
once I'm ready to swap
<ang>
last time I tried piping to kiss a, it didn't work
mahmutov has quit [Quit: WeeChat 3.1]
<msk[m]>
did you add the dash ("... | kiss a -")
mahmutov has joined #kisslinux
<ang>
ah, that must've been it
gtms has quit [Remote host closed the connection]
micro_O has joined #kisslinux
michalsieron has quit [Ping timeout: 240 seconds]
GalaxyNova has joined #kisslinux
mulc has quit [Quit: WeeChat 3.2]
<micro_O>
was it acheam or msk[m] that was asking about a javascript-less version of kiss find website? I made a static site generator for it using tjs (node-ish 1.5mb javascript+libuv runtime). Beta is up on http://jedahan.com/kiss-find/static.html
<micro_O>
the site should work without javascript - the only thing that won't work is find, but you can use your browsers built-in find
micro_O has quit [Ping timeout: 258 seconds]
dilyn has joined #kisslinux
<msk[m]>
it was me asking
<msk[m]>
static.html works for me inside elinks, thanks