Hello from smolfedi on #NetSurf!!

This is the lightest browser I could get working (had auth problems with every other #smol browser I tried).

It kinda lacks keyboard navigation badly (NetSurf, that is), but I'm still liking #SmolFedi a lot, and am looking forward to trying it on my sixteen-year-old #OpenBSD #Thinkpad. ;)

Maybe the excellent #Dillo browser dev can poke at it? ;) @dillo

Log in - SmolFedi/smolfedi.pollux.casa

@rl_dane it does work with Dillo. Usable with and without remote CSS.

@bbbhltz

Strange, maybe #GoToSocial just doesn't like it?

An error occured:

Internal Server Error: key redirect_uri not found in session: If you arrived at this error during a sign in/oauth flow, please try clearing your session cookies and signing in again; if problems persist, make sure you're using the correct credentials

Request ID: 0000378ccb7zp06zykeg

@rl_dane @bbbhltz which dillo version? You can check with "dillo -v".

You'll need to build it from git to get the oauth fix and enable cookies for both smolfedi and your fedi server.

There is a known bug that prevents it from working the first time, but reloading should make it work. Is it my long TODO to fix it.

@dillo @bbbhltz

Ah, I'm using the FreeBSD-packaged version on this box. I usually compile it myself, but neglected to here.

rld@Intrepid:~$ dillo -v Dillo v3.2.0 Libraries: fltk/1.3.10 zlib/1.3.1 jpeg/3.1.2 png/1.6.55 webp/1.6.0 OpenSSL/3.0.16 Features: +GIF +JPEG +PNG +SVG +WEBP +XEMBED +TLS
@rl_dane @bbbhltz okay, so that seems to be the problem. If you try with git and still cannot make it work let me know as it could be a new bug.

@dillo @bbbhltz

Scratching my head as to how to install libjpeg-dev in #FreeBSD. I'll try puzzling over it later.

@rl_dane @bbbhltz from https://www.freshports.org/www/dillo2 seems to be "graphics/jpeg-turbo".
FreshPorts -- www/dillo2: Fast, small graphical Web browser built upon fltk

Dillo aims to be a multiplatform alternative browser that's small, stable, developer-friendly, usable, fast, and extensible. This new, experimental version of Dillo is based upon FLTK toolkit, rather than GTK1, and has been substantially rewritten.

@dillo @bbbhltz

Thanks. I do have it installed, but configure doesn't want to see it, for some reason.

rld@Intrepid:build$ ../configure --prefix=/usr/local |grep -i jpeg checking for jpeglib.h... no configure: WARNING: *** No libjpeg found. Disabling jpeg images.*** configure: WARNING: *** No libwebp found. Disabling webp images.*** configure: WARNING: *** brotli/decode.h not found. Disabling brotli encoding.*** configure: WARNING: Missing render tools to enable dilloc tests, disabling JPEG enabled : no rld@Intrepid:build$ locate jpeglib.h /usr/local/include/jpeglib.h rld@Intrepid:build$ ../configure --prefix=/usr/local --includedir=/usr/local/include |grep -i jpeg checking for jpeglib.h... no configure: WARNING: *** No libjpeg found. Disabling jpeg images.*** configure: WARNING: *** No libwebp found. Disabling webp images.*** configure: WARNING: *** brotli/decode.h not found. Disabling brotli encoding.*** configure: WARNING: Missing render tools to enable dilloc tests, disabling JPEG enabled : no rld@Intrepid:build$

@rl_dane @bbbhltz we don't see to be handling includedir, on the docs we use directly the CPPFLAGS var:

https://git.dillo-browser.org/dillo/about/doc/install.md

./configure CPPFLAGS='-I/usr/local/include' LDFLAGS='-L/usr/local/lib'

Make sure that /usr/local/include/jpeglib.h exists.

dillo - Dillo, a multi-platform graphical web browser

@rl_dane correction, is not that we don't handle "--includedir" is that is not used to specify where to search for headers, but to define where to install dillo header files if they were. So CPPFLAGS should be used for this.

> Fine tuning of the installation directories:
...
--includedir=DIR C header files [PREFIX/include]

@dillo

Thanks, I got it to compile now (well, once I switched to gmake ;)

I get as far as the "Allow" screen of GoToSocial (https://polymaths.social/oauth/authorize), but clicking on the "Allow" button doesn't do anything. Trying to refresh the page or manually go on to the next page (https://smolfedi.pollux.casa/callback.php) doesn't seem to work, either.

It could just be a GtS issue.

This is what the pertinent snippet of the html of that page looks like:

<div class="page-content"> <main> <section class="with-form" aria-labelledby="authorize"> <h2 id="authorize">Authorize app</h2> <form action="/oauth/authorize" method="POST"> <p>Hi <b>rl_dane</b>!</p> <p> Application <b>SmolFedi/smolfedi.pollux.casa</b> would like to perform actions on your behalf, with scope <em>read write follow</em>. </p> <p> To continue, the application will redirect to: <code>https://smolfedi.pollux.casa/callback.php</code> </p> <button type="submit" class="btn btn-success">Allow</button> </form> </section> </main> </div>

@rl_dane nice! Let us know if we could improve the FreeBSD instructions to build dillo.

Hmm, it should submit the form, there is nothing strange with the HTML. I would need to reproduce it on my side, I could try to find a GoToSocial instance to make a test account. I see polymaths is closed for signups.

@dillo

@amin might be able to set you up with one for testing, once he wakes up. :)

@rl_dane @dillo

Hmm how about you sign up for an account on https://projects.polymaths.social

Seems like the best way to work things out. Signups should be open there now.

Polymaths.social Projects - GoToSocial

An instance for members of Polymaths.social to host project accounts.

projects.polymaths.social
@amin @rl_dane done, thanks!

@dillo @rl_dane

Approved.

There are some slight oddities in the instance configuration; namely, I think I told it not to hold on to any images, to save on storage space, since people aren't usually browsing fedi via project accounts. Should be fine for OAuth debugging, though; lemme know if you need any config tweaks and I'll see what I can do.

@amin @rl_dane thanks!

I can reproduce the error:

Bad Request: Key: 'OAuthAuthorize.ResponseType' ...

It seems that for some reason cookies are not propagated to the /oauth/authorize endpoint, likely a Dillo problem.

@amin @rl_dane so, there were two bugs:

- The Max-Age parsing of the cookie was using the local time instead of UTC, so it was rejecting the cookie for me as it was considering it expired.

- The submit response of the form was being cached because it has the same URL as the current page.

They should both be fixed in the fix-oauth branch:

https://git.dillo-browser.org/dillo/log/?h=fix-oauth

Let me know if that is not the case :)

