Skip to content

Instantly share code, notes, and snippets.

@ix4
ix4 / chromedriver_upgrade.sh
Created February 22, 2024 20:11
Updates (or installs) ChromeDriver to ensure its version matches the installed Google Chrome version
#!/bin/bash
JSON_URL="https://googlechromelabs.github.io/chrome-for-testing/known-good-versions-with-downloads.json"
# Check if the system is Debian-based
if ! command -v lsb_release &> /dev/null || [ "$(lsb_release -is)" != "Debian" -a "$(lsb_release -is)" != "Ubuntu" ]; then
echo "This script is for Debian-based systems only. ❌"
exit 1
fi
@ix4
ix4 / apache-nginx-ftp
Created October 26, 2022 05:20 — forked from solancer/apache-nginx-ftp
Correct permissions for /var/www/html
# Adding current user to www-data
sudo adduser $USER www-data
# change ownership to user:www-data and
sudo chown $USER:www-data -R /var/www/html
sudo chmod u=rwX,g=srX,o=rX -R /var/www/html
# change file permissions of existing files and folders to 755/644
sudo find /var/www/html -type d -exec chmod g=rwxs "{}" \;
sudo find /var/www/html -type f -exec chmod g=rws "{}" \;
@ix4
ix4 / keyboard-keys.md
Created September 6, 2022 19:41
Keyboard keys markup in MarkDown

Ctrl + Alt + Space

<kbd>Ctrl</kbd> + <kbd>Alt</kbd> + <kbd>Space</kbd>
@ix4
ix4 / login-script.sh
Last active November 22, 2021 21:16 — forked from AlBichutsky/login-script.sh
Auto-Translated from Russian
#!/bin/bash
# disable the output of messages to the console if users log in under non-existent names
exec 2>/dev/null
# name of the group that is allowed access on weekends
group="admin"
# check if the user $ PAM_USER belongs to the admin group: no - 0, yes -1
check_group=$(id -Gn $PAM_USER | grep -w $group | awk '{print $2}' | wc -l)

Send message to Telegram on any SSH login

@ix4
ix4 / encode.py
Created October 28, 2020 00:17 — forked from gasman/encode.py
Encoding a file as a Youtube video - https://www.youtube.com/watch?v=hyqLv2_zBdA
# Encode inputfile.tar.gz as a series of video frames
# Frames are written to frames/frameNNNN.png
from PIL import Image
with open('inputfile.tar.gz', 'rb') as f:
data = f.read()
WIDTH = 120
HEIGHT = 90
CHUNK_SIZE = int((WIDTH * HEIGHT) / 8)
@ix4
ix4 / vg
Created April 18, 2020 11:04 — forked from denpamusic/vg
vpngate.net client for OpenWRT
#!/bin/sh
###
# vpngate.net client for OpenWRT
#
# This script allows to pull server list from vpngate public VPN server registry and filter
# it by country, score, maximum ping and uptime.
#
# Once server that matches requested criteria found, script will setup openvpn
# instance via UCI and perform connection test.
@ix4
ix4 / index.html
Last active December 13, 2020 16:59
Digital Clock with Vue.js
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<title>Digital Clock</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">
<link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Share+Tech+Mono'><link rel="stylesheet" href="./style.css">
</head>
<body>
@ix4
ix4 / .block
Created April 7, 2020 00:39 — forked from sc1f/.block
Perspective Workspace for COVID-19 U.S. Data
license: apache-2.0
height: 800