Доступен второй выпуск torrent-клиента distribyted, позволяющего обращаться к содержимому торрентов как к части файловой системы с загрузкой данных по мере необходимости. Код проекта написан на языке Go и распространяется под лицензией GPLv3. Для привязки к ФС используется подсистема FUSE. Сборки подготовлены для Linux (x86_64 и ARM7) и Windows...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=53968
Был дрист, теперь жо.
Быстрый поиск по github и вот: https://github.com/johang/btfs
Вот заметка на opennet'е: https://www.opennet.dev/tips/info/2943.shtml
Синдром поттеринга?
Пусть будет, вам жалко что ли? Вдруг народ изобретет какую нить TorrentCEPH
У сабжа я вижу собранные пакеты. У btfs только исходники, хотя проекту уже 5 лет. Для пощупать технологию выбор очевиден.
В генте есть давно ебилды, а пощупать технологию можно вот уже как пять лет.
btfs можно не щупать, а вполне терпимо юзать. Есть там пара фаталити, закопанных по периметру, но если сильно не заморачиваться - то годно.
> btfs можно не щупать, а вполне терпимо юзать.Нельзя, современный юникс-пользователь, опенсорс6рочеp, не умеет собирать софт из исходников.
Ему бинарничек на игогошечке (статический) подавайте. А то так и будет ждать ебилда (и не дождется, потому что у него, естественно, б-жественная бубунточка, и, к сожалению, драйвер fs нельзя завернуть в б-жественный snap)
Плюс там libtorrent 2.0, а они API с 1-й сломали, а далеко не везде обновились уже.
> не умеет собирать софт из исходников.Даже школота умеет, если объяснить как.
>> не умеет собирать софт из исходников.
> Даже школота умеет, если объяснить как.Если объяснения слушать станут, то сумеют, да.
А тут - солидные взрослые состоявшиеся люди. Они объяснений слушать и читать не умеют, а просто валятся на пол и бьются в истерике "нихачю исходники, хачю клик-клик и работаит!"Ну вот, подвезли, чо, наслаждайтесь!
> У сабжа я вижу собранные пакеты. У btfs только исходники, хотя проекту
> уже 5 лет. Для пощупать технологию выбор очевиден.лучше бы были nix-спеки
тогда б выбор для пощупать был бы очевиден
> У btfs только исходникиПакеты
https://packages.debian.org/stable/utils/btfs
https://packages.debian.org/ru/sid/btfs
нодеЖС, гоуно, хаскель... блин, чем бы дети не тешились. Благо сишный FUSE подвезли удачно.btfs на фоне этого счастья выглядит верхом адекватности. Никаких "файлов конфигурации" и "web-интерфейсов", нормальное консольное монтирование, захотел - прицепил, захотел - отцепил.
> Благо сишный FUSE подвезли удачно.хрен тебе, на сишном fuse писать надо уметь - во-первых, документация "неочень", во-вторых - ну просто надо уметь кодить.
Ну вот как автор той же btfs. Небось, несколько лет ушло.
А тут - кода на одну страничку. Пол-странички занимает вот это:
import (
"fmt""github.com/ajnavarro/distribyted/config"
"github.com/ajnavarro/distribyted/fs"
"github.com/ajnavarro/distribyted/stats"
"github.com/anacrolix/torrent"
"github.com/billziss-gh/cgofuse/fuse"
log "github.com/sirupsen/logrus"
)вот предпоследняя строчка и делает за него всю работу (и еще и о кросс-системности заботится)
Ну а предыдущая, собственно, решает и все проблемы торрента (там у кого-то и правда несколько лет ушло, да).Модная, стильная, молодежная разработка. Кучу мусора с гитшлака в хомяк, и я у мамы fs-разработчик.
Собственно, ты так тоже можешь. Кодить уметь, как видим, необязательно. Все уже до тебя накодили.
+++Я о том же. Всё обёртки за него сделали, а результат всё равно адекватным не выглядит :)
>> Благо сишный FUSE подвезли удачно.
> хрен тебе, на сишном fuse писать надо уметь - во-первых, документация "неочень",
> во-вторых - ну просто надо уметь кодить.Зато на Хаскеле не надо уметь, он же ленивый.
getTorrents session = do
torrents <- [CU.block| std::vector<lt::torrent_handle*>*
{
auto *session = $(lt::session *session);
auto torrents = session->get_torrents();
auto handles = new std::vector<lt::torrent_handle*>;
for (auto torrent : torrents) {
handles->push_back(new lt::torrent_handle(std::move(torrent)));
}
return handles;
} |]
> import (
> "fmt"
>
> "github.com/ajnavarro/distribyted/config"
> "github.com/ajnavarro/distribyted/fs"
> "github.com/ajnavarro/distribyted/stats"
> "github.com/anacrolix/torrent"
> "github.com/billziss-gh/cgofuse/fuse"
> log "github.com/sirupsen/logrus"
>)Это "игого бест практис" - по-другому хомячки не умеют.
Вы когда на C++ пишите, вы всё переизобретаете, или всё же ищите уже готовые и качественные решения для отдельных подзадач?
Тогда бы в комментах было: зачем он переписывает то, что уже давно есть, оттестировано и т.п. У него NIH синдром! Ещё ничего, если так хотя бы разные люди жаловались.
> Это "игого бест практис" - по-другому хомячки не умеют.И самое замечательное - они не видят ничего неправильного в том, чтобы тащить за щеку весь гитхлам подряд. Разумеется, кто-то уже где-то что-то майнит, где-то сломали апи нахрен, но им невпервой.
пох, шёл бы ты администрировать свои системы, не лез бы ты в вопросы, в которых как свинья в апельсинах. Ну, реально, ты попробуй подумать головой. Вот что такое FUSE, с точки зрения прикладного программиста? Это ядерный API, который определяет способы коммуникации с ядром -- системные вызовы, структуры данных, и возможно ещё что-то -- я не вникал в детали. Но любой API требует для использования, как минимум, декларации. И что, если пишется FUSE приложение, то оно должно объявлять эти API вручную? А если я сисколлы read/write использую, то я должен вручную писать заглушки с C'шной конвенцией вызова, которые будут дёргать сисколлы ядра? И все эти интересные константы руками объявлять?Нет же, так никто не делает. Даже C'шные программисты при всей их любви к велосипедостроению так не делают. C'шные программисты подключают заголовки libc. libc подключает заголовки ядра.
> пох, шёл бы ты администрировать свои системыя и админю - а поделки таких вот - на пушечный выстрел стараюсь не пропускать.
> вопросы, в которых как свинья в апельсинах
боюсь, это к тебе относится.
> подумать головой. Вот что такое FUSE, с точки зрения прикладного программиста?
К чему этот поток сознания?
> Нет же, так никто не делает. Даже C'шные программисты при всей их
> любви к велосипедостроению так не делают. C'шные программисты подключают заголовки libc.сишные программисты не скачивают эти заголовки вместе с libc (которая, кстати, часть системы и прошла хоть какой-то аудит) прямо в момент сборки программы, из заведомо недоверенного источника. Вместе с еще гигабайтом зависимостей зависимостей, которые никто никогда даже не открывал.
А программистов-на-баше за недостаточно хорошо спрятанный внутрь кода curl | sudo sh - - почему-то порют.
А когда они себя называют программистами - так над ними просто ржут. Хотя вроде все правильно делали - использовали готовое, не из баша же ядерные апи дергать, на самом деле?
И вот, смотри, смотри - "драйвер vfs". Ну, правда, для mc, а не общесистемный, но если из mc не выходить - от настоящей не отличишь.
>> Нет же, так никто не делает. Даже C'шные программисты при всей их
>> любви к велосипедостроению так не делают. C'шные программисты подключают заголовки libc.
> сишные программисты не скачивают эти заголовки вместе с libc (которая, кстати, часть
> системы и прошла хоть какой-то аудит) прямо в момент сборки программы,
> из заведомо недоверенного источника.Вот ты мыслишь как админ, но рассуждаешь о разработке ПО. И ты даже не видишь того, что таким образом ты выходишь за рамки своей квалификации. Ты, небось, при этом, ещё большой специалист с непререкаемым мнением в политике, воспитании подрастающих поколений и футболе, да? Ты в/о получал? Тебя не учили разве тому, чтобы видеть границы своей квалификации?
> Вот ты мыслишь как админ, но рассуждаешь о разработке ПО. И ты даже не видишь того, что таким
> образом ты выходишь за рамки своей квалификации.гордые разработчики думают, что обладают сокровенным знанием.
Вынужден тебя огорчить - не обладаете. Десяток заученных вами нескучных фреймворков, каждый день новых - это еще не знание.
> Ты в/о получал?
Да. И внезапно, не в области гендерных штудий.
>> Вот ты мыслишь как админ, но рассуждаешь о разработке ПО. И ты даже не видишь того, что таким
>> образом ты выходишь за рамки своей квалификации.
> гордые разработчики думают, что обладают сокровенным знанием.Речь не о знаниях. Знания -- это то, что при необходимости вынимается из документации или других источников.
>> Ты в/о получал?
> Да. И внезапно, не в области гендерных штудий.Ну, видимо, получая это образования, ты его не получил. Возможно, ты получил какие-то знания, но не образование.
Я так и думал, знаний у современных-модных тоже нет. Синтаксис нескучных язычков на ходу в гугле ищут.> Ну, видимо, получая это образования, ты его не получил. Возможно, ты получил какие-то знания, но
> не образование.Не дошло. Разжевываю: я потом еще довольно долго работал по специальности.
Программистом.Так что заливать мне про особую, доступную только "разработчикам" магию бесполезно, я все равно не поверю.
> Я так и думал, знаний у современных-модных тоже нет.У меня отец был инженером, ещё в совковые времена. И он говорил о том, что суть инженерного образования заключается не в знаниях, а в умении эти знания нарыть в справочниках и прочих библиотеках. И именно это я вижу сегодня в программировании. Так что я не думаю, что современность чем-то принципиально отличается от прошлого.
>> Ну, видимо, получая это образования, ты его не получил. Возможно, ты получил какие-то знания, но
>> не образование.
> Не дошло. Разжевываю: я потом еще довольно долго работал по специальности.
> Программистом.И чё с того? Ты сам тут всячески декларируешь мнение о том, что разработчики тупы и ничего не понимают. Если это так и ты был в их числе, то разве это делает тебя чем-то лучше? Или ты думаешь, что если ты окунулся в какую-то группу, то ты понял мышление? Неа, это не так. Можно долго общаться с математиками и не понять того, какими особенностями обладает их мышление. Когда я учился на математика и мне по четыре пары в день мозги компостировали математикой, я понял (точнее "понял" не то слово, скорее "почувствовал") в чём собственно особенности математического мышления где-то в середине третьего курса. С психологическим образованием вышло чуть быстрее, я к концу второго курса почувствовал, что я начал мыслить иначе. Программерское мышление довольно близко к математическому -- это тоже выстраивание систем информационной природы, -- хотя и отличается несколько в силу того, что если математик работает с идеальными конструкциями, программист всё же ближе к реальности.
Истинно говорю тебе -- ты демонстрируешь здесь мышление сервисного инженера. (И знания, показывающие специализацию в администрировании софтварных систем.) То есть инженера, который может обслуживать систему. Может быть собрать систему из готовых кубиков. Подпереть костылями, если что пошло не так. Ни на что другое твоё мышление не годится. Да, такого мышления может быть достаточно для решения каких-то задач из сферы программирования. Но ведь и способ мышления программиста позволит ему успешно решать какие-то задачи сервисного инженера -- это ведь не делает программиста хорошим сервисным инженером?
> Так что заливать мне про особую, доступную только "разработчикам" магию бесполезно, я
> все равно не поверю.Не верь -- это твоё дело. Но не жди при этом, что тебя будут серьёзно воспринимать разработчики.
И на что бухтим? В переиспользовагии вся суть вменяемой разработки софта с момента появления понятия "библиотека". Может вам на любую локальную утилитку новую операционку писать?
Если ваш аргумент в том, что надо всё всегда писать с нуля, то как-то очень тяжело с вами согласиться.
А зачем вообще это нужно? Какую такую проблему это решает?
Чем тебе пример с Jupyter Notebook и набором данных не понравился ?
Наверно, в новости слишком много текста для него.
Использование данных до их полного скачивания
Аниме смотреть не скачивая полностью ( ͡° ͜ʖ ͡°)
качается быстрее, чем ты успеваешь смотреть
Boku no piko, рекомендую, отличное аниме
Почитал на вики, "Сётакон (яп. ショタコン) — жанр в манге и аниме, изображающий романтические и сексуальные отношения с участием маленьких мальчиков..."А вы не педофил часом?
> А вы не педофил часом?В Японии согласие - с 13 лет, у арабов вообще 0+
Проблему "как не быть приличным сидом", насколько я понимаю. Наборы данных - редкость, а вот скачать фильм только когда смотришь, посмотреть, удалить и не сидеть на раздаче - основной юз-кейс.
> Проблему "как не быть приличным сидом", насколько я понимаю. Наборы данных -
> редкость, а вот скачать фильм только когда смотришь, посмотреть, удалить и
> не сидеть на раздаче - основной юз-кейс.а если бы фильм раздавали через ipfs, то его блоки в кеше так и лежали бы и раздавались (пока не пнули бы очистку)
Проблема в том, что блоки воображаемых друзей - лежат в воображаемом кэше. Поэтому посмотреть можно только воображаемый фильм.
> Проблема в том, что блоки воображаемых друзей - лежат в воображаемом кэше.
> Поэтому посмотреть можно только воображаемый фильм.яснее выражаться можете?
>> Проблема в том, что блоки воображаемых друзей - лежат в воображаемом кэше.
>> Поэтому посмотреть можно только воображаемый фильм.
> яснее выражаться можете?Ты феноменально т-пой? У твоей васянfs целых пять пользователелей - ты и еще четыре твоих воображаемых друга. Ни раздавать, ни скачивать нечего и не у кого. Они воображаемые, и существуют только в твоей фантазии. И так и останется, потому что никому, на самом деле, столь ненадежное хранилище, требующее нетривиальных прихлопов и притопов, нафиг не уперлось.
А реальный пипл как качал торрентосики, так и будет. Ну, пока всех не переловят. Но, кстати, пока борьба идет на равных, на одного изловленного сотня обучается пользоваться платными анонимными vpn и т.п. - на мой век торрентов явно хватит.
>[оверквотинг удален]
>> яснее выражаться можете?
> Ты феноменально т-пой? У твоей васянfs целых пять пользователелей - ты и
> еще четыре твоих воображаемых друга. Ни раздавать, ни скачивать нечего и
> не у кого. Они воображаемые, и существуют только в твоей фантазии.
> И так и останется, потому что никому, на самом деле, столь
> ненадежное хранилище, требующее нетривиальных прихлопов и притопов, нафиг не уперлось.
> А реальный пипл как качал торрентосики, так и будет. Ну, пока всех
> не переловят. Но, кстати, пока борьба идет на равных, на одного
> изловленного сотня обучается пользоваться платными анонимными vpn и т.п. - на
> мой век торрентов явно хватит.простите, а чем торрент-фс отличается от ipfs кроме неудобств: отсутствия днс и необходимости руками обновлять torrent-файл при изменениях?
почему же там мои воображаемые друзья и скачивают и раздают успешно а в ipfs не будут/не смогут?
> простите, а чем торрент-фс отличается от ipfsда тем что он реальный торрент пользует - которых тьма, невоображаемых. С невоображаемыми сидерами.
В остальном - нафиг ненужно что то, что другое.
transmission/mTorrent should be enough for ever. Свою задачу они прекрасно выполняют.
Ничерта не понял))> загрузка будет производиться по мере обращения к файлам из программ и только тех частей, что запрошены
Клик на послушать_посмотреть - а тебе йух в ответ?
> встроенный web-интерфейс
Модно-молодежно, т. е. в консоль не умеет?
Короче, муть кокая-то. Юзаю aria2c, мне хватает.
> Юзаю aria2c, мне хватаетОна монтирует?
Просто ты не очень умный
>Для привязки к ФС используется подсистема FUSE. Сборки подготовлены для Linux (x86_64 и ARM7) и Windows.фьюж использует, так как оно в виндовс работает тогда?
DokanY
> DokanYА вот и не угадал них3ра, winfsp (существенно более вменяема, и, по-моему, заметно быстрее устаревшего уродца докани).
Ну и, разумеется, к ней есть нескучный интерфейс на игогошечке (от непосредственно автора).
А "разработчики" нескучных fs из готовых кубиков ничего такого неспособны - за них все делает игогошечка, а если готового пакета не случилось - ну опаньки.
Раньше такие писали vfs для миднайта, но это было некруто.
> Раньше такие писали vfs для миднайтабррр. еще gnomeVFS вспомните, чтобы совсем.
Я вспомнил, но не стал упоминать - она как раз сложная была, не каждому васяну, кое-как освоившему скриптинг на нескучном язычке, удалось бы даже архив в ней открыть, не говоря уж к торентлибе приделать.
А пользователи "виндовс" знают, что такое торрент?
Его для них и изобрели, первая реализация и по сей день не имеет поддержки Linux.
и кстати если оно торренты как фс монтирует то можно что ли в торрент добавлять и удалять файлы уже после создания, и если нет то какой смысл в работе как с фс?
Например сделал папочки под анимешечки, усортировал, в случае чего - просто перекачать торренты (коллекция готова)
Смысл в том, чтобы сразу же после добавления торрента с фильмом начинать смотреть фильм, не дожидаясь окончания процесса скачивания, то есть как на YouTube, например.
Если ВЫ не в курсе то ЭТО зависит от контейнера, МП4 потоковый и ты можешь смотреть, avi нет и фиг ты его увидишь.
Ну почему же? Вполне себе работало wget и mplayer. Подумаешь, перематывать нельзя было.
Другой вопрос, что сабж умеет скачивать нужные куски файла по запросу, так что даже и перематывать можно будет - хвост скачается одним из первых.
Я не понимаю, зачем это нужно.Нужно расшарить файл? Есть IPFS, тоже на goвне написана.
Нужно скачать файл, уже расшаренный кем-то через toreent? Есть уже дофига решений.
А ля фринет, как я понял, и недостатки всё те же. Разве что меньше "анонимности", но нормально работать это всё равно не будет. Да и кому нужен фринет, когда есть перфект дарк.
Объясните, пожалуйса, Там оно у него каждый файл торрент в отдельной папке? А можно ли копировать сразу несколько папок на основную систему? Коллизии с именами в этом случае решаются автоматом (вдруг одинаковые)?
Ждем монтирования FIDO в файловую систему.
Только после внедрения туда векторной графики и гипертекста.
> Ждем монтирования FIDO в файловую системуКстати, не для фидо, но для емайла в старину лет 20 для фара наваяли плугинчик, с помощью которого письма с поп3-сервера отображались в виде файлов в панели. Не монтирование, конечно, но со стороны немного похоже.
> части файловой системыНу как же без диска С. Не поймут.
Все норм - в виндовой версии есть диск Z: - во всяком случае в виндовой версии того, благодаря чему оно вообще стало возможно.
Правда, афтар, кажется, ниасилил эту часть апи, но я детально не смотрел (может оно как-то прозрачно работает).
Интересная штука
> При помощи distribyted можно организовать доступ локальных мультимедийных проигрывателей к определённым торрентам с видео и музыкой, предварительно не загружая содержимое торрентов - загрузка будет производиться по мере обращения к файлам из программ и только тех частей, что запрошены.Пример. avi не потоковый, плаером ткнул на avi в 4гб, жди ... пока он загрузится !
Сначала загрузятся хедерные-футерные части, потом в нужном порядке по мере просмотра загрузится и остальное.
Другое дело, что если кто-то вовремя не захочет отдать нужный сегмент - будешь сидеть и ждать с замершей картинкой, и без звука. Поэтому применимость для потокового и не очень медиа крайне сомнительна.
А теперь представим 2 процесса которые "хотят" этот торрент и узкий канал.
> А теперь представим 2 процесса которые "хотят" этот торрент и узкий канал.Хоть 10... Они дождутся, но ждать придётся по меркам CPU долго :D
Так не надо отдавать только по запросу же, нужно буферизировать-качать, в надежде, что пользователь не будет постоянно перескакивать с места на место же?
> Пример. avi не потоковый, плаером ткнул на avi в 4гб, жди ... пока он загрузится !Почему-то все ораторы выступают только за идею открытия файлов проигрывателем. И никто не говорит о том, что монтирование даёт возможность скопировать файлы файловым менеджером. А после этого делай с ними что хочешь - хоть в проигрыввателе открывай, хоть удаляй по методу старинной народной забавы "скачал - привалил". :-)
>> Пример. avi не потоковый, плаером ткнул на avi в 4гб, жди ... пока он загрузится !
> Почему-то все ораторы выступают только за идею открытия файлов проигрывателем. И никто
> не говорит о том, что монтирование даёт возможность скопировать файлы файловым
> менеджером. А после этого делай с ними что хочешь - хоть
> в проигрыввателе открывай, хоть удаляй по методу старинной народной забавы "скачал
> - привалил". :-)а зачем их копировать?
>>> Пример. avi не потоковый, плаером ткнул на avi в 4гб, жди ... пока он загрузится !
>> Почему-то все ораторы выступают только за идею открытия файлов проигрывателем. И никто
>> не говорит о том, что монтирование даёт возможность скопировать файлы файловым
>> менеджером. А после этого делай с ними что хочешь - хоть
>> в проигрыввателе открывай, хоть удаляй по методу старинной народной забавы "скачал
>> - привалил". :-)
> а зачем их копировать?Торренты - это же система распространения файлов. Копирование - это как раз операция передачи байтиков из источника в приёмник. :-)
А вообще смысл торентов чтобы качать быстро из кучи мест, а что с сабжем ? 1 раздает, 200 примонтировали но к файлу не обращаются. Откуда будет качаться ?
> А вообще смысл торентов чтобы качать быстро из кучи мест, а что
> с сабжем ? 1 раздает, 200 примонтировали но к файлу не
> обращаются. Откуда будет качаться ?с того одинокого лоха, как обычно же ж - а ты чего ждал? Всегда попытки забивать гвоздь ботинком так заканчиваются.
Сфера применения у этого ненужно, конечно, имеется, только она очень хитро-узенькая. И это же ответ на "200 примонтировали, откуда будет качаться???!!!". Единственная сфера применения этого добра - организация раздачи допустим контента игры прямо по ходу работы таковой. Так уже делает Blizzard в WoW, правда частично, только для второстепенного контента, который можно временно не отрисовывать, потому что если делать полностью - будет феерический лаг при первых обращениях.
забавно читать пачками недоумевающие вопросы "сфера применения этого ненужно".Все больше васянов осваивают незамысловатый интерфейс fuse (тем более что и его не осваивают, а просто используют готовую библиотечку прямо-с-гитхлама, у игогошников это просто).
Сфера применения - "смотрите, смотрите, я у мамы разработчик файловой системы!"
> Сфера применения - "смотрите, смотрите, я у мамы разработчик файловой системы!"Как же это хреново, когда у человека полностью отсутствует воображение и он свои комплексы другим людям приписывает.
Смысл torrent FUSE (не вдаваясь в конкретную реализацию) очень простой. Существенное упрощение просмотра видео через торрент. Вам может показаться это бесполезным, но вспомните popcorn time. Он вообще ничего нового не делает, смотреть видео с торрентов можно было давным давно, но стал весьма популярным.
Соответственно torrent FUSE - это инструмент для создания аналога popcorn time для какой-нибудь медиакоробки. Осталось только прикрутить парсинг RSS, проигрыватель видео уже есть, и можно даже самому тупому и далёкому от IT пользователю дать возможность смотреть торренты.
> Существенное упрощение просмотра видео через торрент.для ди6илов уровня разработчика? У меня нет никакой проблемы с просмотром видео через торрент - скачал и посмотрел, удалил (мало ли что там товарищмайору померещится).
И мне не надо "прописывать торрент в конфиг" (мама, что это было?!) - причем у поделки есть нескучный веб-интерфейс, но он не умеет в .torrent - это автор сделает в следующую неделю, если каникулы продлят.popcorn time это плейер, блжад. Причем плейер, который в курсе некоторых особенностей источника, поэтому в нем попытались смягчить проблему "все повисло и ничего не показывает,потому что этого куска не отдают". Но плейер даже на игогошечке написать - это кодить надо немножко уметь, из готовых частей его посложнее будет собрать.
А у тебя плейер в uninterruptible sleep - его даже прибить нельзя, он блок с "диска" ждет, наивный.Про "добавление в конфиг" уже промолчу, очень наглядно и удобно.
Обычная васянско-студенческая поделка. Даже на курсовик не тянет.
К сожалению, уровень новостей опеннета последнее время скатился ниже плинтуса.
> popcorn time это плейер, блжадМожет быть вы слышали про такое понятие как unix way? Когда сложные задачи разбиваются на более простые и решаются отдельными приложениями? Сами по себе fuse редко бывают полезными, а вот для взаимодействия со сторонними программами - очень хороши. Например, avfs (и десяток более поздних реализаций) позволяет ходить по архивам как по файловой системе и упрощает написание файловых менеджеров. Так и torrent FUSE упрощает написание плееров навроде kodi.
> Может быть вы слышали про такое понятие как unix way? Когда сложные
> задачи разбиваются на более простые и решаются отдельными приложениями?Именно так, и вот поэтому это игогошечное поделие из него и палок просто не нужно.
btfs + плеер решит эту задачу куда более юниксвейно.
Мляяя... зачем я туда полез?ВОТ о чем новости на опеннете не будет:
https://github.com/billziss-gh/winfuse (не открывайте эту ссылку!)а жаль, представляю сколько было бы вони. (хотя все как вы любите - опенсосие, AGPLv3, встолман не то что одобряэ, а бурно аплодирует стоя)
Вот это - настоящая разработка, а не я у мамы нашел учебник про игогошечку и накачал полный гитхаб готовых модулей себе в хомяк.
Ну так это кого надо разработка.
P.S. но wsl1, естественно. Такого ли в3нд3к@пеца мы ждали?
Да, именно так хозяин тундры и выглядит. Сначала OSR перестала рассылать журналы, теперь архитектор из M$ даром раздаёт FSD. Поезд ушёл, ныне можно на диалекте баша разрабатывать исключительно автономную™ ОС.
Посмотрел ссылку. Увидел толковые, осмысленные диаграммы и описание работы.
А теперь почитайте вот тут https://www.osr.com/seminars/minifilters/
сколько посмотреть на такие диаграммы обычно стоит (да-да, за 6 недель предоплаты можно получить 10% скидочку)
> А теперь почитайте вот тут https://www.osr.com/seminars/minifilters/
> сколько посмотреть на такие диаграммы обычно стоит (да-да, за 6 недель предоплаты
> можно получить 10% скидочку)а вывод то какой?
У каждого свой.
> Посмотрел ссылку. Увидел толковые, осмысленные диаграммы и описание работы.А что оно делает - конечно не понял? Вот и хорошо.
А вот это уже классика.History
By a rather strange coincidence the LxDK was originally developed a week or two prior to Microsoft's announcement that WSL1 was being superseded by WSL2. After Microsoft's announcement (early May 2019) my interest in this project diminished and it was abandoned for a while.
> А вот это уже классика.оно с wsl2 работать вряд ли и сможет, не только из-за lxdk.
Я надеюсь, ты-то не картинки в презентации разглядывал, а понял, что это и для чего? Но, собственно, ПОКА wsl2 включается-то нетривиальным танцем с граблями и паверщелью, а wsl1 даже при этом и не отключается - вполне можно пользоваться, кому надо. Заодно и померять потери в таком бутерброде.Эх, жаль что мне в пень не нужна десяточка, а нужна семерка. А для нее придется все же свой порт городить, а не готовой халявой, как некоторые кодерки-на-игого пользоваться :-(
При том что я не понимаю даже с какого конца браться за эту безнадежную затею...
>> А вот это уже классика.
> оно с wsl2 работать вряд ли и сможет, не только из-за lxdk.
> Я надеюсь, ты-то не картинки в презентации разглядывал, а понял, что это
> и для чего?Это -- что бы годы опыта и не пропали по прихоти левой пятки кого-то из топ-менеджеров MS, внезапно сменившего ветку. Потому он вернулся к проекту и открыл его, хоть так спасти. Спасибо M$ за вклад в опенсорс! ;)
> Но, собственно, ПОКА wsl2 включается-то нетривиальным танцем с
> граблями и паверщелью, а wsl1 даже при этом и не отключается
> - вполне можно пользоваться, кому надо.Вопрос в том, как долго.
> Заодно и померять потери в
> таком бутерброде.
> Эх, жаль что мне в пень не нужна десяточка, а нужна семерка.
> А для нее придется все же свой порт городить, а не
> готовой халявой, как некоторые кодерки-на-игого пользоваться :-(
> При том что я не понимаю даже с какого конца браться за
> эту безнадежную затею...С Уолтера Они же. Правда, там немножко не про это. Зато как раз через полгода на OSR подойдёт очередь семинаров, уже будет понятно, что они там говорят. Но я бы не вкладывался. M$ подпускает к священной корове и даже разрешает немножко её подоить, но глаза при этом обязательно должны быть завязаны. А с учётом последних тенденций не ясно, какой у той коровы биологический гендер.
> Это -- что бы годы опыта и не пропалинет. Автор, если ты не в курсе, уже десять лет пиццей на вынос торгует. С пивасом.
А для хобби страдает вот такой фигней.Для тех кто так и ниасилил понять элементарное - это возможность задешево видеть виндой любые файловые системы, которые умеет монтировать fuse. Без портирования - fuse userland работает в wsl и думает что это линух. Винда думает что это native fs с необычным таким драйвером. Ну и в обратную сторону тоже.
>> - вполне можно пользоваться, кому надо.
> Вопрос в том, как долго.это в любом случае решение сиюминутной проблемы - пока вот пилишь нормальный порт.
> С Уолтера Они же.
там совсем не про это (драйвер за меня уже написали). Банально - есть проект. линyпсонли. Большой, по одному файлику не натаскаешься. Собирается cmake. Что и с какого конца ковырять, чтобы (для начала!) оно начало собираться на винде (с несовместимым api будем потом разбираться - вполне может быть что не так уж и несовместимо)? В идеале - VC.
Я нихрена не умею пользоваться ни тем, ни другим, и учиться, что характерно, не хочу, мне нужно на один раз, а не потерять годы на ненужные знания чтоб потом за пять минут долететь.
>> Это -- что бы годы опыта и не пропали
> нет. Автор, если ты не в курсе, уже десять лет пиццей на
> вынос торгует. С пивасом.
> А для хобби страдает вот такой фигней.Нет, не в курсе. Поинтересовался, вроде как картами торгует. Навигационными. Для Макос, Андроид, а вот Уиндус в списке нет. Может ему как раз fuse не хватало для полного счастья.
> Для тех кто так и ниасилил понять элементарное - это возможность задешево
> видеть виндой любые файловые системы, которые умеет монтировать fuse. Без портирования
> - fuse userland работает в wsl и думает что это линух.
> Винда думает что это native fs с необычным таким драйвером. Ну
> и в обратную сторону тоже.Задёшево - это хуком ntdll.dll. Detours и на пузо барабан. FSD это дорого. Тут просто выложили нахаляву.
>>> - вполне можно пользоваться, кому надо.
>> Вопрос в том, как долго.
> это в любом случае решение сиюминутной проблемы - пока вот пилишь нормальный
> порт.
>> С Уолтера Они же.
> там совсем не про это (драйвер за меня уже написали).Драйвер для 10ки на 7ке?)
>> там совсем не про это (драйвер за меня уже написали).
> Драйвер для 10ки на 7ке?)тот самый winfsp
он и на семерке работает.осталось мелочь - взять и пересобрать тонну мертвого линyпсонли-кода в вендепоганой. Причем с линком к winfsp, а не эмулятором эмулятора. Трогать его при этом не стоит, он хрупкий.
>>> там совсем не про это (драйвер за меня уже написали).
>> Драйвер для 10ки на 7ке?)
> тот самый winfsp
> он и на семерке работает.Надо же как я облажался. Точно, у winfsp так и написано: Windows 7 Enterprise
Где же вчера я видел 10 only? А, вчера была ссылка на другой драйвер: https://github.com/billziss-gh/winfuse
и там далее https://github.com/billziss-gh/lxdk с This release has been tested on Windows 1809 (10.0.17763.379) and Windows 1909 (10.0.18363.418). It will likely not work with versions earlier than 1809, but it should work with in-between and later versions.
а в https://github.com/billziss-gh/winfuse/blob/master/build/VSt...
<TargetVersion>Windows10</TargetVersion>
ну, я не знаю, что это значит, никогда не собирал драйвера Студией, наверное, фигня какая-то.
winfuse это совершенно для других целей - он, на минуточку, без wsl1 бесполезен, чем он управлять-то будет и какая тебе еще семерка?!Так что там все правильно. Мне этот вариант не светит, ну и в любом случае вряд ли получилось бы хорошо, это разовая затычка для совсем уж срочной разовой задачи, для которой нет при этом нормальных решений или они еще хуже.
Таки что - есть у кого опыт сборки студией cmake+linuxonly поделок? Обычный userspace.
Тот же winfsp той же студией собирается методом "запустил, оно спросило "чо склонировать с гитхапа", собралось молча" - без малейшего моего понимания, что там и как произошло под капотом и как самому что-то подобное сделать.
> winfuse это совершенно для других целей - он, на минуточку, без wsl1
> бесполезен, чем он управлять-то будет и какая тебе еще семерка?!Вот я и спросил. Ведь исходно https://www.opennet.dev/openforum/vsluhforumID3/122223.html#41
речь шла именно о winfuse.
Это я просто случайно туда забрел - пошел посмотреть, откуда ж это берутся fuse-интерфейсы для игого, аааа, ну да, это ж автор winfsp, а это что тут у него появилось? ... учительница русского языка, впервые прыгнувшая с парашутом, была потрясена, удивлена, обескуражена, но вслух произнесла нечто совсем другое.Но в моей борьбе не поможет. Просто "Вау, ТАК можно было".
>> Посмотрел ссылку. Увидел толковые, осмысленные диаграммы и описание работы.
> А что оно делает - конечно не понял? Вот и хорошо.Понял, делов-то.
Ещё лучше, что я выиграл деньги, поставив на то, что "пох" испустит в ответ ядовитое и никому не нужное замечание.
>загрузка будет производиться по мере обращения к файлам и только тех частей, что запрошены.Кто проверял? Реально лишние файлы не качаются? Или мусор как во всех остальных торрент-клиентах?
>>загрузка будет производиться по мере обращения к файлам и только тех частей, что запрошены.
> Кто проверял? Реально лишние файлы не качаются? Или мусор как во всех
> остальных торрент-клиентах?даже не проверяя я скажу, что куски файлов, соседних с выбраным файлом, будут качаться
это свойство протокола torrent v1 (в v2 это пофиксили вроде бы)
> Поддерживается преобразование некоторых форматов в форму файлов и каталогов. На текущем этапе разработки поддерживается трансляция содержимого архивов zipя бы хотел, чтоб он многодорожечные блюреи преобразовывал в папку с отдельными файлами-дорожками звук, видео, мета
Забавляют комментарии про "жо, дрист и прочие". Откуда вы лезете? Какая разница, на чем писать код? Если вы так (наглухо отбиты) прибиты гвоздями к Си со своих институтиков, то это сугубо ваши половые проблемы.
Действительно, нет ведь никакой разницы между однострочниками на баше и файловыми системами.
Я удивлён, что многие считают, что эта штука не нужна и даже сам хотел такое написать, но оказывается оно уже есть. Мне казалось, что этого вот прямо не хватает, что это киллер-фича и идея на миллион пользователей :)Во многом вне зависимости от типа загружаемых файлов это позволит пользоваться загруженным почти сразу, а не ждать загрузки, что удобно и многие люди именно по этой причине смотрят кино "онлайн".
Клиент должен уметь вести себя так, будто нужные части уже были загружены, даже вместо явного монтирования, то есть конечным результатом является просто директория с загруженным торрентом и он будет загружаться оптимальным для сети способом, пока его части не были затребованы вне очереди.
Фильмы-музыка всё равно достаточно последовательны, а также это позволит играть в игры прямо сразу и запускать программы из странного torrent/vfs/opt репозитария.
Интересно, насколько сильно это будет тормозить и сильный ли вред для сети, учитывая что мы всё-таки должны качать торрент целиком и оставатся на раздаче.
Я, честно говоря, думаю о другом применении. Можно с NAS'а, качающего торренты, выкинуть ftpd и монтировать непосредственно торренты. Чем меньше софта на NAS'е, тем лучше. Вопрос лишь в том, можно ли этот disribyted прибить гвоздями к одному пиру, к NAS'у. Обломно, что управлять приоритетом загрузки не удастся, если монтировать недокачанный торрент. Занятно было бы взять торрент-клиент заточить под distibyted и distribyted заточить под этот торрент-клиент, чтобы distribyted расставлял бы приоритеты, и забирал бы данные у торрент-клиента через тот же протокол битторента, а торрент-клиент собственно занимался бы скачиванием, раздачей и сохранением.Мне кажется, всё это можно сделать малой кровью, слегка подпилив торрент-клиент и может слегка заточив distribyted. Не нужны никакие дополнительные протоколы, не нужны дополнительные демоны, открытые сокеты -- всё тупо через bittorrent.
А dc++ не лучше превращается в сетевую файловую систему?
Поддержка архивов кажется очень даже полезной!
В миднайт командере она ДВАДЦАТЬ ЛЕТ назад заведена. И даже ты можешь написать свою "файловую систему" для него - даже игогошечку знать для этого не надо. Ну, правда, не удастся красиво подать свою поделку на опеннете, хотя...
>ДВАДЦАТЬ ЛЕТ назад заведенаАрхив на торренте распаковывает? Серьезно?
А почему именно миднайт-коммандер? Почему не nautilus? Почему не dolphin? Почему не emacs, наконец?Мне fuse больше нравится -- нет ненужной зависимости от ненужного файлового манагера.
В ReactOS уже добавили? Чего они ждут? - хоть немного было бы пользы от ОС.... а!!! у них же до сих пор даже звук не работает нормально.
> В ReactOS уже добавили? Чего они ждут?Ждут пока ты напишешь для них fuse подсистему и приделаешь к ней апи на игогошечке.
Игогошечку, надо полагать, тоже придется для начала портировать, но тебе ж это раз плюнуть?