Skip to content

Instantly share code, notes, and snippets.

View blacksoulgem95's full-sized avatar
🏳️‍⚧️
Enby & Proud

Sofia Vicedomini blacksoulgem95

🏳️‍⚧️
Enby & Proud
View GitHub Profile
@blacksoulgem95
blacksoulgem95 / ubuntu-init.sh
Last active June 5, 2025 13:17
Server Init
# Load Public Keys into my server
curl https://github.com/blacksoulgem95.keys | tee -a ~/.ssh/authorized_keys
# Update the machine
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y && sudo snap refresh
# Common required packages regardless of distro
sudo apt install curl zip unzip
# Install DOCKER
@blacksoulgem95
blacksoulgem95 / ubuntu-install-docker.sh
Last active June 3, 2025 17:59
Installs docker on an ubuntu machine
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
@blacksoulgem95
blacksoulgem95 / downloader.js
Last active December 22, 2024 20:06
simple node.js downloader with resume on half done projects and checks already downloaded links
const fs = require('fs');
const https = require('https');
const path = require('path');
// Funzione per stampare la progressione del download
function printProgress(completed, total) {
const percent = ((completed / total) * 100).toFixed(2);
const barLength = 20; // Lunghezza della barra di progresso
const completedLength = Math.round((completed / total) * barLength);
const bar = '█'.repeat(completedLength) + '-'.repeat(barLength - completedLength);
@blacksoulgem95
blacksoulgem95 / plyder.Dockerfile
Last active December 21, 2024 18:20
plyder dockerfile
#
# Plyder ( https://github.com/kpj/plyder ) Dockerfile
# to easily run it inside your homelab docker infra
#
FROM python:3-alpine
RUN addgroup -S plyderdm && adduser -S plyderdm -G plyderdm
USER root
RUN echo 'export "PATH=$PATH:/home/plyderdm/.local/bin"' >> /etc/profile
RUN apk add gcc python3-dev musl-dev linux-headers
@blacksoulgem95
blacksoulgem95 / keybase.md
Created November 4, 2022 21:43
[BlackSoulGem95] Keybase Verification

Keybase proof

I hereby claim:

  • I am blacksoulgem95 on github.
  • I am blacksoulgem95 (https://keybase.io/blacksoulgem95) on keybase.
  • I have a public key ASAdAf93uLEte8BPSwVbPmsMpkG79qwoK8hn9_9vKJi5Vwo

To claim this, I am signing this object:

@blacksoulgem95
blacksoulgem95 / install_imapsync.sh
Created April 30, 2021 10:30
Installs on Ubuntu IMAPSYNC
echo "Installing Dependencies"
sudo apt-get -y install git rcs make makepasswd cpanminus apt-file
sudo apt-get -y install gcc libssl-dev libauthen-ntlm-perl \
libclass-load-perl libcrypt-ssleay-perl liburi-perl \
libdata-uniqid-perl libdigest-hmac-perl libdist-checkconflicts-perl \
libfile-copy-recursive-perl libio-compress-perl libio-socket-inet6-perl \
libio-socket-ssl-perl libio-tee-perl libmail-imapclient-perl \
libmodule-scandeps-perl libnet-ssleay-perl libpar-packer-perl \
libreadonly-perl libsys-meminfo-perl libterm-readkey-perl \
@blacksoulgem95
blacksoulgem95 / humblebundlebookdownload
Created November 21, 2017 13:08
Download all books from Humble Bundle
/*
Simply copy and paste it in the developer console on humble bundle after-purchase page, where all download links are available.
It uses a timeout for avoiding the browser to block the popup.
*/
document.querySelectorAll('div.downloads div.download a.a').forEach(e => {
setTimeout(() => {
if (e.href.indexOf('//dl.') != -1) {
window.open(e.href, '_blank')
}
}, 2000);
@blacksoulgem95
blacksoulgem95 / ifgenerator.js
Created August 18, 2017 14:50
Generate if-else for "string enum"
var fs = require('fs');
var enumData = ["ENUM_1", "ENUM_2", "ENUM_3", "ENUM_4"];
var ifStmt = "if (value.equals(\""+ enumData[0] +"\")) {\n\t\n\t} ";
for (var i = 1; i < enumData.length; i++) {
ifStmt += "else if (value.equals(\""+ enumData[i] +"\")) {\n\t\n\t} ";
}