Skip to content

Instantly share code, notes, and snippets.

@avoidik
avoidik / README.md
Last active April 28, 2024 20:39
How to list supported RBAC verbs in Kubernetes?

It appears kubectl has first-class support via api-resources like:

$ kubectl api-resources -o wide
$ kubectl api-resources --api-group certificates.k8s.io -o wide
$ kubectl api-resources --namespaced -o wide

Alternatively, we can use curl to query Kubernetes API, but we have to expose the API endpoint first:

@avoidik
avoidik / commit_jupyter_notebooks_code_to_git_and_keep_output_locally.md
Last active April 13, 2024 13:58 — forked from 33eyes/commit_jupyter_notebooks_code_to_git_and_keep_output_locally.md
How to commit jupyter notebooks without output to git while keeping the notebooks outputs intact locally
  1. Add a filter to git config by running the following command in bash inside the repo:
git config filter.strip-notebook-output.clean 'jupyter nbconvert --ClearOutputPreprocessor.enabled=True --to=notebook --stdin --stdout --log-level=ERROR'  

Or

git config --global filter.strip-notebook-output.clean 'docker run --rm -i -v \"${pwd}:/home/jovyan\" jupyter/datascience-notebook jupyter nbconvert --clear-output --to=notebook --stdin --stdout --log-level=ERROR'
  1. Create a .gitattributes file inside the directory with the notebooks
@avoidik
avoidik / Vagrantfile
Last active March 31, 2024 17:04
Start Vagrant VM and generate SSH config using triggers
require Vagrant.source_root.join("plugins/commands/ssh_config/command")
Vagrant.configure(2) do |config|
config.vm.define "ubuntu" do |ubuntu|
ubuntu.vm.box = "ubuntu"
ubuntu.trigger.after :up do |trigger|
trigger.ruby do |env,machine|
ssh_template = VagrantPlugins::CommandSSHConfig::Command.new(["--host", machine.name.to_s, machine.name.to_s], env)
ssh_config = File.join(File.expand_path('~'), '.ssh', 'config.d', machine.name.to_s)
$stdout = File.new(ssh_config, 'w')
@avoidik
avoidik / README.md
Last active March 31, 2024 15:33
install macports

Install & configure Macports

This method provides an option which doesn't require sudo privileges. This will install all Macports related stuff inside of a ~/macports directory.

Install

mkdir ~/macports
cd ~/macports
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDbhxa+PXyl4pelSASVkwfSARCEJ/9TnamXcxg2BNIyWly48MYEMv/3/FRZco0RbRG1ifwxCHoW/7CZQt0cb3aAzrzdcLHKFIYP8HDitk8I6u0l15qptCO6dyZj1NzAjUoXeX+gvnPPEssChM66svXMVBXKD1Dhoqm0miMYeOz907UTmCg0DukUwPUxuCknvU8T9lclLBLmqMVprKGBZFb6zUzmMdCa4APAfJzvP/PuSYIlBU9C5p2W1hJuyLuJzOjSeO6g0ZjbYXJ2xanmS52FdJkqj0denWupww7TYTAsv7QewfdfrXuts0Ve05OqIV+WgqK8DXbRkf2bftam2FB/
@avoidik
avoidik / useradd.sh
Created March 8, 2024 09:36 — forked from igorvoltaic/useradd.sh
Create new user using command line in Mac OS X. Do not forget to set correct permissions for the file.
#!/bin/sh
if [[ `id -u` != 0 ]]; then
echo "Must be root to run script"
exit
fi
read -p "Enter user name and press [ENTER]: " UserName
if [[ $UserName == `dscl . -list /Users UniqueID | awk '{print $1}' | grep -w $UserName` ]]; then
@avoidik
avoidik / README.md
Last active March 28, 2024 11:25
p4merge as git diff tool on macos
# install p4v tools
brew install --cask p4v

# configure git
git config --global diff.tool p4merge
git config --global difftool.p4merge.path /Applications/p4merge.app/Contents/Resources/launchp4merge
git config --global difftool.prompt false
git config --global merge.tool p4merge
git config --global mergetool.p4merge.path /Applications/p4merge.app/Contents/Resources/launchp4merge
@avoidik
avoidik / check_vulnerabledrivers.ps1
Created May 21, 2023 13:39 — forked from api0cradle/check_vulnerabledrivers.ps1
A quick script to check for vulnerable drivers. Compares drivers on system with list from loldrivers.io
# Simple script to check drivers in C:\windows\system32\drivers against the loldrivers list
# Author: Oddvar Moe - @oddvar.moe
$drivers = get-childitem -Path c:\windows\system32\drivers
$web_client = new-object system.net.webclient
$loldrivers = $web_client.DownloadString(" https://www.loldrivers.io/api/drivers.json") | ConvertFrom-Json
Write-output("Checking {0} drivers in C:\windows\system32\drivers against loldrivers.io json file" -f $drivers.Count)
foreach ($lol in $loldrivers.KnownVulnerableSamples)
{
@avoidik
avoidik / bookmark.txt
Created May 14, 2023 12:45
bookmarklet to get AWS account info
javascript:(function () { function fullDecode (input) { let decoded = decodeURIComponent(input); return (decoded == input ? decoded : fullDecode(decoded)) }; let userInfo = document.cookie.replace(/(?:(?:^|.*;\s*)aws-userInfo\s*\=\s*([^;]*).*$)|^.*$/, "$1"); alert(JSON.stringify(JSON.parse(fullDecode(userInfo)), null, 4)) })();
@avoidik
avoidik / ssh.sh
Created May 14, 2023 12:41
Autocompletion for SSH hosts
_ssh()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
opts=$(grep '^Host' ~/.ssh/config ~/.ssh/config.d/* 2>/dev/null | grep -v '[?*]' | cut -d ' ' -f 2-)
COMPREPLY=( $(compgen -W "$opts" -- ${cur}) )
return 0