# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 44
# self = https://watcher.sour.is/conv/czsatna
@eldersnake You can check out some other stuff I made https://adi.tilde.institute/. It's a good idea to update that website also.
Nice! I can tell by the source view that site was made with mkws also :P
Nice! I can tell by the source view that site was made with mkws also :P
@eldersnake Yeah, also built with mkws, not pleased with the design tho, I'll keep it as close as possible to plain text tho as an homage to UNIX and tilde.institute which are an awesome group. I _personally_ believe all tiny scripts there are at least decent, I believe the linters are nice and the log analytics scripts are nice although, both of them may be rewritten in C even tho awk fits so well for the log analytics. And default.css is nice. I've incorporated the linters in my mkws build process.
@eldersnake Yeah, also built with mkws, not pleased with the design tho, I'll keep it as close as possible to plain text as an homage to UNIX and tilde.institute which are an awesome group. I _personally_ believe all tiny scripts there are at least decent, I believe the linters are nice and the log analytics scripts are nice although, both of them may be rewritten in C even tho awk fits so well for the log analytics. And default.css is nice. I've incorporated the linters in my mkws build process.
@eldersnake Yeah, also built with mkws, not pleased with the design tho, I'll keep it as close as possible to plain text as an homage to UNIX and tilde.institute which are an awesome group. I _personally_ believe all tiny scripts there are at least decent, I believe the linters are nice and the log analytics scripts are nice although, both of them may be rewritten in C even tho awk fits so well for the log analytics. And default.css is nice. I've incorporated the linters in my mkws build process.
@eldersnake Yeah, also built with mkws, not pleased with the design tho, I'll keep it as close as possible to plain text as an homage to UNIX and tilde.institute which are an awesome group. I _personally_ believe all tiny scripts there are at least decent, I believe the linters are nice and the log analytics scripts are nice although, both of them may be rewritten in C even tho awk fits so well for the log analytics. And default.css is nice. I've incorporated the linters in my mkws build process.
default.css is nice actually, some of the minimal class-less CSS inserts are not perhaps as minimal as they could be. Haven't had a chance to look over the others ones properly yet, but one thing I do really respect is the minimal and functional approach. I've played around with various web frameworks and tools, and like you I imagine, really just got sick of all the bloat and unnecessary complexity.
default.css is nice actually, some of the minimal class-less CSS inserts are not perhaps as minimal as they could be. Haven't had a chance to look over the others ones properly yet, but one thing I do really respect is the minimal and functional approach. I've played around with various web frameworks and tools, and like you I imagine, really just got sick of all the bloat and unnecessary complexity.
\n> I’ve played around with various web frameworks and tools, and like you I imagine, really just got sick of all the bloat and unnecessary complexity.\n\nExactly!

> I’ve played around with various web frameworks and tools, and like you I imagine, really just got sick of all the bloat and unnecessary complexity.

