Some strange thoughts

Just about anything

Using Google Cloud Run to host static website on Google Cloud Storage (for free)

When you’re getting older and older you don’t want to maintain one server more to host few sites and blogs like this one, monitor if lets encrypt certificate renewed even on old outdated sites and so on… at least this is true for me :) And I decided to move it to some full-managed platform. For the first look Google Cloud storage was good enough solution, but after creating bucket, and going throw complete tutorial I understand that enabling https will be nor easy (using load balancer and so on) neither cheap (it’s $0.

Using TUN/TAP in go or how to write VPN

For some reason I needed to write my own VPN… I choosed golang and most of coding was done in 3 hours, next 3 hours was adding some features. But now I want to show how easy is to write some “vpn” (example is unencrypted tunnel, not realy vpn) in go for linux. P.S.: if you want to see final result of my 6+ hours of work (decentralized, encrypted and so on), please visit github.

Changing tab switch shortcuts in LiteIDE

If you’re using LiteIde for golang development you may see that shortcuts for tab change (Ctrl+Tab and Ctrl+Shift+Tab) can’t be changed via settings. For somebody (like me) it’s a big usability problem – I have Ctrl+PgUp and Ctrl+PgDown in all other applications. But small change of code and recompilation helps as allways :) --- a/liteidex/src/liteapp/editormanager.cpp +++ b/liteidex/src/liteapp/editormanager.cpp @@ -270,9 +270,9 @@ bool EditorManager::eventFilter(QObject *target, QEvent *event) if (event->type() == QEvent::KeyPress) { QKeyEvent *e = static_cast<QKeyEvent*>(event); if ( (e->modifiers() & Qt::CTRL) && - ( e->key() == Qt::Key_Tab || e->key() == Qt::Key_Backtab) ) { + ( e->key() == Qt::Key_PageUp || e->key() == Qt::Key_PageDown) ) { int index = m_editorTabWidget->tabBar()->currentIndex(); - if (e->key() == Qt::Key_Tab) { + if (e->key() == Qt::Key_PageDown) { index++; if (index >= m_editorTabWidget->tabBar()->count()) { index = 0; P.