sudo dpkg -P $(dpkg -l | grep nvidia-driver | awk '{print $2}')
sudo apt autoremove
sudo lshw -C display
NVIDIA Apmere cards including 3070, 3080 and 3090 dos not work with CUDA 10.
sudo apt update | |
sudo apt install fuse libfuse-dev libicu-dev bzip2 libbz2-dev cmake git libattr1-dev zlib1g-dev g++ | |
sudo snap install cmake --classic | |
git clone https://github.com/sgan81/apfs-fuse.git | |
cd apfs-fuse | |
git submodule init | |
git submodule update | |
mkdir build |
import os | |
import assemblyai as aai | |
from pytube import YouTube | |
aai.settings.api_key = "INSERT YOUR API KEY HERE" | |
youtube_url = "https://www.youtube.com/watch?v=f94wKh70cOY" | |
# Let's download the YouTube video | |
youtube = YouTube(youtube_url) | |
audio = youtube.streams.filter(only_audio=True).first() |
-- Token Based API Access for Supabase | |
-- | |
-- How to configure Supabase (https://supabase.com/) to generate and accept API tokens. | |
-- | |
-- (c) 2022 Felix Zedén Yverås | |
-- Provided under the MIT license (https://spdx.org/licenses/MIT.html) | |
-- | |
-- Disclaimer: This file is formatted using pg_format. I'm not happy with the result but | |
-- prefer to follow a tool over going by personal taste. | |
-- |
sudo yum update | |
# Installing ZSH | |
sudo yum -y install zsh | |
# Check ZSH has been installed | |
zsh --version | |
# Install "util-linux-user" because "chsh" is not available by default | |
# See https://superuser.com/a/1389273/599050 |
# weechat script to display image in terminal | |
# (tested in termite, which is based on vte-ng) | |
# requirements: | |
# * weechat (of course) | |
# * w3m (for w3mimgdisplay) | |
# * imlib2-webp (optional, for webp support) | |
# | |
# save this script as ~/.weechat/python/test.py and load using | |
# /python load test.py | |
# in weechat. |
#!/usr/bin/env bash | |
# Author: Oleh Pshenychnyi | |
# Date: 13.02.2021 | |
# | |
# Kill all processes matching a provided pattern. | |
# | |
# Usage: | |
# | |
# >> bash killer.sh celery |
/** | |
* Fancy ID generator that creates 20-character string identifiers with the following properties: | |
* | |
* 1. They're based on timestamp so that they sort *after* any existing ids. | |
* 2. They contain 72-bits of random data after the timestamp so that IDs won't collide with other clients' IDs. | |
* 3. They sort *lexicographically* (so the timestamp is converted to characters that will sort properly). | |
* 4. They're monotonically increasing. Even if you generate more than one in the same timestamp, the | |
* latter ones will sort after the former ones. We do this by using the previous random bits | |
* but "incrementing" them by 1 (only in the case of a timestamp collision). | |
*/ |
// original: https://gist.github.com/mikelehen/3596a30bd69384624c11 | |
class PushIDGenerator { | |
private init() { } | |
static private let PUSH_CHARS = Array("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz") | |
static private var lastPushTime: UInt64 = 0 | |
static private var lastRandChars = Array<Int>(repeating: 0, count: 12) | |
static func generate() -> String { |