LINUX.ORG.RU

Сообщения ksevelyar

 

Переключение приложений цифрами в Openbox

 

Можно так сделать?

В браузерах, например, можно зажать Alt и нажимать цифры для переключения вкладок.

Я хочу аналогичное поведение для панели задач.

ksevelyar
()

Openbox — скретчпады или аналогичное поведение

 , scratchpads

Очень вкусная фича из xmonad.

По нажатию клавиши открывается приложение, по повторному нажатию скрывается (переносится на спрятанный рабочий стол).

Очень удобно для консоли, rss читалки, почтового клиента и т.д.

Как реализовать подобное в openbox?

То есть наверно можно написать какие-нибудь огромные костыли на баше, которые проверяют запущен ли процесс и дальше что-то делают.

А как-нибудь по простому можно?

ksevelyar
()

xmonad + dzen2 — прощальный скриншот

 ,

http://fc08.deviantart.net/fs70/f/2012/099/5/9/xmonad___dzen2_by_ksevelyar-d4...

Думаю, что вдоволь наигрался с каноничным тайлингом.

Конкретно Иксмонад раздражает тем, что каждое новое приложение с всплывающими окнами нужно настраивать заново (иногда очень костыльно), не везде работает фулскрин, картинка дёргается и мерцает при переключении столов / открытии терминалов.

Из мелочей не понравилось то, что не могу поставить разные обои для рабочих столов. Нет нормальной прозрачности, xcompmgr и его форки срезают у терминалов рамку.

Плюсы

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

- Перемещение указанных приложений на заданный стол при запуске. Опциональная фокусировка на нужном столе при запуске приложения.

- Скретчпады. То есть я могу повесить на любую клавишу приложение и вызывать его на любом столе по нажатию этой клавиши. И скрывать повторным нажатием. Что-то вроде guake, но не только для консоли и с любой геометрией. Например можно забиндить htop, ncmpcpp, liferea.

Это не всегда удобно — всплывающие окна появляются под скретчпадами. Но возможно это настраиваемо.

- Один большой заголовок. Особенно актуально для браузера.

- Xmonad познакомил меня c dzen (верхняя и нижняя панельки, система уведомлений) и dmenu. Я буду таскать их теперь за собой всюду.

- Если использовать *только* консольные/текстовые приложения — Xmonad идеален. То есть на работу его поставить можно более чем. Особенно если там железо не очень.

Планы

Попробовать openbox + pytyle. Думаю что тайлинг удобен только на определённых рабочих столах, хочу проверить эту теорию.

ksevelyar
()

dzen2 остаётся в фулскрине опенбокса

 ,

Запускаю тот же smplayer в полноэкранном режиме — панельки с dzen2 остаются поверх него.

Как это можно поправить?

ksevelyar
()

Загрузка торрентов в заданную папку на основе url

Собственно задачу можно разбить на две части:

1. Браузер в зависимости от url cохраняет торрент в заданную папку. Например если в url есть *music* сохраняет в /storage/torrents/music.

Для первого пункта буду пробовать https://addons.mozilla.org/en-US/firefox/addon/automatic-save-folder/

2. Качалка торрентов смотрит в определённые директории и, например, закачивает торренты из /storage/torrents/music в /storage/music.

Для второго приспособил rtorrent, но он страшненький и не умеет выхватывать магниты из браузера. Для него есть костыли и обёртки (в частности pyroscope), но мне хотелось бы использовать их в крайнем случае.

Какие ещё качалки умеют смотреть в несколько директорий и работать с магнитами? Это главный вопрос топика.

И да. Если есть другие алгоритмы и прямо из браузера можно передавать торрент с указанием куда качать — хотел бы об этом узнать.

ksevelyar
()

Посоветуйте альтернативу Smplayer

 

Чего мне не хватает в mplayer:

- чтобы добавлял все видео файлы в директории в плейлист
- чтобы запоминал позицию воспроизведения (и желательно дорожки аудио/субтитров)

Я нашёл это в Smplayer, но он мне не нравится.

ksevelyar
()

Smplayer — плохое качество масштабированных субтитров (в mplayer всё ок)

 ,

Если у видео маленькое зазрешение (640*480 например) и я распахиваю его на весь экран — субтитры масштабируются и выглядят ужасно.

При этом если я запускаю обычный mplayer — то всё ок. Подскажите в чём может быть дело.

ksevelyar
()

В чём разница между ручным и динамическим тайлингом?

В ручном по умолчанию все окна всплывающие? И их нужно затайлить вручную?

И заодно интересно узнать у тайлоюзеров какой тип они выбрали для себя и почему.

ksevelyar
()

Посоветуйте какие-нибудь плоские иконпаки в стиле any_color_you_like

 

