Skip to content

Instantly share code, notes, and snippets.

View alex-pat's full-sized avatar

Alexander Pateenok alex-pat

View GitHub Profile
@alex-pat
alex-pat / timesg.py
Last active March 1, 2024 05:24
Convert dmesg time offsets to real time
#!/usr/bin/env python3
USAGE = """ ./timesg.py TIMESTAMP [HOURS] <dmesg >dmesg-with-time """
import sys
import re
import datetime
RE = re.compile(r'^\[\s*(\d+\.\d+)\]')
@alex-pat
alex-pat / Article.md
Last active October 4, 2023 14:11
Голосовой помощник

Делаем голосового помощника своими руками

С самого выхода Космической одиссеи Стенли Кубрика люди мечтали иметь компьютер, с которым можно было бы общаться так же, как с другим человеком. Прошло уже почти полвека с момента выхода сей культовой картины, а технологии лишь недавно позволили людям приблизиться к технологиям воображаемого будущего. И хотя космические корабли всё ещё слабо бороздят Большой театр просторы Вселенной,

@alex-pat
alex-pat / lspci.py
Created September 5, 2016 16:05
pci devices list
#!/usr/bin/env python
devices_file = open('/proc/bus/pci/devices').readlines()
raw_id = [x.split('\t')[1] for x in devices_file]
vend_and_dev = [(x[:4], x[4:]) for x in raw_id]
pci_ids = open('/usr/share/hwdata/pci.ids').readlines()
ids_lib = {}
dev = ""
vendor = ""
@alex-pat
alex-pat / calc.lua
Last active January 9, 2020 13:56
calcutator prompt for awesome wm
-- Insert in your rc.lua to globalkeys (may be after mod+x) defining
-- In awesome 4.0 :
awful.key({ modkey }, "c",
function ()
awful.prompt.run {
prompt = "Calculate: ",
textbox = awful.screen.focused().mypromptbox.widget,
exe_callback = function (text)
awful.spawn.easy_async(
"python -c \"from math import * ; print(" .. text .. ")\"",
@alex-pat
alex-pat / nixx.sh
Created August 6, 2019 14:40
The rest of the owl
#!/usr/bin/env bash
# partitions
parted /dev/sda -- mklabel msdos
parted /dev/sda -- mkpart primary 1MiB 100%
mkfs.ext4 -L nixos /dev/sda1
mount /dev/sda1 /mnt
# nixos
nixos-generate-config --root /mnt
@alex-pat
alex-pat / sleep.lua
Created January 9, 2019 20:14
awesome wm useful timer
gears.timer.start_new(60, function()
if os.date("*t").hour >= 23 then
naughty.notify({
text = "It's too late!",
title = "Go sleep!",
position = "top_right",
timeout = 60,
bg = "#f06060",
fg = "#EEE9EF",
widht = 200,
H4sIAPL+LFwAA9T8A9AwvbcviD62bds23se2bZvvY9u2bdu2bds27vffOLPnnF13zlRN3ambqu6s
rHR6JanO6pX1SyLiaGFFoGTgbGFCQEsg5m5ja2dvYvxPgpHO3tgU4P+ZwPBPYGNh+VfMyM7K8F9j
Bgamf2UyAzAyszAysTD/k2IE+CeXiYkVgIDh/yH5/1+Di5OzgSMBAYC9nZOzk5Wjhb3zf//c/1X+
/58GUnlhUVpGOmYo0qHjh+PL0se8uaERKCYCBgI7Q0soHh4CemkTWzNncwKWf1iKBPSiFtbOJo7/
xNYGzibCJkZ2xiYEfHxQTs6OJgY2UG4byzqbMTjt8d6nanNW+nmArpNdejlgL/or6oMhvHF+3vOT
ecvAY7YSVhLAm769XczqycvZfxcaGC/gVFTxEtIRQ0Oj9nbvY99u05hef6EdfIv6F84iVYPkq1R+
zh+Jf/S+EBsjh377et9/oId3e0dIvm6fX2+gx4IdsH/y9Gl7W/S+7wCdSuikDck4Ou1fwdWQ6x8K
kkbk3pqFnokzYqkJPN4SELzdzREMAnJEnjrZ14agt/W0zVdFR1wEX0+Af6Z9F6H7UXrfMXs/TrSe
TmrfQtnx8Hcgd6V42YJjJXdVamqxvM6W/+4eeN8RrvlC30GS0Y+44FQTR9V83K1eMhZ8GnWBFD7N
4mOi6twIOJslreoLM+8kpGMo3AhMuAqEnnQPMs/lLwUmREC7jF19v6pP9YelfKR/Ysw/U0hd5Apw
@alex-pat
alex-pat / cyr.tex
Created October 5, 2018 11:45
cyrtex
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\usepackage{polyglossia}
\setmainlanguage[babelshorthands=true]{russian}
\setotherlanguage{english}
\setmonofont{Courier New}
\newfontfamily\cyrillicfonttt{Courier New}[Script = Cyrillic]
@alex-pat
alex-pat / deps.svg
Created August 14, 2018 11:10
eng-tester deps graph
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@alex-pat
alex-pat / .vimrc
Last active August 10, 2018 08:26
vimrc rus
" Показывать номера строк
set number
" Включить подсветку синтаксиса
syntax on
" Поиск в процессе набора
set incsearch
" Подсвечивание результатов поиска
set hlsearch
" умная зависимость от регистра. Детали `:h smartcase`
set ignorecase