Skip to content

Instantly share code, notes, and snippets.

View valmayaki's full-sized avatar
🤠
Happy to be of service to you!

Valentine Ubani Mayaki valmayaki

🤠
Happy to be of service to you!
View GitHub Profile
@valmayaki
valmayaki / gmailCleanup.js
Created March 1, 2024 18:11 — forked from gabmontes/gmailCleanup.js
Google Apps script to cleanup messages from GMail.
// Inspired in http://www.johneday.com/422/time-based-gmail-filters-with-google-apps-script
// Deletes old marked conversations
function cleanUp() {
var delayDays = 5; // # of days before messages are moved to trash
var label = "Delete me"; // label to identify the messages
var maxDate = new Date(Date.now() - delayDays * 24 * 60 * 60 * 1000);
var userLabel = GmailApp.getUserLabelByName(label);
if (!userLabel) {
return;
@valmayaki
valmayaki / googleScript.js
Created March 1, 2024 18:10 — forked from SciutoAlex/googleScript.js
Archive Gmail Regularly
// Code modified from: http://www.johneday.com/422/time-based-gmail-filters-with-google-apps-script
// This is code for a Google Apps Script. You can add the code and give it permissions at script.google.com
// Archive every thread in your Inbox that is older than two days, and not starred.
function archiveInbox() {
var threads = GmailApp.search('label:inbox older_than:2d -in:starred');
for (var i = 0; i < threads.length; i++) {
threads[i].moveToArchive();
}
@valmayaki
valmayaki / hammerspoon-move-resize.lua
Created July 23, 2022 16:59 — forked from kizzx2/hammerspoon-move-resize.lua
Hammerspoon script to move/resize window under cursor
-- Inspired by Linux alt-drag or Better Touch Tools move/resize functionality
function get_window_under_mouse()
-- Invoke `hs.application` because `hs.window.orderedWindows()` doesn't do it
-- and breaks itself
local _ = hs.application
local my_pos = hs.geometry.new(hs.mouse.getAbsolutePosition())
local my_screen = hs.mouse.getCurrentScreen()
@valmayaki
valmayaki / copyToFat32.sh
Created January 15, 2021 19:20 — forked from nabilfreeman/copyToFat32.sh
FAT32 File copier & splitter (works with Multiman)
#!/bin/bash
# Are you using Mac OS X?
# You need to install coreutils for this to work.
# try `brew install coreutils`
# or `sudo port install coreutils`
# set a part size that works with FAT32 drives
PART_SIZE=3999
# nice little intro
@valmayaki
valmayaki / gist:be6bea9b0e9658fecf999a2042c1648a
Created May 20, 2020 17:32 — forked from mauvm/gist:5de07085f3b51e117378
An "envsubst" alternative for replacing env variables in NGinX site configurations (for using it with Docker)
#!/bin/bash
# NOTE: Brackets are not supported and '$' in values will break the script.
mkdir /etc/nginx/sites-enabled 2> /dev/null
for file in /etc/nginx/sites-available/*.conf
do
TPL=$(cat $file)
for row in $(env)
do
@valmayaki
valmayaki / load_dotenv.sh
Created May 20, 2020 17:32 — forked from mihow/load_dotenv.sh
Load environment variables from dotenv / .env file in Bash
if [ ! -f .env ]
then
export $(cat .env | xargs)
fi
@valmayaki
valmayaki / ProfilePage.md
Last active April 21, 2020 17:47
Html Assignment

Create a Profile Page using Html and css

Here is how the profile page should look Profile page

Profile image

Key Value

Opening and closing an SSH tunnel in a shell script the smart way

I recently had the following problem:

  • From an unattended shell script (called by Jenkins), run a command-line tool that accesses the MySQL database on another host.
  • That tool doesn't know that the database is on another host, plus the MySQL port on that host is firewalled and not accessible from other machines.

We didn't want to open the MySQL port to the network, but it's possible to SSH from the Jenkins machine to the MySQL machine. So, basically you would do something like

ssh -L 3306:localhost:3306 remotehost

@valmayaki
valmayaki / SSH_Tips.md
Last active April 12, 2020 23:50
SSH Tips

Port forward to MySQL database

ssh -M -S <my-socket-name> -fNT -L localhost:33067:localhost:3306 <user>@<hostname>
  • -f Run in the background before command execution.
  • -N Don’t execute any commands
  • -T Disable pseudo-tty allocation. I don’t know what this means.
@valmayaki
valmayaki / setting-up-babel-nodemon.md
Created April 1, 2020 18:19 — forked from sam-artuso/setting-up-babel-nodemon.md
Setting up Babel and nodemon

Setting up Babel and nodemon

Inital set-up

Set up project:

mkdir project
cd project
npm init -y