Exactly!
\n> I’ve played around with various web frameworks and tools, and like you I imagine, really just got sick of all the bloat and unnecessary complexity.\n\nExactly!
\n> I’ve played around with various web frameworks and tools, and like you I imagine, really just got sick of all the bloat and unnecessary complexity.\n\nExactly!
@eldersnake I believe in progressive enhancement, I believe it's a good idea to for websites to be HTML interfaces to CLI tools. For instance I would like to create an HTML interface for the log analytics tools using pp.
@eldersnake I believe in progressive enhancement, I believe it's a good idea for some websites to be HTML interfaces to CLI tools. For instance I would like to create an HTML interface for the log analytics tools on adi.tilde.institute, cl, cbl, fl, using pp.
@eldersnake I believe in progressive enhancement, I believe it's a good idea for some websites to be HTML interfaces to CLI tools. For instance I would like to create an HTML interface for the log analytics tools on adi.tilde.institute, cl, cbl, fl, using pp.
@eldersnake I believe in progressive enhancement, I believe it's a good idea for some websites to be HTML interfaces to CLI tools. For instance I would like to create an HTML interface for the log analytics tools on adi.tilde.institute, cl, cbl, fl, using pp.
@adi @eldersnake Also a webmail client using https://github.com/leahneukirchen/mblaze and pp. I believe this is a sane way to build dynamic website, parsing GET and POST variables in CGI is still a problem tho. I personally prefer interpreted languages for developing websites due to no compile time and in place debugging.
@adi @eldersnake Also a webmail client using https://github.com/leahneukirchen/mblaze and pp. I believe this is a sane way to build dynamic websites, parsing GET and POST variables in CGI is still a problem tho. I personally prefer interpreted languages for developing websites due to no compile time and in place debugging.
@adi @eldersnake Also a webmail client using https://github.com/leahneukirchen/mblaze and pp. I believe this is a sane way to build dynamic websites, parsing GET and POST variables in CGI is still a problem tho. I personally prefer interpreted languages for developing websites due to no compile time and in place debugging.
@adi @eldersnake Also a webmail client using https://github.com/leahneukirchen/mblaze and pp. I believe this is a sane way to build dynamic websites, parsing GET and POST variables in CGI is still a problem tho. I personally prefer interpreted languages for developing websites due to no compile time and in place debugging.
@adi Now that's an interesting idea... I don't know how you solve the security issue exactly, but it makes a lot of sense otherwise. And yes, progressive enhancement FTW.
@adi Now that's an interesting idea... I don't know how you solve the security issue exactly, but it makes a lot of sense otherwise. And yes, progressive enhancement FTW.
Sandbox the CGI? Maybe with box or unshare ?
Sandbox the CGI? Maybe with box or unshare ?
Sandbox the CGI? Maybe with box or unshare ?
@eldersnake I'm not satisfied about the way GET and POST input is parsed, my idea is to preparse the GET/POST input in a special CGI pp and dump the variables in the global scope of the execve(3) sh. The security issue lays in overwriting any other variable already present in the global scope.
@eldersnake I'm not satisfied about the way GET and POST input is parsed, my idea is to preparse the GET/POST input in a special CGI pp and dump the variables in the global scope of the execve(3) sh. The security issue lays in overwriting any other variable already present in the global scope.
@eldersnake I'm not satisfied about the way GET and POST input is parsed, my idea is to preparse the GET/POST input in a special CGI pp and dump the variables in the global scope of the execve(3) sh. The security issue lays in overwriting any other variable already present in the global scope.
@adi @eldersnake Here's an example of parsing GET/POST variables in a CGI https://stackoverflow.com/questions/3919755/how-to-parse-query-string-from-a-bash-cgi-script, now that's not a great piece of code.
@adi @eldersnake Here's an example of parsing GET/POST variables in a CGI https://stackoverflow.com/questions/3919755/how-to-parse-query-string-from-a-bash-cgi-script, now that's not a great piece of code.
@adi @eldersnake Here's an example of parsing GET/POST variables in a CGI https://stackoverflow.com/questions/3919755/how-to-parse-query-string-from-a-bash-cgi-script, now that's not a great piece of code.
@prologic I believe a chroot is enough? thttpd supports chroot.
@prologic I believe a chroot is enough? thttpd supports chroot.
@prologic I believe a chroot is enough? thttpd supports chroot.
@adi I don't think so. chroot only gives you an isolated root file system view. It does nothing to isolate the process or sandbox it, etc. I would use unshare + chroot.
@adi I don't think so. chroot only gives you an isolated root file system view. It does nothing to isolate the process or sandbox it, etc. I would use unshare + chroot.
@adi I don't think so. chroot only gives you an isolated root file system view. It does nothing to isolate the process or sandbox it, etc. I would use unshare + chroot.
@prologic I'm not familiar with how Linux namespaces work.
@prologic I'm not familiar with how Linux namespaces work.
@prologic I'm not familiar with how Linux namespaces work.
@adi Start by reading the man page for unshare
@adi Start by reading the man page for unshare
@adi Start by reading the man page for unshare