Что-нибудь аккуратное и минималистичное. Без мерзких попыток вогнать трёхмерную графику в 16х16.

http://gnome-look.org/content/show.php/?content=102435

ksevelyar
()

Изменить цвет нескольких элементов gtk2 темы

Хочу осветлить сетку файлов и не активные вкладки — отметил эти элементы на скриншоте:

http://i.imgur.com/BBZbf.png

Подскажите как.

Сама тема: http://pastebin.com/SS5sCnAP

Если в темах каждый лепит как хочет и ответить на мой вопрос без существенных затрат времени нельзя — дайте ссылку на годное и не очень сложное руководство по gtk2.

ksevelyar
()

rtorrent — max_downloads_global не работает

 

Я хочу чтобы у меня активных закачек было не больше трёх, поэтому выставил опцию max_downloads_global=3, однако она не работает. Сейчас закачиваются 4 торрента.

И внизу экрана [D 4/3]. То есть четыре слота из трёх.

Мой .rtorrent.rc:

### main ###
session   = ~/.rtorrent_session
directory = /storage/tmp

encoding_list = UTF-8

view_sort_current = main,greater=d.get_creation_date= 

### connection ###
port_range = 6789-6789
port_random = no

peer_exchange = yes
use_udp_trackers = yes

encryption = allow_incoming,enable_retry,prefer_plaintext

#dht = auto
#dht.port.set = 2442

### {up,down}loads ###
max_uploads_global   = 10
max_downloads_global = 3

download_rate = 4M
upload_rate   = 500

min_peers = 100
max_peers = 500

min_peers_seed = 10
max_peers_seed = 100

check_hash = yes

### ratio ###
ratio.min.set=100
ratio.max.set=200
ratio.upload.set=30M

system.method.set = group.seeding.ratio.command, d.close=, d.erase=


### shedules ###
schedule = low_diskspace,5,60,close_low_diskspace=10G

schedule = untied_directory,5,5,"remove_untied="

schedule = watch_anime,5,2,"load_start=/storage/torrents/anime/*.torrent,d.set_directory=/storage/anime"
schedule = watch_serials,5,2,"load_start=/storage/torrents/serials/*.torrent,d.set_directory=/storage/serials"
schedule = watch_films,5,2,"load_start=/storage/torrents/films/*.torrent,d.set_directory=/storage/films"
schedule = watch_music,5,2,"load_start=/storage/torrents/music/*.torrent,d.set_directory=/storage/music"
schedule = watch_games,5,2,"load_start=/storage/torrents/games/*.torrent,d.set_directory=/storage/games"
schedule = watch_tmp,5,2,"load_start=/storage/torrents/tmp/*.torrent,d.set_directory=/storage/tmp"

schedule = throttle_down_max,02:00:00,24:00:00,download_rate=6M
schedule = throttle_up_max,02:00:00,24:00:00,upload_rate=1M

schedule = throttle_down,08:00:00,24:00:00,download_rate=5M
schedule = throttle_up,08:00:00,24:00:00,upload_rate=500

### notify ###

system.method.set_key = event.download.finished,notify_me,"execute=~/scripts/dzen_notify.sh,$d.get_name=, completed"
ksevelyar
()

parted не создаёт файловую систему

 ,

Делаю так:

parted /dev/sdb

mklabel gpt

unit TB

mkpart primary ext4 0 2

print
Number  Start   End     Size    File system  Name  Flags
 1      0.00TB  2.00TB  2.00TB

Почему поле «File system» пустое?

Parted не поддерживает ext4?

P.S. И да, я знаю о mkfs.

ksevelyar
()

Всегда запускать dmenu с английской раскладкой

 ,

Как? Может какая консольная команда перед запуском?

Я увидел только дико костыльный способ здесь: http://archlinux.org.ru/forum/viewtopic.php?f=8&t=1588

Может что ещё посоветуете?

ksevelyar
()

Как перенести файлы по сети максимально быстро?

 

На десктопе есть раздел /storage — ntfs, ~800G файлов. Файлы разного размера.

На сервере есть пустой раздел /storage — ext4.

Пытался сделать так:

