index.html+inotify+xattr

Идея в том, чтобы использвать прикол Konqueror'а насчет index.html (мену "Вид - использовать index.html"), который формируется по команде inotify из того, что есть в xattr.
Итак:
1. кладем некий катлог файло
2. правая педаль - редактировать xattr
3. прописать по вкусу (category, date, type etc)
4. после записи xattr - intify ловит это дело и из xattr'ов файлов в этом каталоге рисует красивый index.html
это по-тупому. Но уже некое DMS :-)
Нюанс в том, что по-любасику метаданные файла привязаныы прямо непосредственно к самому файлу.
А что с ними делать дальше - вопрос техники.


xattr-редактор уже как бы есть - это или eiciel (gtk... ненавижу gtk), или qxattr (который я на пенсии обязательно допилю).
Но эти штуки редактируют _сырые_ xattr.


Теперь - вторая часть балета:
1. когда кладем файло - inotify ловит это дело, тут же его переименовывает в "123456789" и вешает xattr "originalname=..." - что и светим в index.html;
2. index.html нам показывает не просто уеб-страничко, а сцылки типо file://... - чтобы мы открывали файл как быллокально - сиречь блочно и без всяких download'ов;
3. для болезных (Windows, Gnome) надо как-то прикрутить WebDAV. Я не сильно в курсе, нахрена, но по спецификации WebDAV поддерживает некие "атрибуты" файлов - такие, какие хочет хостер;
4. ну вот, сохранили файло - оно тут же оказалось в index.html, но только с одним атрибутом - OriginalName. И тут начинаеццо цЫрк...
5. поднимаем файло правой педалькой (или уеб-формой?) и заполняем атрибуты (xattr);
6. но - в отличие от - не просто так какие попало и как попало - а регламентировано. Допустим здесь же (в этом каталоге) лежит .index.xschema, в котором прописаны возможные атрибуты, их имена, обязательность, тип, дефаулт etc. Так вот можернизированный xattr-editor поднимает схему этого каталога (а они могут быть разные - для музыки, файлопомойки. техдокументации, рабочей документопомойки etc), и заставляет заполнять только такие атрибуты и только таким образом, как доктор прописал. Т.е здесь уже редактор xattr - контекстно-зависимый.
7. можно даже присобачить суперкнопку "редактировать схему этого каталога" в редакторе xattr.
8. один из атрибутов может быть "связь" - можно связывать файлы по inode. IMHO плоский поиск по одному текущему каталогу будет намного проще, чем find / -inum=...;
9. и вот прописали атрибуты - и тут же inotify пересобачивает index.html. Причем - это ж уеб-страничко! - с кнопками сортировки/фильтра/группировки, с привязкой к возможностям клиента (file://..., webdav://... http://...). можно даже сделать как LFS - один и тот-же файл в разных типа подкаталогах... можно деревце графоподобное... Всё можно! Был бы .template.html :-)
9. если будет плохо - можно засадить некий сервер, который будет держать подгруженными все схемы всех каталогов - тогда редактор xattr будет обращаться только к этому серверу (демону), причем - мгновенно.

PS. IMHO это уже достаточно реальная вещь. Надо попытаться сделать.

Комментариев нет:

Tags