LINUX.ORG.RU

Первые результаты разработки форка

 , ,


3

5

(Для пропустивших, см. обсуждение здесь.)

Что было сделано за неделю:

  • Бинарник разделен на два отдельных приложения: файловый менеджер stuurman и менеджер рабочего стола stuurman-desktop.
  • Ускорено открытие каталогов с большим количеством элементов путём отложенной загрузки mime-типа и иконок файлов. Например, открытие /usr/bin на моей машине на холодном кэше сократилось с 40 до 11 секунд. (На горячем кэше — с полутора до одной секунды.)
  • В меню «Go» добавлена история переходов по каталогам, сохраняющаяся между перезапусками приложения.
  • В stuurman-desktop исправлены глюки при перетаскивании иконок по рабочему столу.
  • Добавлен вращающийся индикатор загрузки каталога. (Раньше при длительных операциях, таких как поиск файлов или открытие медленного ftp, никакой индикации не было.)
  • Исправлено несколько серьезных багов в поисковом движке и диалоге опций поиска, теперь поиск файлов стал юзабельным.
  • Исправлен глюк с открытием контекстного меню каталога по Shift+F10. (Должно открываться контекстное меню выделенных файлов, и только если файлы не выделены — меню каталога.)
  • Добавлена возможность отображения полного пути в заголовке окна.
  • Добавлена возможность настройки, какие пункты отображать в боковой панели. В том числе, добавлены пункты «My Computer» (перечень точек монтирования) и «File System» (переход в корневой каталог).

Пакеты для Арча:
https://aur.archlinux.org/packages/stuurman-git/
https://aur.archlinux.org/packages/stuurman-desktop-git/
https://aur.archlinux.org/packages/libsmfm-git/

Сайта у проекта по-прежнему пока нет. Мы работаем над этим.

Просьба тестировать и слать багрепорты и идеи.

В особенности, в тестировании нуждается механизм поиска (Инструменты -> Поиск файлов). В pcmanfm он был абсолютно неоттестирован, вплоть до наличия критичных багов из-за опечаток в коде. Я вроде самых жирных блох выловил, но наверняка там еще куча глюков осталась.
Но поисковый движок отличный, кстати. Как по возможностям, так и архитектурно.

Составлен примерный роадмап на релиз 1.2. (Продолжаем нумерацию версий, доставшуюся от pcmanfm.)
Это будет промежуточный «нестабильный» релиз: я внесу несколько улучшений юзабилити и производительности и сделаю релиз, чтобы был реальный продукт, который можно тестировать. За это время я подробно ознакомлюсь с архитектурой приложения.

Запланированные существенные переделки архитектуры, которые я описывал в предыдущем треде, будут только в 1.3.

stuurman

я буду называть его «штульман» (созвучно со Столлманом), ок?

собираю, опробую...

Spoofing ★★★★★ ()

Например, открытие /usr/bin на моей машине на холодном кэше сократилось с 40 до 11 секунд.

до Dolphin ещё далеко :D

anonymous ()

.deb'ы будут?

anonymous ()
Ответ на: комментарий от geekless

аххахха, прекрати :)

Dolphin открывает мгновенно

anonymous ()
Ответ на: комментарий от anonymous

Вообще планируются. Зависит от того, случится ли у меня «да ну его нафиг» раньше, чем я адаптирую скрипты сборки deb-ов от pcmanfm.

geekless ★★ ()
Ответ на: комментарий от anonymous

Долфин открывает каталог те же 10 секунд, только еще дополнительно секунд 10-15 тратит на запуск.

Выкини свой i7, поставь B800, потом поставь ноутбучный винт на 5400 rpm, и не забудь про echo 3 > /proc/sys/vm/drop_caches.

geekless ★★ ()
Ответ на: комментарий от geekless

только еще дополнительно секунд 10-15 тратит на запуск

запуск чего? самого себя? ну это вообще facepalm

Выкини свой i7

а может, тебе стоит выкинуть свой арч? потому что я даже в тормозной opensuse не видел, чтобы dolphin ТАК тормозил

anonymous ()
Ответ на: комментарий от anonymous

запуск чего? самого себя? ну это вообще facepalm

Действительно facepalm. Файловый менеджер, который вместе с собой запускает с десяток k*-процессов (которые еще и сами не дохнут после его закрытия), тянет на эталонный фейспальм.

При всех неоспоримых достоинствах долфина в плане эргономики.

я даже в тормозной opensuse не видел, чтобы dolphin ТАК тормозил

Ты просто привык.

geekless ★★ ()

существенные переделки архитектуры

будут только в 1.3.

Может, лучше будет обозвать ее двоечкой?

А сабж интересен, надо потестировать.

buddhist ★★★★★ ()
Ответ на: комментарий от buddhist

