/g/ - Technology

install openbsd

[Make a Post]
[X]





Nanonymous No.6898 (A)[D][U][F][S][L][A][C] >>6907 >>6924 >>7798
File: d19453322a12d5a3121b58e4decf5b2e773910bc806332b4c2d27e9d4a94efa0.jpg (dl) (163.40 KiB)
Here is a demonstration instance of picochan-1.2 (nanochan rewrite).
This will go down in a few days, so don't use it for anything besides testing.
http://picochanrpzlemllkdr46tilw7b4q3bv5ipetkmty37fuqq4hjfnhwad.onion:81
The source code is available from http://picochanrpzlemllkdr46tilw7b4q3bv5ipetkmty37fuqq4hjfnhwad.onion/picochan-1.2.tar.gz
Remember fagmin, imitation is the highest form of flattery.
HAPAS ARE SUPERIOR TO WHITES

Nanonymous No.6900 [D][U][F] >>6901
File: 32af87b25a64911ff7404e8533e2094ee50c7a5f86a084383f533d74aee40bfb.jpg (dl) (350.79 KiB)
Posted.

Nanonymous No.6901 [D] >>6902
>>6900
so what's your honest opinion software-wise

Nanonymous No.6902 [D][U][F] >>6903 >>6904
File: 3b053d52465731353cab509235980b51654b818dc420a5ca2ba98365bf4f34ce.jpg (dl) (321.41 KiB)
>>6901
I didn't really look at it, but the HTML generator makes thumbnail markdown with attributes 'nil' for height and weight. I guess that leads to the old behavior of NC, when browsers would adapt the page resolution as images were loaded, giving that "you have to scroll a bit more" requirement. And here I thought we're past that shit. xD

Nanonymous No.6903 [D] >>6905
>>6902
OOPS that's a bug where if the height and width of an image is equal it'll do that. But it's fixed now (I used < instead of <= lol)

Nanonymous No.6904 [D] >>6906
>>6902
Try clicking on an image to see if the inline expansion works properly
Try uploading more than one image onto a post to see if that works too

Nanonymous No.6905 [D][U][F]
File: 89b60cc89bf61d35cd1096a98ee0da10005e77235a61d199cdfa0605dff86a9a.jpg (dl) (280.29 KiB)
>>6903
Well, that was quick.

Nanonymous No.6906 [D][U][F]
File: 6a72fb74e3753b3359648d2fb6fb3b2c06a7c5977f1132dfd7a327363695d553.jpg (dl) (313.31 KiB)
>>6904
Replied.

Nanonymous No.6907 [D] >>6909
>>6898
>imitation is the highest form of flattery
I know I've said before that I'd steal your code without a second thought, but the thought of it still feels dirty to me. As you can see, I haven't taken your rewrite in the global meta into account at all. But I have no qualms in telling you good job on the site, even if the paddings are driving me insane.
The filenames should really expand on hover though, and with enough css fuckery you could hide the other 4 File inputs until the first File input has been filled.
The "nofo" feature should only disable formatting that interferes or removes characters from the Comment field too, so >>quotes should still work as usual. The reason I had noformatting not format posts at all is so I'll have an easier time converting posts when I eventually begin to dynamically format all posts.

Nanonymous No.6909 [D] >>6911 >>6912
>>6907
>hide the other 4 File inputs until the first File input has been filled
I might be able to do that with the CSS :blank pseudoclass, but according to the docs page it's an "experimental" technology. Maybe in the future.
https://developer.mozilla.org/en-US/docs/Web/CSS/:blank

Nanonymous No.6910 [D] >>6913
Some extra points:
It looks like you're doing nothing to solve the issue of bcrypt being a cpu hog. I've got better shit to do with my time though. pico and picoengine.lua aren't symlinked anymore, which I found ironic, considering how you grilled me for going "closed-source" when I took it off for a couple hours. Also, without lighttpd.conf (or whatever it is you're using now) it'll be very difficult to replicate the server such that it works 100% as intended. It's why I had to use minihttpd back then too.

Nanonymous No.6911 [D]
>>6909
as in
input[type=file]:blank + input[type=file] {
display: none;
}

Nanonymous No.6912 [D] >>6915
>>6909
The idea I had in mind uses <form novalidate>, <input required> and :invalid to conditionally hide and reveal consecutive file input boxes. :blank looks cool though