scp -pr  /storage/* root@192.168.0.1:/storage

Увидел, что скорость скачет от десятков мегабайт, до килобайт. То есть когда scp передаёт мелкие файлики — скорость мизерная.

Видимо он передаёт их по очереди, что и убивает скорость.

Какая утилита даст мне максимальную скорость? Желательно через ssh (не поднимать отдельный сервер вроде Самбы).

ksevelyar
()

Подставить переменную в переменную

 

weather_icon="temp.xbm"
temp_variable="weather"

Теперь если я сделаю так:

echo "${temp_variable}_icon"

То получу «weather_icon», а я хочу «temp.xbm».

На это:

echo $(echo ${${temp_variable}_icon})

Баш ругается, подскажите правильный синтаксис.

ksevelyar
()

Автоматическое монтирование флешек / приводов дисков

 

При этом хочется отключать эти флешки / диски без рута.

В Арчевики есть разные способы, наиболее интересен для меня этот:

Mount under /media; use partition label if present; support user un-mounting

/etc/udev/rules.d/11-media-by-label-with-pmount.rules

KERNEL!=«sd[a-z]*», GOTO=«media_by_label_auto_mount_end»
ACTION==«add», PROGRAM!=«/sbin/blkid %N», GOTO=«media_by_label_auto_mount_end»

# Get label
PROGRAM==«/sbin/blkid -o value -s LABEL %N», ENV{dir_name}=«%c»
# use basename to correctly handle labels such as ../mnt/foo
PROGRAM==«/usr/bin/basename '%E{dir_name}'», ENV{dir_name}=«%c»
ENV{dir_name}=="", ENV{dir_name}=«usbhd-%k»

ACTION==«add», ENV{dir_name}!="", RUN+=«/bin/su tomk -c '/usr/bin/pmount %N %E{dir_name}'»
ACTION==«remove», ENV{dir_name}!="", RUN+=«/bin/su tomk -c '/usr/bin/pumount /media/%E{dir_name}'»
LABEL=«media_by_label_auto_mount_end»



Но категорически не нравится что:

The required username (here tomk) must be hard-coded in the RUN command



Вот как сделать так, чтобы я мог отмонтировать без рута и чтобы не хардкодить свой ник в конфиги.

Там ещё есть «Automounting UDisks Wrappers» — расскажите подробнее о них и какой выбрать, если это то, что мне нужно.

ksevelyar
()

Мерцает обоина, когда открываю/закрываю новые терминалы

 

То есть на долю секунды на месте прямоугльника занимаего терминалом мелькает обоина. Это ужасно раздражает.

Можно это починить?

ksevelyar
()

Как называется этот шрифт?

ksevelyar
()

Скрипт мониторинга скорости сети врёт

 ,

  • Скрипт берёт байты из /proc/net/dev, ждёт секунду.
  • Берёт новые байты из /proc/net/dev
  • Вычитает из новых старые.

Я ожидал увидеть скорость в секунду, но скрипт врёт. Там где curl показывает 5.7mb — скрипт аж 6.2mb.

Подозреваю, что (время вычислений) + (1 секунда) по времени забирают больше одной секунды и я получаю скорость за 1.1 секунды, например.

Скрипт можно разнести на две части — (только вычитание) + (обёртка со всем остальным).

В этом случае значения скорости будут писаться в /tmp, а обёртка будет их использовать — таким образом я получу не скорость за 1.1 секунды, а скорость за 1.03 секунду, которая будет обновляться раз в 1.07 секунды.

Как *совсем* избавиться от погрешности, связанной со временем на вычитание?

Скрипт:

#!/bin/bash
 
SLEEP=1

function wrapper_net {
echo $(printf "%04s" $1 | sed "s/ /0/g")
}                
                
interface=eth0
 
get_bytes()
{
    line=$(cat /proc/net/dev | grep $interface | awk '{print "received_bytes="$2, "transmitted_bytes="$10}')
    eval $line
}
 
get_velocity()
{
    vel=$[$1-$2]
    
    if [ $vel -ge 1024 ] && [ $vel -lt 1048576 ] ;
    then
      velKB=$[vel/1024];
      echo "$(wrapper_net $velKB)K";
    elif [ $vel -ge 1048576 ];
    then
      velMB=$(echo "scale=1; $vel/1048576" | bc)
      echo "$(wrapper_net $velMB)M";
    else
      echo "$(wrapper_net $vel) ";
    fi
}
 
# Gets initial values.
get_bytes
old_received_bytes=$received_bytes
old_transmitted_bytes=$transmitted_bytes
 
# Loop
while :; do

get_bytes
 
vel_recv=$(get_velocity $received_bytes $old_received_bytes)
vel_trans=$(get_velocity $transmitted_bytes $old_transmitted_bytes)
 
old_received_bytes=$received_bytes
old_transmitted_bytes=$transmitted_bytes

echo -en "$vel_recv\t  $vel_trans\r"

sleep $SLEEP; done
ksevelyar
()

Мягкая альтернатива halt

 

«sudo halt» и Линукс выключается сразу, но закрывает все открытые программы без милосердия.

Везде пропадают сесии, ну разве что Лиса предлагает восстановить вкладки открытые в прошлый раз.

Какая команда будет сначала посылать всем программам сигнал завершения, перед тем выключить рубильник?

ksevelyar
()

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