LINUX.ORG.RU

Избранные сообщения Cirno

Анимешный дефолт

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

Жил я себе на арче, наслаждался терминальным ЮИ, потому-то ГУИ в XWayland выглядит как последний Uncharted на ванильной плойке. Но в один день случайно снес себе пол / и было как-то лень все восстанавливать. На арче сидел сколько себя помню, поэтому решил посмотреть, как там дела в других легковесных дистрибутивов. Глаз зацепился за Void, потому что это тот же самый арч, но без systemd. Заодно решил осилить HiDPI на Х и пересесть на него, чего раньше не очень удавалось. Ибо емакс в терминале это как корочки от хлеба.

В общем, пришлось менять весь стек: sway + waybar + bemenu на bspwm + polybar + rofi. Ну и плюсом picom, чтобы спецэффекты были, но только чуть-чуть. А это означает переписывание конфигов и wal темплейтов. Более того, так как ручки то у меня кривые, хотелось автоматизировать все, начиная от бутстрапа системы и заканчивая расстановкой конфигов в нужные места.

В общем, после трёх недель кряхтений, получилось набросать минимум всего, что нужно для полноценной работы на десктопе. Включая вот этот вот бутстрап, который поднимет базовую систему с full disk encryption и ещё парочку скриптов, которые поставят все зависимости и настроят Х с HiDPI и WM со всеми перделками. Написано все это, конечно же, на fish shell. Потому что а на чем ещё. Теперь то можно удалять и двигать все, что не приколочено (а ничего не приколочено) и не бояться, что все сломается и придётся настраивать все ручками заново.

Если по софту, который использую, то это:

  • Kitty в качестве терминала, потому что GPU рендеринг и лигатуры.
  • BSPWM как WM. Не уверен, почему не i3. Вроде как он давно заброшен и не пилится. Даже отступы от краев экрана настроить нельзя, только если i3-gaps ставить.
  • Fish, конечно же. Всеми любимый.
  • Doom Emacs, где я пишу в основном весь код. И Neovim, если нужно что-то быстренько в файлике поделать.
  • Polybar для вот этих вот штучек сверху. Выглядит прикольно, пол дня настраивал.
  • Ну и rofi, чтобы запускать всякое разное. Тоже wal шаблон писал кучу времени, но я без понятия, как его зафоткать. Потому что он горячие клавиши перехватывает.
  • Tdrop ещё, чтобы эмулировать scratchpad’ы из Sway (на первом скрине он).

Все это, как и подобает, лежит на гитхабе:

  • Дотфайлы тут. Там же и бутстрап для зависимостей и конфигов.
  • Бутстрап базовой системы тут, если кому интересно.

Мой прошлый сетап я тут не кидал, но его можно найти в /r/unixporn. Там тоже аниме, но только Хомура.

>>> Просмотр (3840x4320, 2062 Kb)

 , , , ,

rbbtnspc
()

Арч самоизоляционщика

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

Делать дома нечего, решил попробовать эти ваши тайлинги на своем ноуте.
Не очень это просто, особенно когда не умеешь кодить всякие css и изучаешь все методом тыка и «обратного инжиниринга».
В целом пока нравится, так привык за две недели, что Gnome кажется каким-то неудобным. На скриншотах:

Еще скриншоты:
Rofi, углы пока не понял как убрать
LOR+ranger
Other apps

Мои старые темы: 1 2

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

 , , ,

olegka
()

Рабочее место дома

Галерея — Рабочие места

Стол самодельный еще со времен общяги, до сих пор живой. Клавиатура - Kinesis Advantage 2, мышь - Logitech MX Master 2. На этом же столе занимаюсь - учу английский и начал еще постепенно учить новый язык - японский. На столе бутылочка с водой. Монитор старенький, но мне хватает, цвета хорошие, есть еще широкоформатный 21 дюймов, но я его использую в качестве телевизора для игр :). Сейчас играю в Bloodstained Ritual of the Night и Ori and the Will of the Wisps. Также имеется графический планшет, покупал чтобы игру делать, но что-то игру перехотелось делать, а планшет остался, не придумал пока как его использовать, может будут иконки рисовать для своего pet проекта. Стул железный садовый, мне такие стулья почему-то кажутся наиболее удобными и спину можно размять об спинку стула. На полочках книги, и принадлежности для японской каллиграфии.