Двоечкой я это назову, когда стабилизирую API после переделок.

geekless ★★ ()
Ответ на: комментарий от geekless

Файловый менеджер, который вместе с собой запускает с десяток k*-процессов

ах да, я забыл, ты ж ССЗБ (не пользуешься кедами)

Ты просто привык

привык к чему?

anonymous ()

Ого, приятная новость, удачи в начинаниях!

cinyflo ★★★★★ ()
(1/1) установка libsmfm-git                                        [#####################################] 100%
Дополнительные зависимости для libsmfm-git
    gvfs: To access remote file systems.
    ffmpegthumbnailer: video thumbnails[установлено]
    pdftoppm: pdf thumbnails
    convert: epub thumbnails
    unzip: epub thumbnails[установлено]


yaourt -Ss pdftoppm


Ничего не находит

Taetricus ()
Ответ на: комментарий от Taetricus

pdftoppm

Да черт его знает вообще, что это. В старом PKGBUILD болталось. :}

Вечером посмотрю, при помощи чего оно на самом деле превьюшки pdf генерирует.

geekless ★★ ()

Уверен, что кто-то уже сказал про пакеты для Debian, вот ему плюсую.

Debasher ★★★★★ ()

Фигасе ты вгрызся. Джигит.

thesis ★★★★★ ()

При запуске в корневом каталоге создается каталог Templates. Пока заменил pcmanfm на stuurman если найду баги писать сюда или есть отдельный bug-tracker?

Taetricus ()
Ответ на: комментарий от Taetricus

При запуске в корневом каталоге создается каталог Templates.

Вах, зачем от рута запускаль, а?

Но вообще гляну код. Запрещу автоматически создавать какие-либо каталоги, если они оказываются на первом уровне иерархии.

если найду баги писать сюда или есть отдельный bug-tracker?

Целых три:

https://github.com/geekless/stuurman

https://github.com/geekless/stuurman-desktop

https://github.com/geekless/libsmfm

geekless ★★ ()

А он у вас как и дефолтный падает рандомно при отмонтировании носителя или починили?

anonymous ()
Ответ на: комментарий от anonymous

А он у вас как и дефолтный падает рандомно при отмонтировании носителя или починили?

Багрепорт?

geekless ★★ ()
Ответ на: комментарий от geekless

Фиг его знает...

Но не только у меня...

Например от encyrtid

PCManFM 1.0 + libfm 1.0

Тоже самое...

на 1.1 0.9

Иногда все нормально - а иногда без звука и ругани просто окно пропадает и все...

Обычно с парой флешек если... с одной - не замечал

anonymous ()
Ответ на: комментарий от anonymous

Обычно с парой флешек если... с одной - не замечал

Блин, придётся купить вторую флешку и разветвитель usb. :D

geekless ★★ ()

Молодец. Видно, что ты можешь не только языком молоть:)

unikum ★★★★★ ()
Ответ на: комментарий от doraneko

Засунь --disable-silent-rules в PKGBUILD и покажи полную команду вызова компилятора.

geekless ★★ ()

Не знаю, баг ли это, или я что-то не понимаю.
Почему ``размер на диске`` такой большой?

d@deb:~$ du -shc man
5,6G    man

PCManFM 0.9.10

Debasher ★★★★★ ()
Последнее исправление: Debasher (всего исправлений: 1)
Ответ на: комментарий от Debasher

0.9.10

Был там такой баг. Исправили вроде как еще по осени.

geekless ★★ ()

слушай, ты так и не объяснил, что ты имеешь в виду под этим:

Если вкраце, я собираюсь построить документо-ориентированное DE с максимальным использованием IPC (т.е. d-bus). Без ада 100500 зависимостей, но с возможностью комбинировать компоненты GUI настолько просто, насколько просто комбинируются консольные команды.

можешь развернуть идею?

anonymous ()

Для пропустивших, см. обсуждение здесь

Добавь и туда тег stuurman, с радостью подпишусь. Попробую написать ebuild'ы, в чем я пока новичок.

iVS ★★★★★ ()
Последнее исправление: iVS (всего исправлений: 1)

stuurman-git не собирается.

app-config.c:26:28: fatal error: libsmfm/fm-gtk.h: No such file or directory
 #include <libsmfm/fm-gtk.h>
                            ^