Nanonymous No.6913 [D] >>6916
>>6910
>pico and picoengine.lua aren't symlinked anymore, which I found ironic, considering how you grilled me for going "closed-source" when I took it off for a couple hours
I have provided a fucking LINK TO THE WHOLE TARBALL in the OP. Read, cumskin.
>without lighttpd.conf (or whatever it is you're using now) it'll be very difficult to replicate the server such that it works 100% as intended.
Yeah whatever I'll provide that later when hapachan goes online. Right now I'll focus on getting all these annoying BUGS out of here.

Nanonymous No.6915 [D][U][F]
File: a806bb08e9cf28183bed2dc61f2a4cc1ede0ea297223bb0a1e3e4bb61a657017.jpg (dl) (68.23 KiB)
>>6912
I'll investigate those and hopefully come up with a solution tomorrow
I have to go to sleep now sorry

Nanonymous No.6916 [D] >>6918
>>6913
Tarballs still need to be crafted manually, and looking at other formerly "open source" forums, what would eventually happen is the site owner slows down on the code releases, eventually stopping with them altogether.

Nanonymous No.6917 [D] >>6935 >>6938
Also here's a gvol account to play with
username: testgvol
password: password

Nanonymous No.6918 [D] >>6923
>>6916
THE SITE ISN'T EVEN REALLY UP YET RETARD, THIS IS A FUCKING TESTING AND DEMONSTRATION INSTANCE I'M NOT GOING TO WASTE MY TIME SYMLINKING SHIT WHEN THERE ARE 9000 SMALL BUGS THAT NEED TO BE SQUASHED. GET THAT INTO YOUR SOLID HARD SKULL CUMSKIN

Nanonymous No.6923 [D]
>>6918
Calm down, ya yellow bastard.

Nanonymous No.6924 [D] >>6936
>>6898
I like the theme. Good luck to you.

Nanonymous No.6935 [D] >>6938
>>6917
I'm not permitted to do anything other than login

Nanonymous No.6936 [D]
>>6924
This

Nanonymous No.6938 [D] >>6971
>>6917
>>6935
Correction, i can delete posts but not more than that.

Nanonymous No.6946 [D]
>error decompressing
>after post, page doesn't reload or redirect
>too little space between posts
>no html indentation at all
>lighttpd instead of openbsd httpd
Other than those issues, I think this is fine. I still don't like the idea of dynamic page generation, but well.
>imitation
if your code is free, then it's not imitation, it's a fork.

Nanonymous No.6954 [D] >>6972
getting this error:
haserl CGI Error

%> before <% near line 1104 of /var/www/picochan-demo/pico

Nanonymous No.6971 [D] >>7029
>>6938
bullshit, I saw someone else stickying and locking a thread
gvols aren't supposed to be able to do anything else other than delete, sticky, lock, autosage, unlink and delete file.

Nanonymous No.6972 [D]
>>6954
you tried to load the page right in the middle of when I was editing the code
it'll be fine now

Nanonymous No.7000 [D] >>7008
Looks like you are getting spammed, but other than that pretty cool.

>Dark Theme
Good.
>More files
Good.
>Muh racism, muh hapapapadapaclapparappa gibberish
Not so good.

Nanonymous No.7008 [D]
>>7000
>racism bad yo, m'kay?

Nanonymous No.7029 [D]
>>6971
Oh yeah then it works as it should.

Nanonymous No.7032 [D][U][F] >>7033 >>7039
File: 42bbf09a2aa7cc1eac7820de36ce90c4c8685f61f5827b6a5661e1ba3b667ece.jpg (dl) (85.10 KiB)
The testing instance has now been taken down. Thanks for being free slave labor for doing unit testing beta testers. cumskins lol.
>still no multiple files, inline expansion or dark theme in nanochan
i am disappoint in u suckermooto.

Nanonymous No.7033 [D][U][F] >>7034
File: dccbd545cfa252d2e5e27bb1f449ed35c68063a7c84364ad36203a608aaebe11.gif (dl) (1.07 MiB)
>>7032
>Thanks for being free slave labor for doing unit testing beta testers. cumskins lol.
y-you too a-asuka ^////^"

Nanonymous No.7034 [D][U][F] >>7035
File: 636dfbdc23c51e11ffd25c8910f49c6563648023361bc836bc08f3e5932b6659.jpg (dl) (164.67 KiB)
>>7033
>.gif
Don't forget that hapachan will have ANIMATED thumbnails for .gifs, while you pleb cumskin nanochogglers will be clicking on buttons to open shit in a new tab. pathetic.

uguuuu~ Nanonymous No.7035 [D][U][F]
File: f5f115b99da9e845d87eb0e0f0b094aa589d74456008583e899b81d0325433ba.gif (dl) (747.07 KiB)
>>7034
a-asuka please stop saying such erotic things, i-i got all w-wet down there and i don't know why uguuuu~

Nanonymous No.7039 [D] >>7050
>>7032
Do you really want me to port your features to nanochan that badly? I'll do it you know. When I have the time anyway, still busy right now. Accepting pull requests from others though
Oh and much respect to you for the rewrite, you're welcome to spam your hapa rants in the old nanochan as much as you like in the future for all I care if you ever decide to converse with us filthy >cumskins ever again.

Nanonymous No.7050 [D] >>7053 >>7072
>>7039
You can do it as much as you want provided you put a comment at the top of the code file saying
-- HAPAS ARE SUPERIOR TO WHITES

Nanonymous No.7053 [D][U][F]
File: 8ae66a669be0e88c4fa880d50ae3692b049bced4b5e48b036b53f7df120a53c7.gif (dl) (215.77 KiB)
>>7050
big kek
asuka i dare you, release picochan under the "Hapa Masterrace License":

Hapa Masterrace License

Permission is hereby granted, free of charge, to any hapa or cumskin obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

In all copies or substantial portions of the Software shall be included the phrase "HAPAS ARE SUPERIOR TO WHITES".

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
HAPAS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
CUMSKIN FUCKERY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

HAPAS ARE SUPERIOR TO WHITES

Nanonymous No.7063 [D]
>:81
doesn't work, nigger

Nanonymous No.7066 [D]
<having no reading comprehension
Who is the nigger now?

Nanonymous No.7072 [D] >>7076 >>7077
>>7050
Sure, if I do start porting features I'll add it. No guarantees for how long it'll be in the lua file in that case, but I don't think I'd care enough to remove it.
>picochan-1.3
>still no lighttpd.conf

Nanonymous No.7076 [D] >>7083
>>7072
>HUR i want spoon feed >:-(
>were iz my confug file???
fuck off faggot, i said i'll put it up after hapachan is started, which won't be for a while because I only have one laptop and I need to use it and carry it around. I need to get someone else's crappy old laptop for hosting. I was talking to some other hapa with a proper server who was willing to host, so letting him do it is an option too.

Nanonymous No.7077 [D][U][F] >>7083
File: 87370a6e7db1d240d7d7abacd00b5bdb8534e7e287269dbdea373128357ea8d5.jpg (dl) (86.44 KiB)
>>7072
Also, I'm telling you it'll be way easier to port the database than to port features over. The new software has some architectural improvements such as separated backend/frontend (which allows you to write different frontends without code dupe).
The new database format is also way faster due to the use of indices. Just write a script to transfer the data and undo the formatting on posts.
If you fuck up this transition and half-ass it then I will be laughing forever.

Nanonymous No.7078 [D]
hint hint: i just want you to port my software over so you wiggers can be slave-labor feature-testing cattle so that the website for hapas can be even better than this, because hapas deserve the best quality software
just do it faggot
i'll even help you port the db if you give me your old one

Nanonymous No.7080 [D] >>7081
Just you wait until I make my own non js imageboard engine better than both of these sites.

Nanonymous No.7081 [D][U][F]
File: 6f2213337d345b0e351de0b4bb89ac767255be341e81fc5ca6d01f120137b14d.jpg (dl) (12.97 KiB)
>>7080
It doesn't matter what you do, cumskin. Hapachan will always come out on top, because hapas are superior to whites.
Daily reminder that it was all started by Hapase, a member of the hapa master race. Even though she is a girl, she is still a better programmer than any cumskin male could ever be, and despite all the mistakes she made, her software is still better than any imageboard a cumskin has ever written.

Nanonymous No.7083 [D] >>7091
>>7076
I personally don't need your conf file at all, I just think it'd be a nice gesture for anyone else looking to host it by themselves.
>>7077
I've thought about running a picochan instance along with nanochan for my own interest, since your hapachan isn't up yet and it looks like you don't have the ability to host it yet, but in its current state I don't think I'm willing to chance running picochan in production.
Not because of bugs or anything, but mostly because there aren't enough safeguards against denial of service attacks. Mod logins execute the expensive bcrypt function on every request, and the dynamic generation is yet to be stress tested, especially with notably longer threads and larger catalogs and a posts table with tens of thousands of entries. Personally, the recent posts list has been a huge timesaver for me, I don't particularly like your version of the dark theme either, and I still hate the padding, but I can fix them myself if I have to.
If you could prove that the dos issues above are either fixed or nonexistent, and others are mostly fine with it, I'll do it. The latest database dump can be found in /nanochan.db.bak too if you want to have a go at transferring it yourself.
>The new database format is also way faster due to the use of indices
Does the database still write and remove .db-journal files dozens of times for each action? Haven't tested it yet, but that seemed like a significant bottleneck to me

Nanonymous No.7091 [D] >>7096
>>7083
>dynamic generation is yet to be stress tested
Dynamic generation took around 500ms (0.5 seconds) for a thread with 1000 posts, each post having 5 images attached. This is the hardest I could load it with a single thread. In fact, the cap of 1000 posts is set because my browser can't handle displaying more than 5000 files and 1000 posts without crashing, not because the picochan engine slows down.
>Mod logins execute the expensive bcrypt function
Fixing that isn't my responsibility. I already thought about this and decided that the best protection is to have a HTTP authentication requirement by the webserver upon accessing /pico/System/mod/login with an intermediary "insecure password" stored in plaintext in the server config, which is only handed out to the mods. If that password leaks, just change it.
>Does the database still write and remove .db-journal files dozens of times for each action?
The journals are only used when the database is being written to. That said, most things are wrapped up in fewer transactions than before, including displaying the catalog and the overboard.
I will transfer the database over to the new format and measure generation times.

Nanonymous No.7096 [D] >>7097
>>7091
>Dynamic generation took around 500ms (0.5 seconds) for a thread with 1000 posts
Seems good, but keep in mind you're still adding 500ms of latency where none would have existed. Queries to the posts or files table might start to become a problem when it gets bloated too, but maybe you've tested this already. What I really want to know though is how many requests can the server handle per second before the cpu reaches capacity.
>HTTP authentication requirement by the webserver upon accessing /pico/System/mod/login
So basically storing a permanent cookie on the user's browser in a roundabout, more convoluted way, that would no longer work if the user changes his device. I still think the best solution for now is mine in https://nanochanqwrwtmamtnhkfwbbcducc4i62ciss4byo6f3an5qdkhjngid.onion/meta/8.html#post5090, but if all else fails I'll just have a captcha as a bandaid

Nanonymous No.7097 [D][U][F] >>7098 >>7104 >>7105
File: ed3621209d59ae54c369af90591fafae64e47db24f9d97492a2ba0003638ceb8.jpg (dl) (177.07 KiB)
>>7096
The 500ms figure was with a database with 1000 total posts.
I have since optimized the database further. I added 15,000 posts to the database and did some benchmarks. The catalog has 1000 threads in it, some of which have many posts inside them and some of which do not. The speeds are expressed in milliseconds, and this will obviously change with hardware - it only serves to provide an estimate.
- Generating the catalog takes 250ms.
- The stats page takes 90ms.
- Viewing a thread with 1000 replies takes 300ms.
- Posting takes 150ms.
Essentially, everything is way better than nanochan. To convert to static generation would be pretty easy, but I don't believe static generation is the way to go for a variety of reasons.
- THREE pages have to be regenerated every time someone makes a post: overboard, board catalog, and thread page.
- it makes posting, mod actions, and editing board settings much slower. people noticed that posting speeds in picochan were much faster, even with a network delay. easier and more convenient posting = more board activity.
- it makes the captcha very slightly less secure because no ID can be associated with a captcha, and also adds ANOTHER file that needs to be fetched rather than having it included in the html page.
- it means you can't use relative times, which are very useful in some cases (e.g. on the catalog's lastbumpdate displayer).
- it means you have to include mod links on every post, which is an eyesore and takes up space esp. in the catalog.
>how many requests can the server handle per second
On my 2C4T 2.5ghz with hyperthreading off (i.e. a dual core), I set up a script to continuously make 20 concurrent requests to a thread page with 1000 replies. Each CPU core was loaded at around 50%-60%. It seems that it is bottlenecked by SSD - perhaps storing the database on a memory-backed tmpfs and periodically copying to persistent storage would improve speeds even further.
>So basically storing a permanent cookie on the user's browser in a roundabout, more convoluted way, that would no longer work if the user changes his device.
No. The login page will be password protected by the server. The user will enter the "insecure password" of the login page, then enter his mod account username and password. This has to be done only one for each login, and the password can be remembered by the browser.

Nanonymous No.7098 [D]
>>7097
Those improvements are now available in the picochan-1.4 release.

Nanonymous No.7104 [D] >>7106
>>7097
>database on a memory-backed tmpfs
Have you applied the spam protections sakamoto did while you were spamming? Because if you have not, I see a potential DoS vulnerability in using tmpfs.
Also, are you using OpenBSD? If you are, you probably should increase the maximum memory usage in /etc/login.conf on the "default:\" and also the max files on "tor:\".
I use this for tor:

tor:\
:openfiles-max=8192:\
:datasize-cur=512M:\
:tc=default

These /etc/tor/torrc options also help:

#Increase memory usage
MaxMemInQueues 512MB
#Prefer to write to memory
AvoidDiskWrites 1
#Better scheduler
Schedulers KISTLite
#Use all cores (depends on your hardware)
NumCPUs 2


To avoid some disk writes, put the "noatime" tag on your partitions (particularly /var/, because log files will be there).

Nanonymous No.7105 [D]
>>7097
My biggest reason for preferring static generation is its resistance against malicious requests, but with those numbers, especially for the catalog generation (assuming you had hundreds of catalog items for the test, like how it is with /l/ right now), dynamic generation starts to look a lot more viable.
>I set up a script to continuously make 20 concurrent requests to a thread page with 1000 replies
While the script is running, what happens when you try to make a legitimate GET request or create a post through the browser?
>This has to be done only one for each login, and the password can be remembered by the browser
I see, yeah that's a good idea, though it might not be all that useful if the mod's cookies are wiped after every session.
Also, and I don't think restricting formatting to a single line is all that helpful even when inserting a code snippet into a formatted post, since something like
> if x == "abc" or x == "def" then
would still result in the loss of both =='s. A nice solution would be code blocks with triple backticks to enclose the message ```like this```, but I'm not sure how this could be done with regex besides replacing all offending characters with something else with the first regex, then restoring it with the last one.

Nanonymous No.7106 [D] >>7114 >>7155
>>7104
I will not consider that stuff until I have a computer to host my site on. Too much bother right now.
>>8105
>assuming you had hundreds of catalog items for the test
I had 1000 catalog items, and 15000 total posts. I'm preparing an even larger database with around 40000 posts to do some more optimization. After I'm totally happy with the optimization, I will work on thread moving and other such less-important features.
>I don't think restricting formatting to a single line is all that helpful
I could require there to be a non-space character after the ==. Most people with a non-pajeet coding style do that.

Nanonymous No.7109 [D][U][F] >>7153
File: 9b30436fdfe6b200fa465e647bab7c692de5d81632875f2bf70982278284dae3.jpg (dl) (42.42 KiB)
Another update. I made a database with 63,000 posts and 5,000 files in it. I made another small optimization (it wasn't super significant, it shaved 50 ms off on displaying threads, on average). With 63,000 posts total:
- overboard (with 100 threads): 60ms
- catalog with 1000 threads: 250ms
- thread with 1000 text posts: 220ms
- thread with 1000 posts, 5 files each: 680ms
I tried to optimize the file tables some more, but they just involve a lot of computation - nothing can be done there I think. In the past, I had the idea of putting threads and posts into separate tables, which I had tried before, but I stopped for some reason I don't remember - it probably resulted in a lot of duplicated code.
The data indicates that scability will not be a big issue. 63,000 posts is more than I expect would ever be in the database at any one time - usually, the thread and post limits would be set much lower for non-technical (board dynamics) reasons, and not all threads would receive the maximum number of replies. As an example, the current Nanochan database has 24,000 posts. The figures shown are worst-case, and they are still acceptable.
Overall, I am very satisfied with the product. Picochan is leaps and bounds faster than Nanochan. It has less code (2237 lines of picochan vs 2986 lines for nanochan), and more features (multiple files, inline expansion). User interaction and UI refinement is improved. Its architecture is more elegant, and it is more extensible. Hapachan will be glorious.
HAPAS ARE SUPERIOR TO WHITES

Nanonymous No.7114 [D] >>7123
>>7106
It'd be confusing to those looking to actually format their posts, and still doesn't prevent formatting in stuff like ==UserScript= =.

Nanonymous No.7123 [D] >>7130
>>7114
no it wouldn't. you don't get it.
there is never a need to put space characters as the first or last character in your redtext. whereas this is the most common situation when you are writing code with == in it.

Nanonymous No.7126 [D] >>7127
this shit is made in shit language, Lua
also, your race is inferior and you will never get laid with white women

Nanonymous No.7127 [D][U][F] >>7132
File: d3ad478993fb91352764e39ea0ec1db7c85841cb327140478a20e41e86392291.png (dl) (222.23 KiB)
>>7126
>you will never get laid with white women
i am forever thankful, i am truly blessed.

Nanonymous No.7130 [D] >>7131
>>7123
I'm just saying it'd be confusing, nothing more. It could act as a newfag filter I guess.

Nanonymous No.7131 [D][U][F]
File: d7aa0e9d926780f2827e7126aa40492afe64fa9501af53f5ce17d28a6f9612e0.png (dl) (9.84 KiB)
>>7130
not confusing at all, and works perfectly

Nanonymous No.7132 [D][U][F] >>7135
File: 025ab5a9a36b045e47cb0714a2a3f2f2d705c4b37c6a8028111a694ec5a07215.jpg (dl) (8.11 KiB)
>>7127
your future

Nanonymous No.7135 [D][U][F]
File: 013c732486bb67ed1a0b945dcb391da65a96f78084bcd46678bea939cfc1f2e7.jpg (dl) (21.68 KiB)
>>7132
and here's yours :^)

Nanonymous No.7153 [D][U][F] >>7171
File: 1df69d4e1144eed7a07cc5553786a4d166e017073ccc854c0cc99e5513b6e9fd.jpg (dl) (43.13 KiB)
>>7109
Another optimization!
- Catalog with 1000 threads: 180ms
- Thread with 1000 text posts: 175ms
- Thread with 1000 posts, 5 files each: 600ms
The improvement this time comes from omitting totally unnecessary checking as to whether a post exists.
I should mention how I measure the rendering times.
So basically at the bottom of each html page, there's a comment which says how long the program has been executing up to the point where html generation is finished (which is the meaningful duration I want to measure). I make 20 requests to a particular page using curl, extract that comment, and then run bc to get the sum of those numbers, and divide by 20 to get the average.

Nanonymous No.7155 [D] >>7156
>>7106
>Too much bother right now.
Yeah, modifying three text files is too much to bother.

Nanonymous No.7156 [D][U][F] >>7158
File: cb1890af256f08832c1f7287483f5d5a2ef0311b9bc8b40e1c06535ef42590b4.jpg (dl) (194.50 KiB)
>>7155
>just modify the text files bro!
<don't test it properly
<don't confirm its effectiveness
<don't do any experimentation to find the optimal settings
<just modify 3 text files!!!
nanochan is a shit heap lol. too many retarded white people. only useful for a cheap laugh just like 4chan

Nanonymous No.7158 [D] >>7171
>>7156
>don't test it properly
What do you have to test? It's just allowing Tor to use more memory and all CPUs. There's nothing to test.
>don't confirm its effectiveness
Just watch the damn memory consumption you lazy fuck.
>don't do any experimentation to find the optimal settings
These are the only possible settings on torrc. Anything else related to performance will decrease anonymity. Beside these, only using sysctl to tweak tcp traffic.
>just modify 3 text files!!!
Exactly, just do that.
Also, go learn relayd and httpd and stop using lighttpd when openbsd has one http server by default, already with pledge and unveil.
>too many retarded white people.
You are the lazy one and we are the retards? Get a grip.

Nanonymous No.7171 [D] >>7176 >>7208
>>7153
>Another optimization!
> - Catalog with 1000 threads: 180ms
> - Thread with 1000 text posts: 175ms
> - Thread with 1000 posts, 5 files each: 600ms

if you used quality language instead of shitty Lua you'd get 10 times faster

>>7158
OpenBSD is cuck OS, BSD is cuck license

Nanonymous No.7175 [D] >>7176
Speaking of language, would it be possible to run picochan on luajit? There seems to be a script to compile haserl with luajit support here https://gist.github.com/vitex/4233777 , but I'm not sure if you're using any lua5.3 specific features in the code

Nanonymous No.7176 [D][U][F] >>7207 >>7220
File: 39b21e33e187762b63cc2c982fd9e75ac7e8844dd65f1ff81d2c80ee2fd63091.jpg (dl) (52.21 KiB)
>>7171
Lua is the best programming language. seethe more cumskin
>>7175
maybe possible, but lua5.3 specific features are used. I will investigate later, because more speed improvements may be possible, which is good.

sage sage No.7207 [D]
>>7176
Lua is made by "cumskins". Where is your hapa suppremacy now?

Nanonymous No.7208 [D] >>7220
>>7171
>licenses
you're the cuck

Nanonymous No.7220 [D] >>7223 >>7224
>- No javascript of any type is used anywhere. In fact, CSP is used to block execution of any and all javascript, which makes XSS attacks impossible.
what's CSP and how to use it?

>>7176
>Lua is the best programming language. seethe more cumskin
>scripting language
>best
scripting languages are for retards, not programmers

>>7208
>you're the cuck
the cuck is someone who codes something for free, that is then used by jewish corporation to make money or enslave goys

Nanonymous No.7223 [D]
>>7220
Goys, more like GAYS!

Nanonymous No.7224 [D]
>>7220
>what's CSP and how to use it?
a meme and bloat. putting something that you can log in to on the web (like a bank page) is fucking retarded
>the cuck is someone who codes something for free, that is then used by jewish corporation to make money or enslave goys
shut the fuck up boomer

Nanonymous No.7263 [D][U][F] >>7285
File: e8db73deeb8c29a167a306381882edbb1ced7c32432709f645eba004b384c8e9.png (dl) (3.10 MiB)
Bazooka are you considering to let users upload plaintext files? To make it easier to upload large source code files, instead of the current pdf method(non even sure if that works on pico). What about the recent page? It should be harder to exploit like you did n the past if pico is that fast at dynamic generation right? Are you considering implementing it?
Do you have a roadmap for low priority features like these?

Nanonymous No.7285 [D][U][F] >>7291 >>7296
File: a8c8e92d474ec9f208fa00e2b3bc96f2d599326509fa0765a38a37a9c274e2a8.jpg (dl) (103.26 KiB)
>>7263
I am taking a break for 2 weeks. I have grass to cut and trees to chop down irl.
The PDF method will still work. The recent page is a feature under consideration, as is index view for boards. But before I do those things I will try to convert the code to use LuaJIT because it will make things even faster.
I now also have a laptop to host hapachan on. It's a crappy laptop with low CPU power, which is why I need to focus on increasing the speed and efficiency as much as possible.

Nanonymous No.7291 [D][U][F]
File: 9d58cd96cc18b23892e3649a9fb43532b73d155c6fee95301bc7ba451689f122.jpg (dl) (51.75 KiB)
>>7285
Watch yourself, William. Those Singaporean niggers may try to take you by surprise.

Nanonymous No.7296 [D][U][F] >>7298 >>7299 >>7310
File: f02f04ee938d69aeb4e3d3d4fa75ddfaada1d765772c2b9783d7a00962ecfca0.jpg (dl) (207.49 KiB)
>>7285
>I am taking a break for 2 weeks. I have grass to cut and trees to chop down irl.
Sorry for the assumption, but did you take a gardening job to pay for the hapachan to-be-host laptop? That would be cute :3
Or are you just helping your parents?
A couple of months ago i spent a week doing gardening to help my parents fix their yard, pretty hard work but kind of rewarding in its own way.
Anyway none of my business and offtopic.
>The PDF method will still work.
Yeah, but it's kind of annoying to use, i mean it werks, but i have to change the header everytime and then explain to retards how to use it and i still have people accusing me of distributing le ebin wairuses just cause their pdf software gives them an error and they can't figure it out.
Wouldn't it be better to use some other method to determine the format of the file? Like calling
https://man.openbsd.org/file.1
with the --mime-type option
or a similar tool or function
and then if it's a plaintext file regardless of extension add it to the "plaintext" file class, else if it's a binary file use current limitations with current file classes.
(lol in the middle of this post's writing sakamoot released rudimental plaintext support, shots fired at you bazooka)
>The recent page is a feature under consideration, as is index view for boards.
Cool. The recent page is really useful to me for lurking posts that i missed during the night(thanks for the daily morning captcha that i have to solve btw), checking post in chronological order is something that you can't do with catalog or index since they are sorted in bump order, anyway it would be cool to have more filters other than sage, like a filter for each board, so that you can select multiple boards to include or exclude.
>But before I do those things I will try to convert the code to use LuaJIT because it will make things even faster.
Sure important things first.
>It's a crappy laptop with low CPU power, which is why I need to focus on increasing the speed and efficiency as much as possible.
Depending on where you live, if it gets hot you could try removing the keyboard and part of the external case(and then use one or more electric fans) for better cooling, after all you can access it remotely, or with an external keyboard. Other than this you are kind of limited to how pico performs and how many users hapachan will have. Did you repeat all the tests that you did before on this new laptop? How did it do compared to your main laptop?

Finally what is your opinion on having a simple API(for independently develop clients etc) again? If you already talked about this in global meta thread then sorry i forgot.

Nanonymous No.7298 [D] >>7300
>>7296
>lol in the middle of this post's writing sakamoot released rudimental plaintext support
I've had this idea sitting in the back of my head for quite a while now, but it always seemed like too much of a hack to implement, but since real text file support isn't possible in picochan anyway I stopped caring about it. It took more time to make that shitty .txt image than it took me to add the feature.

Nanonymous No.7299 [D] >>7300
>>7296
>text file support
Maybe, I'll keep it in mind. Suckermooto's "text file support" is just the pdf hack using 4 different characters instead of %PDF. not very impressive. do it properly or scrap it
>thanks for the daily morning captcha
LOL. That's not my fault, that's the fault of suckermooto's poor programming skills. The recents page was entirely developed by him.
>if it gets hot you could try removing the keyboard and part of the external case(and then use one or more electric fans) for better cooling
Doesn't get hot enough for that to be an issue. the CPU doesn't start throttling until 90 degrees celsius. The maximum temperature before damage occurs is 110 degrees, according to fagtel.
>Finally what is your opinion on having a simple API(for independently develop clients etc) again?
Picochan's new architecture will allow for easy implementation of different frontends. What I've got in mind is a RPC for picoengine.lua, which will be extremely easy and simple to write, and will allow cool shit like remote clients and multiple servers per instance etc.

Nanonymous No.7300 [D]
>>7298
>It took more time to make that shitty .txt image than it took me to add the feature.
lel
>>7299
>What I've got in mind is a RPC for picoengine.lua
sounds cool

Nanonymous No.7310 [D] >>7313
>>7296
>Use file to determine if the file is plaintext
This approach has false negatives. Perhaps for recognizing text files it should be based off file extension. This list world include things like txt, c, cpp, hs, sh, py, or lisp.

Nanonymous No.7313 [D] >>7890
>>7310
>DURR
You could just scan the file to determine whether or not it contains any non-ascii characters. If not, it's a textfile.

Nanonymous No.7854 [D]
>>7853
>still no thread moving
Face it, you're as much of a hack as sakamoto is

Nanonymous No.7857 [D]
Don't forget to remove yourself, the main and only downside your perfect fork still have.

Nanonymous No.7890 [D][U][F] >>7891
File: b8d92b07057289a7a7600455ee6e83e374505d31e1f729830739bccfd965f9a7.png (dl) (996.74 KiB)
>>7313
Have you ever heard of ALPHANUMERIC PAYLOAD?
Also maybe we want an actual text file, not some XML marked nightmare.
Though regardless of how it is to be implemented, I think it's best to provide download links only, not "allowing" to open it in a browser.

Though this post is about picochan. Where the FUCK is my new superior chan, BITCH? Hapachan's future is in your hands so WHAT ARE YOU WAITING FOR YOU DISGRACE OF THE HAPA RACE! WE GOT PLACES TO BE, BOARDS TO RUIN or whatever else you want, I don't really follow nor do I want to do what you do anyway. xD

Nanonymous No.7891 [D] >>7893
>>7890
you're not even a hapa stop sucking his dick

Nanonymous No.7893 [D][U][F]
File: 3453876af9688425576a793737e01edcf79555fb2b0d4805f4dcfeb85785ef7e.jpg (dl) (418.39 KiB)
>>7891
Woah that's some privacy intrusion right there. xD

Anyway, I just wanted to know if the picochan is ever going to be up. I BELIEVE in Asuka, OK?

Nanonymous No.7905 [D]
I wish C*DD*R the original asunyan made an IB.

New release: picochan-1.6 Nanonymous No.7975 [D] >>8108

---> picochan-1.6 <---
It can be downloaded from /picochan-1.6.tar.gz

In this version, a major new feature has been added. The index view is now
available in addition to the catalog view. Catalog view remains the default
view for a board.

Minor improvements have been made:
- Certain form fields in the mod tools receive focus automatically upon page
load. For example, the "reason" field in a post deletion form is
automatically focused.
- The the database column "MaxPostImages" has been renamed to "MaxPostFiles"
since it applies not only to images but to videos, audios etc.
- The OP of a thread is now displayed without a border and a background
color. This is consistent with the behavior of other imageboard software
and additionally provides more of a distinction between the OP and the
replies.
- Bugs related to global variable configuration have been corrected.
- A bug related to an unsanitized format string for the front page has been
corrected.
- Default values for board settings have been changed to more conservative
ones, now that the software has been confirmed to work well with large
amounts of data.
- The empty nanochan.db file is no longer bundled with the distribution. It
should instead be created using the nanochan.sql schema. This decision was
made to slightly reduce the distribution file size and reduce the work
required to package each release.

Nanonymous No.8097 [D]
Can I see this anywhere live ?

Nanonymous No.8108 [D]
>>7975
>The the database column "MaxPostImages"
>The the
Found a typo!!!!!!1

Nanonymous No.8112 [D]
Has reached 1.8 now