>>> Просмотр (4000x5120, 2219 Kb)

 , ,

Int64
()

Делюсь опытом ускорения чтения файловой систем

Форум — General

Привет, друзья! С Праздником!

Интересуясь настройкой производительности своего ноута, натолкнулся на интересный тест в комментарии файла ioblksize.h (coreutils) от автора его кода Jim Meyering:

#!/bin/bash
for i in $(seq 0 10)
	do bs=$((1024*2**$i))
    printf "%7s=" $bs
    timeout --foreground -sINT 2 \
        dd bs=$bs if=/dev/zero of=/dev/null 2>&1 \
        | sed -n 's/.* \([0-9,.]* [GM]B\/s\)/\1/p'
done

Из приложенной таблицы результатов тестов разных процессоров видно, что в среднем наибольшая скорость чтения наблюдается при размере блока 128 Кб:

                per-system transfer rate (GB/s)
   blksize   #1    #2    #3    #4    #5    #6    #7
   ------------------------------------------------
      1024  .73   1.7   2.6   .64   1.0   2.5   1.3
      2048  1.3   3.0   4.4   1.2   2.0   4.4   2.5
      4096  2.4   5.1   6.5   2.3   3.7   7.4   4.8
      8192  3.5   7.3   8.5   4.0   6.0  10.4   9.2
     16384  3.9   9.4  10.1   6.3   8.3  13.3  16.8
     32768  5.2   9.9  11.1   8.1  10.7  13.2  28.0
     65536  5.3  11.2  12.0  10.6  12.8  16.1  41.4
    131072  5.5  11.8  12.3  12.1  14.0  16.7  54.8
    262144  5.7  11.6  12.5  12.3  14.7  16.4  40.0
    524288  5.7  11.4  12.5  12.1  14.7  15.5  34.5
   1048576  5.8  11.4  12.6  12.2  14.9  15.7  36.5

Но на некоторых машинах чтение ФС очевидно быстрее с альтернативным размером блока. Так оказалось и в случае с моим N3540:

   1024=667 MB/s
   2048=1,2 GB/s
   4096=2,1 GB/s
   8192=3,2 GB/s
  16384=4,2 GB/s
  32768=5,1 GB/s
  65536=5,8 GB/s
 131072=6,2 GB/s
 262144=6,5 GB/s
 524288=6,6 GB/s
1048576=5,4 GB/s

Наблюдается очевидный пик при размере блока 512 Кб. Тем не менее, по умолчанию при подключении диска к системе параметр read_ahead_kb устанавливается в 128 Кб. Чтобы проверить, повлияет ли на скорость чтения ФС изменение размера блока по рекомендации теста Jim Meyering, я провёл ряд испытаний в максимально одинаковых условиях: сразу после загрузки, когда участвующие в тестах дирректории ещё не кэшированы. Засекал время на копирование файлов с жёсткого диска в /tmp. Использовал как системную cp, так и утилиту rsync. В тестах принимали участие процессор N3540 и SSD от одного производителя. Результат в секундах, ФС ext4.

Видео 2,4 ГбМелкие файлы (2110 шт.) 1,7 Гб
командаcp -rrsync -avhiscp -rrsync -avhis
размер блока128 Кб512 Кб128 Кб512 Кб128 Кб512 Кб128 Кб512 Кб
«холодный старт»10,6989,57921,78113,9308,6088,22716,89612,048
повторное копирование3,9052,80512,50812,4852,0482,0279,1418,990

Как видно из таблицы, с блоком 512 Кб наблюдается значительное ускорение при чтении незакэшированного содержимого диска (кэшированные файлы читаются примерно одинаково). Особенно это сказывается на работе rsync. Чтобы изменение сделать постоянным, добавил правило udev:

ACTION=="add|change", SUBSYSTEM=="block", RUN+="/bin/sh -c '/bin/echo 512 > /sys%p/queue/read_ahead_kb'"

Результатом очень доволен. Приятно узнать, что твой компьютер может больше, лучше, быстрее. А самое важное – на ожидание копирований/перемещений файлов тратится меньше драгоценного времени.

Интересно, с каким размером блока у вас файловая система работает быстрее? Поделитесь в комментариях!

 , ,

rmu
()

хочется странного в раскладках

Форум — Talks

