LINUX.ORG.RU

Сообщения HaCk3D

 

Вьюер пикч в терминале

Галерея — Скриншоты

Давным-давно, когда мы еще писали консольный вк, хотелось прикрутить пикчи к ncurses. Чекали w3m, еще пару тулов, но у всех были проблемы с рендером, саппорт не всех терминалов и т.д.

И тут я наткнулся на Überzug

Отличная вещь, написана на питоне, там и примеры для курсов в ридми.

В итоге написал такой небольшой скрипт (за убогий баш-код не пинать), который определяет максимально возможный сайз (без потери соотношения сторон) и нужную строку на которой рендерить пик.

#!/bin/bash
[[ -z "$1" ]] && echo "Error: image path not specified" && exit 1
source "`ueberzug library`"

echo -ne "\033[6n"
read -s -d\[ garbage
read -s -d R cursor_y
cursor_y=(${cursor_y//;/ })
cursor_y=`expr $cursor_y - 1`

tmp=`stty size`
size_y=`echo $tmp | cut -f1 -d' '`
size_x=`echo $tmp | cut -f2 -d' '`

max_height=`expr $size_y - $cursor_y`

ImageLayer 0< <(
    ImageLayer::add [identifier]="example0" [x]="0" [y]="$cursor_y" [max_width]="$size_x" [max_height]="$max_height" [path]="$1"
    read
)

По зависимостям один питон пакет:

  sudo pip install ueberzug

Сам скрипт тут

Делаем симлинк в /usr/bin/ и радуемся пикчам в терминале

Github

Telegram

>>> Просмотр (1920x1080, 3671 Kb)

 , ,

HaCk3D
()

Переезд с BSPWM на i3

Галерея — Скриншоты

Давно хотел себе механику, и наконец-то Anne Pro появилась на AliExpress. Решил взять с браун свитчами. Ох и шикарная же вещь, хотя думал, что привыкать придется довольно долго к 60% да и некоторые клавиши не совсем в очевидных местах, но оказалось очень даже удобно. Механика ван лав :3

Продал свой ноут и купил пекарню с win по дефолту. После того, как клава приехала, решил все-таки вернуться на православную ось, форматнул к херам оба винта, накатил Arch. Дальше пошел выбор WM (на DE я больше не вернусь)

Хотелось бы еще рассказать про BDSM BSPWM: вещь то очень даже неплохая, однако товарищ https://github.com/baskerville обожает ломать обратную совместимость и ты такой обновляешься, ребут (иксы лежат ofc) и в @хуе лезешь читать changelog, фиксить свой конфиг (теперь видите ли у нас север-запад-юг вместо привычных up-left-down, ну и тд). Итог — ждать пока BSPWM станет ≥1.0, тогда и можно будет юзать.

Поискал пару других тайловых WM, но остановился на i3. Комьюнити большое, саппорт во всяких барах, биндинги к i3-msg на многих языках, да и вообще отличная и стабильная вещь. Т.к. начал менять WM, то и бар решил найти новый, bye lemonbar. Нашел вот такую имбу — https://github.com/jaagr/polybar. Сначала хотел сделать прозрачный бар и минимализм, но пока что юзаю почти тот же сетап, что и был с минимальными дополнениями.

В дотфайлах тоже много изменений: вынес старые конфиги bspwm в отдельную директорию, все почистил. Теперь в prompt текущую ветку показывает везде в проекте, а не только там, где есть .git, добавил иконки в ls, обновил алиасы и много мелочей.

Termite

Subl3

lockscreen

Ну и все конфиги тут — https://github.com/HaCk3Dq/dotfiles

И еще переехал с вк, в тг: https://t.me/hack3d_home

Peace.

>>> Просмотр (1920x1080, 3079 Kb)

 , ,

HaCk3D
()

Немного визуализации на desktop

Галерея — Скриншоты

Давно хотел себе визуализацию спектра играющей музыки на десктопе, нашел сишную либу, которая коннектится к пульсе и высчитывает FFT. Ну и написать рендерер было совсем изи, однако плавность анимации по сравнению с той же CAVA намного хуже. (если что, я не против пулл-реквестов)

Ну и только сегодня запилил пакет для аура spectrumyzer, а для всех остальных есть build

видео демка

сорс

>>> Просмотр (1920x1080, 1923 Kb)

 

HaCk3D
()

Нужен хэлп с фильтрами для визуализатора спектра

Форум — Development

Почти доделал spectrumyzer, однако если посмотреть cava, то можно увидеть топовую анимацию.

Курил сорсы: там гравитация, интегральный фильтр и monstercat-filter. Было бы неплохо, если бы кто-нибудь помог или обьяснил.

 , , ,

HaCk3D
()

Переезд на BSPWM

Галерея — Скриншоты

Прошел ровно год с моего прошлого поста в галерею. Я полностью ушел в разработку консольного клиента для вк и заставляю себя пилить еще один проект. Давно хотел попробовать тайлинг, но никак не решался уйти с привычного говна гнома в сторону bspwm. И когда приехала моя mSATA SSD (в прошлый раз я случайно заказал обычную сату -_-), решено было накатить subj. Смотрел тонны десктопов, представлял как все сделаю и вот что получилось.

( читать дальше... )

>>> Просмотр (1920x1080, 2475 Kb)

 , ,

HaCk3D
()

PyGtk проблема с эвентами

Форум — Development

Суть таски - есть десктопный виджет, нужно на нем рисовать каждые .05 сек.

Я никогда с GTK не работал, за пару часов немного разобрался и сделал прозрачное окно и даже немного понял, как рисовать. Но проблема в том, что я юзаю эвент «draw», который отрабатывает онли 1 раз. А как сделать «как надо» без понятия. (Гугление дальше не помогает)

Сорс


import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, Gdk
import signal, os

class Widget(Gtk.Window):
  def __init__(self):
    Gtk.Window.__init__(self, skip_pager_hint=True, skip_taskbar_hint=True)
    self.set_wmclass("sildesktopwidget","sildesktopwidget")
    self.set_type_hint(Gdk.WindowTypeHint.DESKTOP)
    self.set_size_request(600,400)
    self.set_keep_below(True)

    screen = self.get_screen()
    rgba = screen.get_rgba_visual()
    self.set_visual(rgba)
    self.override_background_color(Gtk.StateFlags.NORMAL, Gdk.RGBA(1,1,1,1))

    self.drawArea = Gtk.DrawingArea()
    self.drawArea.connect('draw', draw_cb)
    self.add(self.drawArea)

    self.show_all()
    self.move(300,300)

def draw_cb(widget, cr):
  print "test"
  cr.set_source_rgba(0,0.1,0.2,0.5)
  cr.rectangle(50,75,100,100)
  cr.fill()

if __name__ == '__main__':
  window = Widget()
  signal.signal(signal.SIGINT, signal.SIG_DFL)
  Gtk.main()

 , ,

HaCk3D
()

Релиз alpha-версии консольного vk

Галерея — Скриншоты

vk-cli - консольный клиент (ncurses) для социальной сети vk.com, написан полностью на D. Уже есть в AUR, .deb в процессе, линк на github.

( читать дальше... )

>>> Просмотр (1920x1080, 1618 Kb)

 ,

HaCk3D
()

Странный перфоманс на nvidia

Форум — Desktop

Недавно переустановил систему на SSD, накатил все по арчевики (nvidia, bumblebee, bbswitch, optirun), но карта никак не хочет пахать. Выдает фпс как у встроенной Intel, хотя пишет в играх, что работает nvidia. И не выключается после работы, но это вроде из-за невозможности анлоада nvidia-uvm (руками все норм):

cat /proc/acpi/bbswitch
0000:01:00.0 ON

Итак логи/конфиги:

systemctl status bumblebeed.service -l
● bumblebeed.service - Bumblebee C Daemon
   Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled)
   Active: active (running) since Пн 2016-02-08 18:28:30 MSK; 44min ago
 Main PID: 433 (bumblebeed)
    Tasks: 1 (limit: 512)
   CGroup: /system.slice/bumblebeed.service
           └─433 /usr/bin/bumblebeed

фев 08 18:28:30 HaCk3D bumblebeed[433]: [   17.501207] [INFO]/usr/bin/bumblebeed 3.2.1 started
фев 08 18:35:48 HaCk3D bumblebeed[433]: [  455.058121] [WARN][XORG] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi/".
фев 08 18:35:48 HaCk3D bumblebeed[433]: [  455.058144] [WARN][XORG] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi/".
фев 08 18:35:48 HaCk3D bumblebeed[433]: [  455.058154] [ERROR][XORG] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
фев 08 18:35:48 HaCk3D bumblebeed[433]: [  455.058158] [WARN][XORG] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
фев 08 18:35:49 HaCk3D bumblebeed[433]: [  455.774522] [WARN][XORG] (WW) NVIDIA(0): Unable to get display device for DPI computation.
фев 08 18:35:49 HaCk3D bumblebeed[433]: [  455.774553] [WARN][XORG] (WW) Warning, couldn't open module x11glvnd
фев 08 18:35:49 HaCk3D bumblebeed[433]: [  455.774565] [ERROR][XORG] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
фев 08 19:02:53 HaCk3D bumblebeed[433]: rmmod: ERROR: Module nvidia is in use by: nvidia_modeset
фев 08 19:02:56 HaCk3D bumblebeed[433]: [ 2082.939570] [ERROR]Unloading nvidia driver timed out.
/etc/bumblebee/bumblebee.conf


[bumblebeed]
VirtualDisplay=:8
KeepUnusedXServer=false
ServerGroup=bumblebee
TurnCardOffAtExit=false
NoEcoModeOverride=false
Driver=
XorgConfDir=/etc/bumblebee/xorg.conf.d

[optirun]
Bridge=auto
VGLTransport=proxy
PrimusLibraryPath=/usr/lib/primus:/usr/lib32/primus
AllowFallbackToIGC=false

[driver-nvidia]
KernelDriver=nvidia
PMMethod=auto
LibraryPath=/usr/lib/nvidia:/usr/lib32/nvidia
XorgModulePath=/usr/lib/nvidia/xorg/,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia

[driver-nouveau]
KernelDriver=nouveau
PMMethod=auto
XorgConfFile=/etc/bumblebee/xorg.conf.nouveau

В арчевики написан фикс для «failed to set DRM interface version 1.4: Permission denied», но он не помогает.

 , ,

HaCk3D
()

Как я начал свой linux-way

Галерея — Скриншоты

Прошлым летом я случайно встретил одного человека, который изменил мою жизнь слишком кардинально...

( читать дальше... )

>>> Просмотр (1920x1080, 950 Kb)

 , , ,

HaCk3D
()

RSS подписка на новые темы