MemecodeSoftware and Coding en-us http://www.memecode.com/news.php Copyright 2024, Matthew Allen Wed, 11 Oct 2023 07:50:38 +1100 Wed, 11 Oct 2023 07:50:38 +1100 Scribe 3.2 http://www.memecode.com/news.php?id=1539&comments=1 So I've released <a href='scribe'>Scribe</a> v3.2, not so much because I finished testing all the things, but because I need some usability feedback. And it's been too long since a release.<br> <br> Somewhat disappointingly the size of the Linux build seems to have grown alarmingly without any good reason:<br> <br> <img src='/images/blog/scribe-sizes.png'><br> <br> Yeah that's not a typo. And I have looked into it, all the basics like "is the binary built with -Os?" and "is the binary striped?" etc. And nothing obvious stands out. I would love a second opinion on this... just to sanity check the Linux build and see if I'm doing anything dumb? http://www.memecode.com/news.php?id=1539 Wed, 11 Oct 2023 07:50:38 +1100 Website CSS / Scribe http://www.memecode.com/news.php?id=1538&comments=1 I've removed the fixed point sizes in this sites CSS so that the font size is free to adapt to the user's settings and screen DPI. Hopefully that'll improve the readability somewhat.<br> <br> I'm slowly working my way through a large backlog of <a href='https://docs.google.com/spreadsheets/d/19F0vsaKpjLfkrWuYcsBDic0m2ifRLF3hyy0B37F9tUs/edit?usp=sharing'>Scribe UI testing.</a> So that when I release v3.2 I'm reasonably sure that things aren't horribly broken. Because at this point, I'm finding that lots of things aren't working right. But at least now there is some visibility into my progress. http://www.memecode.com/news.php?id=1538 Thu, 13 Apr 2023 07:44:44 +1000 Scribe native export http://www.memecode.com/news.php?id=1537&comments=1 There has been a long running branch of Lgi and Scribe to remove the old synchronous way of doing dialogs as part of the work to re-enable Haiku support. And I decided the cost of keeping the branches separate was too high and merged all those changes into the main dev branch of those projects a few weeks back. This means that a bunch of old functionality that I haven't touched in a long time is now broken.<br> <br> For instance the Scribe mail3 export function. So I spent the last few days fully re-writing that to use the modern patterns and also optimize things a bit. Which has all been reasonably successful. It even has a nice new completion dialog:<br> <blockquote> <img src='http://memecode.com/scribe/images/export/results-dialog.png'> </blockquote> In that example I'd run it earlier and the replication had nothing to do. It's designed so you can use it to backup your folders and it's reasonably intelligent about replication of items.<br> <br> In terms of when there'll be a new release. There are a bunch more dark corners of Scribe that I never test, and they all need to be looked at. I'll keep working me way through them. http://www.memecode.com/news.php?id=1537 Wed, 08 Mar 2023 08:16:42 +1100 i.Disk on Haiku http://www.memecode.com/news.php?id=1536&comments=1 <img src='https://i.imgur.com/cERprvm.png' /> http://www.memecode.com/news.php?id=1536 Mon, 20 Feb 2023 10:09:15 +1100 Phabricator fork and the Scribe code base. http://www.memecode.com/news.php?id=1534&comments=1 No one cares, but the announcement on 1st April wasn't a joke. <a href='scribe'>Scribe</a> is actually going open source. It's just taken way longer than I expected to create a new mercurial repository and have the hosting work correctly. Part of the issue is that my Phabricator install was misbehaving and it took a while to fix. I've had to create a <a href='https://github.com/memecode/phabricator'>fork of Phabricator</a> and <a href='https://github.com/memecode/phabricator/commit/076fcf62fbb95b11540f3f0e2a514a95d8bd5f22'>fix</a> the passing of arguments to hg's web-server.<br> <br> I also had to clear out all the proprietary stuff in the Scribe code base, do some cleanup and get it all building again. Mostly that boils down to the OAUTH2 client secrets (good bye Gmail support) and the InScribe key checking code. That work is mostly complete now so I can publish the code base. It lives here:<br> <br> <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a><br> <br> I'll be adding some more info on how to get it to build and updating the Scribe home page over the next few weeks. But it's slow going cause I have very little energy at the moment. I'm on day 14 since I got my first covid symptoms. Which have all cleared up bar the tiredness. Fortunately no one else in my family got it.<br> <br> Oh yeah, I've moved the versioning for the open source tree to "v3.x.x" just to make it clear where the new builds come from. The <a href="/site/ver.php?id=795">v2.4.22 changes</a> will be rolled into a v3.0.0 build soon. As I won't make that build off the proprietary code base.<br> <hr> Well ok, but how do you build it?<br> <br> <pre>hg clone https://phab.mallen.id.au/source/scribeopensrc/ code/scribe/trunk python code\scribe\trunk\build.py</pre><br> Should get you most of the way there. That currently just supports Windows but I will extend that support to other OS's as soon as I can. Requirements look like:<br> <br> <table> <tr> <th> Common: <th> Windows: <th> MacOSX: <th> Linux: <tr> <td style='padding-right:2em;'> <ul style='padding-left:1em;'> <li> <a href='https://www.mercurial-scm.org/'>Mercurial</a>. <li> <a href='https://www.python.org/downloads/'>Python3</a>. <li> <a href='https://cmake.org/download/'>Cmake</a>. </ul> <td style='padding-right:2em;'> <ul style='padding-left:1em;'> <li> Visual Studio 2019. <li> <a href='https://slproweb.com/products/Win32OpenSSL.html'>OpenSSL developer package</a>. <li> <a href='https://nsis.sourceforge.io/Download'>NSIS</a> for the installer. </ul> <td style='padding-right:2em;'> <ul style='padding-left:1em;'> <li> <a href='https://developer.apple.com/xcode/'>XCode</a>. <li> ...TBD... </ul> <td style='padding-right:2em;'> <ul style='padding-left:1em;'> <li> ...TBD... </ul> </table> http://www.memecode.com/news.php?id=1534 Tue, 03 May 2022 11:58:56 +1000 Scribe... http://www.memecode.com/news.php?id=1532&comments=1 ...is going open source. There will no free / paid versions. Just the full build available for free. Donate if you like. http://www.memecode.com/news.php?id=1532 Fri, 01 Apr 2022 11:24:04 +1100 i.Disk cross platform release http://www.memecode.com/news.php?id=1531&comments=1 <a href='idisk'>i.Disk</a> is now available on all 3 platforms: Windows, Mac and Linux. There is a roll up of all the changes over the last 2 years. Mostly aimed at better updating of status during a scan and cleaner listing of folders and drives including their free space and total size. This also marks my first attempt at distributing a Linux based <a href='https://appimage.org/'>appimage</a>. It would be interesting to see if it runs on a variety of Linux systems. http://www.memecode.com/news.php?id=1531 Wed, 02 Mar 2022 12:40:33 +1100 IMAP Gmail support in Scribe http://www.memecode.com/news.php?id=1530&comments=1 This is an update on the support for Gmail IMAP connections. I'm sure that if you have tried to connect to Gmail with Scribe you get a warning about the app being "unverified". You can click into the advanced section and bypass that warning to get access. But as of right now that is limited to 100 users (of which 81 have taken advantage of bypassing the warning). So very soon that will not be a valid path to gaining access to Gmail from within Scribe.<br> <br> So this verification process? What's involved? Well you have to tick certain boxes. Things like having a homepage that meets certain criteria, having a privacy policy that states what you'll do with the user's data. And also using certain <a href="https://developers.google.com/gmail/api/auth/scopes">"scopes"</a> that Google deem responsible. And that's where the trouble starts. Because Google (more specifically the app verification team) on one hand wants the apps to use fine grained scopes like "https://www.googleapis.com/auth/gmail.modify" but if you actually try and implement that you find that the OAUTH2 process fails with a scope error. If you then revert to using the more broad scope of "https://mail.google.com/" you can create a connection but the app verification team won't accept the app on the basis of the scope being too broad. They then contend that you should re-implement your client using the native Gmail restful API.<br> <br> The native API? Really... just implement a whole backend to support one company's server? The whole point of IMAP and SMTP is that the client supports ONE protocol used by everyone. This would be a lot of work to support just one service. And even then Google states that you SHOULDN'T do that here: <a href='https://developers.google.com/gmail/api/guides'>https://developers.google.com/gmail/api/guides</a>. What is one to do?<br> <br> Well right now. Nothing. Nothing can be done, Google have painted all the email client developers into a corner where there is no way forward. Some mutually exclusive options that don't work for us. What should they do? Probably enable the gmail.modify scope for IMAP and then allow apps to use than and be accepted for verification. Is that going to happen? Probably not. For reasons unknown. Google is now far to large and political to get things like that right.<br> <br> So at some point Gmail support will just cease to work anymore and there is nothing I can do about it. I'm considering just yanking it out completely. The office 365 support has also been borked for a long time for extremely similar reasons... "use our proprietary API not this well known standard". And beyond Google and Microsoft there aren't any other OAUTH2 services I tried to support. (Am I missing something?) http://www.memecode.com/news.php?id=1530 Sun, 15 Aug 2021 13:00:09 +1000 Gtk3 bugs on Debian (Gnome WM) http://www.memecode.com/news.php?id=1529&comments=1 So over the last month I've been poking at Lgi (the framework Scribe uses) on Debian trying to fix the numerous graphical glitches in the GTK3 port. And I've come to the realization that it's just horribly broken. Unlike the Ubuntu 16/18/20 installs I have that "just work". Debian seems to include the window shadow in all the coordinates. WTF? So mouse cursor x/y values are +24 compared to the window. (Ie if you move the mouse to the top left corner it's still 26,28 or something) Setting the size of the window results in a GTK_CONFIGURE message with a wildly different rectangle (out by something like 24 x 2?). Leaving all the controls in the window scaled off the right and bottom edges. None of the invalidation of dirty client content work correctly. And on top of that they use a different glib version.<br> <br> They cookin up a mess over there in Debian land. So in the short to medium term I'm just going to not support Debian. Unless someone wants to chime in with some good ideas. http://www.memecode.com/news.php?id=1529 Sat, 26 Jun 2021 18:05:29 +1000 Setting a DNS domain search in Ubuntu 20 http://www.memecode.com/news.php?id=1528&comments=1 There doesn't seem to be many good results for that search in Google so I'm documenting it. If you want to have an automatic domain suffix set for DNS in Ubuntu 20 you need to edit:<br> <br> <pre>sudo nano /etc/systemd/resolved.conf</pre> <br> And uncomment the Domains field like this:<br> <br> <pre>[Resolve] Domains=myDomainSuffix</pre> <br> Then restart the service:<br> <br> <pre>sudo service systemd-resolved restart</pre> <br> or reboot. http://www.memecode.com/news.php?id=1528 Wed, 10 Mar 2021 11:25:47 +1100