Skip to content

Instantly share code, notes, and snippets.

View brccabral's full-sized avatar
🐔
Vamos, Galo! Ganhar o Brasileiro!

Bruno Cabral brccabral

🐔
Vamos, Galo! Ganhar o Brasileiro!
View GitHub Profile
@brccabral
brccabral / 01_README.md
Created March 3, 2025 20:11
Termux Config

Termux Config

Install Termux from F-Droid.

Update and install useful packages.

pkg update
pkg upgrade
pkg install openssh
pkg install iproute2
@brccabral
brccabral / 01_Readme.md
Last active March 12, 2025 07:08
Ollama OpenWebUI Raspberry Pi

Ollama OpenWebUI Raspberry Pi

  • Install Ollama
curl -fsSL https://ollama.com/install.sh | sh
  • Install the models
ollama run deepseek-r1:1.5b
ollama stop deepseek-r1:1.5b
@brccabral
brccabral / 01_README.md
Created December 11, 2024 00:07
SQL Custom Script

SQL Custom Script

Set the environment variable DB_PASS. It will briefly create a temp file, execute it and load the password as PSSQL variable. The file is deleted.
Then, connect to the DB and run custom.sql.

set DB_PASS=secret
sqlplus /nolog @run_custom.sql
@brccabral
brccabral / README.md
Last active April 23, 2025 02:00
CMake helper functions

CMake print all variables matching pattern

Helper function that prints all variables matching pattern

function(print_cmake_variables_matching pattern)
    get_cmake_property(_variableNames VARIABLES)
    string(TOLOWER "${pattern}" pattern_lower)
    foreach (_variableName ${_variableNames})
        string(TOLOWER "${_variableName}" variable_lower)
@brccabral
brccabral / libemail.py
Last active August 22, 2024 00:46
Python Email
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
class Email:
def __init__(self, from_: str, to: list[str], subject: str):
self.from_ = from_
self.to = to

Git Tips

Hook: post-receive

I have a repo on my machine, MyApp, I have a Bare Git Repo on a remote server production at /home/userName/MyApp.
When pushing to remote production, I need to update the code in the actual location /var/www/MyApp, but it needs root/sudo permission.

In the bare repo, add file /home/userName/MyApp/hooks/post-receive. This file is always executed after a push.
The idea is to execute this:

#!/bin/bash
@brccabral
brccabral / 01_README.md
Last active April 16, 2024 21:35
Firefly III
@brccabral
brccabral / 01_README.md
Last active March 26, 2024 02:50
VNC server on Ubuntu Desktop

VNC server on Ubuntu Desktop

Followed these initial instructions
https://www.youtube.com/watch?v=3K1hUwxxYek

The video asks to install lightdm, but there is no need, we can use gdm3.
Install x11vnc.

sudo apt update
@brccabral
brccabral / xgrabkey.c
Created March 20, 2024 23:40
XGrabKey
// Original from https://gist.github.com/jouyouyun/669726de58df8d333666
// Compile: gcc xgrabkey.c `pkg-config --cflags --libs x11` -o xgrabkey
#include <stdio.h>
#include <string.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
int main()
{
@brccabral
brccabral / 01_README.md
Last active April 7, 2024 18:24
Pihole