как бы научить Хы делать альт-шифт на переключение раскладки И не «переключая» раскладки например с включенным английским набирать русские буквы нажав какой-нибудь мод4

P.S. Если кому надо (альт-шифт и капслок) setxkbmap -layout us,ru -option grp:alt_shift_toggle,caps_switch

 , ,

nerfur
()

Переехал на кучу утилит переписаных на Rust

Форум — Talks

Тег «угадай автора по заголовку».

Q: Зачем?

A: Ради эксперимента, повысится комфорт пользования терминалом или нет.

Q: Причем тут Rust?

A: Ни при чем, но из-за нативности и отсутствия GC на нем толпа людей побежала переписывать что ни попадя. С таким же успехом можно было бы и npm install, но тормозило бы. Ближе opam install или go get

Теперь мой терминал по истине свистит и пердит. Даю список если кому надо.

  • alacritty - GPU ускоренный терминал.
  • alias cat=bat- cat с хорошей подсветкой синтаксиса и нумерацией строк и пейджером.
  • broot - навигатор по каталогам, который одновременно показывает дерево, но адекватно себя ведет с громадными каталогами, показывая их по чуть-чуть.
  • dust - утилита для исследования места занимаемого каталогами, сортирует деревья файлов начиная с самых больших каталогов.
  • alias ls="exa -l --group-directories-first" ls с хорошими дефолтами, tree встроено.
  • rip Утилита для удаления файлов с разными удобными фичами и восстановлением
  • hors "How do I parse float in javascript?" - находит короткий ответ в интернетах и отвечает. Чуть лучше работает чем оригинал - howdoi.
  • mdcat - cat для Markdown, для отображения удобочитаемой формы документа. Ссылки делает сносками.
  • alias grep=rg - очень быстрый и удобный grep
  • starship - shell command prompt, показывает кучу полезной информации в зависимости от контекста, например git branch если в репозитории, версии софта и ЯП если в каталогах с сорцами, hostname если зайти по ssh.
  • tokei - сборщик статистики по ЯП и строкам кода в деревьях исходников.
  • hyperfine - бенчмарк утилита, time на стероидах.
  • tldr- сокращенная версия man, показывает как чем пользоваться в примерах, а не выдавая полную справку. Страницы поддерживаются сообществом для громадного количества утилит. Изначальный проект - https://tldr.sh/
  • topgrade - универсальная утилита обновления. При запуске пытается обновить все что видит - системные пакеты, vim пакеты и так далее.
  • runiq - быстрый sort | uniq с разными алгоритмами внутри.
  • fd - быстрый и удобный find, удобно чтобы не вспоминать заковыристые ключи
  • fselect - поисковик файлов с SQL-like языком запросов
  • sd - как sed, только интуитивный
  • i3status-rs - Сразу i3status+i3blocks. Плюс батарейки к i3blocks, которые как я понял автор решил убрать.
  • onefetch - Вроде neofetch, но для сорцов. Просто запустите эту штуку с корня любого git репа, клонированого локально
  • wasmtime - JIT runtime для WASI стандарта. Пускалка WebAssembly приложений.
  • scriptisto - «shebang-интерпретатор» для компилируемых языков, прозрачно собирает и кеширует нативные сборки кода

Что не зашло совсем

Все вышеперечисленое ставится через cargo install <package_name> (кроме alacritty), название смотрите на страницах. Сам cargo и Rust ставятся через

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

P.S. Призываю остальных взять ЯП вашей секты и поставить такой эксперимент и отписаться. Да-да, расскажите как вы пользовались ls на Java. Пользователей emacs прошу не беспокоить

 , , ,

vertexua
()

Видеоотчёты со Swiss Perl Workshop и PerlCon Riga

Новости — Конференции и встречи
Группа Конференции и встречи

Swiss Perl Workshop:

Звук оставляет желать лучшего. Видео доступны здесь.

PerlCon Riga:

Изначально конференция анонсировалась здесь, но видео доступны на этом канале.

 ,

perl5_guy
()

Какой свободной реализацией CAD пользуютесь?

Форум — Linux-hardware

В универе у нас преподают AutoCAD сейчас. Зашел на википедию, а там ссылки на большое количество свободных реализаций. Есть у кого опыт использования чего-то такого? Сложно было переходить с вышеупомянутого?

 

Cirno
()