compilation terminated.
make[2]: *** [stuurman-app-config.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from overall-nav-history.c:26:0:
overall-nav-history.h:25:24: fatal error: libsmfm/fm.h: No such file or directory
 #include <libsmfm/fm.h>
                        ^
compilation terminated.
make[2]: *** [stuurman-overall-nav-history.o] Error 1
tab-page.c:24:28: fatal error: libsmfm/fm-gtk.h: No such file or directory
 #include <libsmfm/fm-gtk.h>
                            ^
compilation terminated.
make[2]: *** [stuurman-tab-page.o] Error 1
In file included from main-win.c:34:0:
pcmanfm.h:26:24: fatal error: libsmfm/fm.h: No such file or directory
 #include <libsmfm/fm.h>
                        ^
compilation terminated.
make[2]: *** [stuurman-main-win.o] Error 1
pcmanfm.c:39:28: fatal error: libsmfm/fm-gtk.h: No such file or directory
 #include <libsmfm/fm-gtk.h>
                            ^
compilation terminated.

Наверное из-за того, что

[v@t430s]$ ll /usr/include/libsm*   
/usr/include/libsmfm:
total 36K
drwxr-xr-x   2 root root 4.0K 2013-05-12 18:38 ./
drwxr-xr-x 364 root root  28K 2013-05-12 18:38 ../
lrwxrwxrwx   1 root root   11 2013-05-12 18:38 libsmfm-1.0 -> libsmfm-1.0

/usr/include/libsmfm-1.0:
total 340K
drwxr-xr-x   2 root root 4.0K 2013-05-12 18:38 ./
drwxr-xr-x 364 root root  28K 2013-05-12 18:38 ../
-rw-r--r--   1 root root 2.9K 2013-05-12 18:38 fm-app-chooser-combo-box.h
-rw-r--r--   1 root root 1.4K 2013-05-12 18:38 fm-app-chooser-dlg.h
-rw-r--r--   1 root root 1.8K 2013-05-12 18:38 fm-app-info.h
-rw-r--r--   1 root root 1.5K 2013-05-12 18:38 fm-app-menu-view.h
-rw-r--r--   1 root root 2.4K 2013-05-12 18:38 fm-archiver.h
-rw-r--r--   1 root root 3.1K 2013-05-12 18:38 fm-bookmarks.h
-rw-r--r--   1 root root 2.3K 2013-05-12 18:38 fm-cell-renderer-pixbuf.h
-rw-r--r--   1 root root 2.2K 2013-05-12 18:38 fm-cell-renderer-text.h
-rw-r--r--   1 root root 1.5K 2013-05-12 18:38 fm-clipboard.h
-rw-r--r--   1 root root 7.0K 2013-05-12 18:38 fm-config.h
-rw-r--r--   1 root root 3.4K 2013-05-12 18:38 fm-deep-count-job.h
-rw-r--r--   1 root root 3.2K 2013-05-12 18:38 fm-dir-list-job.h
-rw-r--r--   1 root root 4.2K 2013-05-12 18:38 fm-dir-tree-model.h
-rw-r--r--   1 root root 2.7K 2013-05-12 18:38 fm-dir-tree-view.h
-rw-r--r--   1 root root 1.3K 2013-05-12 18:38 fm-dnd-auto-scroll.h
-rw-r--r--   1 root root 5.0K 2013-05-12 18:38 fm-dnd-dest.h
-rw-r--r--   1 root root 3.3K 2013-05-12 18:38 fm-dnd-src.h
-rw-r--r--   1 root root 1.9K 2013-05-12 18:38 fm-dummy-monitor.h
-rw-r--r--   1 root root 2.7K 2013-05-12 18:38 fm-file.h
-rw-r--r--   1 root root 6.6K 2013-05-12 18:38 fm-file-info.h
-rw-r--r--   1 root root 3.6K 2013-05-12 18:38 fm-file-info-job.h
-rw-r--r--   1 root root 3.0K 2013-05-12 18:38 fm-file-launcher.h
-rw-r--r--   1 root root 1.9K 2013-05-12 18:38 fm-file-menu.h
-rw-r--r--   1 root root 1.3K 2013-05-12 18:38 fm-file-ops-job-change-attr.h
-rw-r--r--   1 root root 1.5K 2013-05-12 18:38 fm-file-ops-job-delete.h
-rw-r--r--   1 root root 5.2K 2013-05-12 18:38 fm-file-ops-job.h
-rw-r--r--   1 root root 1.4K 2013-05-12 18:38 fm-file-ops-job-xfer.h
-rw-r--r--   1 root root 2.9K 2013-05-12 18:38 fm-file-properties.h
-rw-r--r--   1 root root 4.1K 2013-05-12 18:38 fm-folder.h
-rw-r--r--   1 root root 7.4K 2013-05-12 18:38 fm-folder-model.h
-rw-r--r--   1 root root 9.9K 2013-05-12 18:38 fm-folder-view.h
-rw-r--r--   1 root root 2.0K 2013-05-12 18:38 fm-gtk-file-launcher.h
-rw-r--r--   1 root root 1.9K 2013-05-12 18:38 fm-gtk.h
-rw-r--r--   1 root root 1.4K 2013-05-12 18:38 fm-gtk-marshal.h
-rw-r--r--   1 root root 4.7K 2013-05-12 18:38 fm-gtk-utils.h
-rw-r--r--   1 root root 2.2K 2013-05-12 18:38 fm.h
-rw-r--r--   1 root root 2.5K 2013-05-12 18:38 fm-icon.h
-rw-r--r--   1 root root 1.2K 2013-05-12 18:38 fm-icon-pixbuf.h
-rw-r--r--   1 root root 8.4K 2013-05-12 18:38 fm-job.h
-rw-r--r--   1 root root 6.6K 2013-05-12 18:38 fm-list.h
-rw-r--r--   1 root root 2.1K 2013-05-12 18:38 fm-marshal.h
-rw-r--r--   1 root root 2.5K 2013-05-12 18:38 fm-mime-type.h
-rw-r--r--   1 root root 1.3K 2013-05-12 18:38 fm-monitor.h
-rw-r--r--   1 root root 3.5K 2013-05-12 18:38 fm-nav-history.h
-rw-r--r--   1 root root 2.7K 2013-05-12 18:38 fm-path-bar.h
-rw-r--r--   1 root root 2.0K 2013-05-12 18:38 fm-path-entry.h
-rw-r--r--   1 root root 6.1K 2013-05-12 18:38 fm-path.h
-rw-r--r--   1 root root 4.2K 2013-05-12 18:38 fm-places-model.h
-rw-r--r--   1 root root 2.4K 2013-05-12 18:38 fm-places-view.h
-rw-r--r--   1 root root 1.5K 2013-05-12 18:38 fm-progress-dlg.h
-rw-r--r--   1 root root 3.2K 2013-05-12 18:38 fm-side-pane.h
-rw-r--r--   1 root root 1.5K 2013-05-12 18:38 fm-simple-job.h
-rw-r--r--   1 root root 1.9K 2013-05-12 18:38 fm-sortable.h
-rw-r--r--   1 root root 2.8K 2013-05-12 18:38 fm-standard-view.h
-rw-r--r--   1 root root 2.0K 2013-05-12 18:38 fm-tab-label.h
-rw-r--r--   1 root root 2.0K 2013-05-12 18:38 fm-templates.h
-rw-r--r--   1 root root 2.6K 2013-05-12 18:38 fm-terminal.h
-rw-r--r--   1 root root 2.0K 2013-05-12 18:38 fm-thumbnailer.h
-rw-r--r--   1 root root 2.2K 2013-05-12 18:38 fm-thumbnail.h
-rw-r--r--   1 root root 3.7K 2013-05-12 18:38 fm-thumbnail-loader.h
-rw-r--r--   1 root root 2.4K 2013-05-12 18:38 fm-utils.h

[v@t430s]$ file /usr/include/libsmfm/libsmfm-1.0
/usr/include/libsmfm/libsmfm-1.0: broken symbolic link to `libsmfm-1.0'

Собирал PKGBUILD'ы из AUR.

kernelpanic ★★★★★ ()
Ответ на: комментарий от geekless

3 секунды на запуск без кэшей ядра, от долей секунды до 2 на /usr/bin, в зависимости от загруженности IO. Это справедливости ради. Скрины форка можно посмотреть где-нибудь? Дерево подкаталогов, как в dolphin, есть?

wakuwaku ★★★★ ()
Ответ на: комментарий от kernelpanic

Ну в общем-то, понятно, что происходит. ВОт такой код должен удалять пустой каталог и создавать симлинк:

install-data-local:
	@if test -e "$(DESTDIR)$(includedir)/@PACKAGE@"; then \
		echo rm -rf "$(DESTDIR)$(includedir)/@PACKAGE@"; \
		rm -rf "$(DESTDIR)$(includedir)/@PACKAGE@"; \
	fi
	test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
	@LN_S@ @PACKAGE@-@FMLIBVER@ "$(DESTDIR)$(includedir)/@PACKAGE@"

Но если мы используем распараллеливание, возникает гонка, и каталог может создасться как раз в тот момент, когда туда должен писаться симлинк.

Попробовал пофиксить вслепую. Проверь.

geekless ★★ ()
Ответ на: комментарий от geekless

Спасибо. Очень давно не пользуюсь pcmanfm, хотелось посмотреть, на что оно похоже.

wakuwaku ★★★★ ()

Знаю, что ты не котируешь удаление настроек, но я не вижу смысла указывать эмулятор терминала: предпочтение пользователя можно узнать из настроек DE или настроек системы. Возможно, это относится и к команде переключения пользователей с архиватором.

anonymous ()
Ответ на: комментарий от anonymous

предпочтение пользователя можно узнать из настроек DE или настроек системы.

Как?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.