dillo - Dillo, a multi-platform graphical web browser

@dillo @amin

Sorry that I'm not very git-educated, is there a URL I can clone for testing? (Or a tarball to download?)

@rl_dane @dillo

clone https://git.dillo-browser.org/dillo then checkout the fix-oauth branch.

dillo - Dillo, a multi-platform graphical web browser

@rl_dane @amin you can simply:

$ git clone -b fix-oauth https://git.dillo-browser.org/dillo/

dillo - Dillo, a multi-platform graphical web browser

@dillo @rl_dane

Heh, I always forget about the -b option on clone.

@dillo @amin

Ok, I got in further that time (the button actually clicked), but then I got the following error screen:

• Log in

Error: Invalid OAuth state. Please try logging in again.
Back to login

SmolFedi/1.0.9 - A smolweb Fediverse client

@rl_dane @dillo

Might be left over from your previous attempt (I've encountered that before with GtS). Try clearing cookies and stuff.

@amin @dillo

That was actually on a different box, but I do sync my ~/.dillo between boxes, so let me try that...

@rl_dane @amin it looks like that error gets triggered when the OAuth state is not correct in smolfedi:

https://codeberg.org/adele/smolfedi/src/commit/b59e129cd9f9943df693dae1f28f2f39fbe8f3c6/callback.php#L26

Try removing the cookies if stored on disk at ~/.dillo/cookies.txt, then run "dpidc stop" to restart the cookies plugin (otherwise they are still in memory) and then opening dillo to login again. Make sure that you only have one dillo version installed (make install), otherwise you may be using the old (broken) cookies plugin.

Perhaps @adele can provide more info.

smolfedi/callback.php at b59e129cd9f9943df693dae1f28f2f39fbe8f3c6

smolfedi - A lightweight, no-JavaScript Fediverse client written in PHP.

Codeberg.org