Представлен релиз системы автоматической синхронизации файлов Syncthing 2.0, в которой синхронизированные данные не загружаются в облачные хранилища, а напрямую реплицируются между системами пользователя при их одновременном появлении в online, используя развиваемый проектом протокол BEP (Block Exchange Protocol). Код Syncthing написан на языке Go и распространяется под свободной лицензией MPL. Готовые сборки подготовлены для Linux, Windows, macOS и FreeBSD...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=63722
Раньше такие штуки любили на Java писать, сейчас видимо на Go
Ну и что?
Ну и хорошо.
Плохо! Плохо что не Rust!
так перепиши, чего ждёшь?
правильно говорить "переписывай"
«переписывовай»!
Да просто как факт. Даже наверное не ностальгия. Я сам пишу на Go, на Java уже не довелось. Экосистема Go мне в принципе по нраву, работать можно, хотя и идеальной я ее не назову, впрочем идеалов в жизни и нету.В 2000-2010-е ещё вроде Java выглядела крепко, развитая инфраструктура, во всех телефонах (ну кроме появившихся айфонов разве что). Джава и сейчас, конечно, не исчезает никуда, но уже, скажем так, "не модно". Плюс ощущение тяжеловесности. В одной p2p-сети, помню, официальный клиент был на джаве, на когда вышел на C++, многие перешли на него, попутно проклиная джавские тормоза.
А так - ждём новых ЯП, конечно, но и старые сразу не закапываем
На Расте тоже есть клиент для этой сети.
нагуглил только заброшенный проект
есть те, кому надо не "модно" а чтоб работало.
> есть те, кому надо не "модно" а чтоб работало.Для них C++ есть :)
> но уже, скажем так, "не модно".Да ну ! А в гугле, Амазоне... где большинство бэка на жабе и не слышали про такие новости
>> но уже, скажем так, "не модно".
> Да ну ! А в гугле, Амазоне... где большинство бэка на жабе
> и не слышали про такие новостиНе берусь судить, насколько много там бэка на Джаве, но понятно дело, что системы на Джава, особенно давно запущенные, никуда не деваются. Но по новым проектам больше вижу Rust или Go в языках. Может плохо смотрю
Ещё знаю есть адепты Котлина, как jvm-языка круче джавы. В Андроиде, во всяком случае, применяют во всю
> Да ну ! А в гугле, Амазоне... где большинство бэка на жабе
> и не слышали про такие новостиГугл написал го чтобы перейти на него в бэках с питона, если вы вдруг не знали. Так что хотя там на лого хомяк нарисован - на самом деле это карманная версия мангуста была, судя по децимации поголовья змей на бэках.
лучше сразу переписывать на Python, так как это уже стандарт всей индустрии.
а чего мелочится, может сразу на bash script?
А что не так с bash?
> А что не так с bash?Делать на нем p2p сетку - это все же несколько экстремально, чтоли. Хоть и технически возможно, но не рекомендуется. Если вы не эксперт в escaping 80 уровня - вас, таки, разломают нахрен.
Python стандарт, да только, как мне кажется, не для такого рода приложений.
https://www.resilio.com/api/connect/documentation/
https://pypi.org/project/rslsync/
https://www.dropbox.com/developers/documentation/python
https://box-python-sdk.readthedocs.io/en/latest/
https://pypi.org/project/mega.py/
Стандарт? Может и ядро Linux, FreeBSD и Windows предлагаешь на Python написать? Нет? Почему нет, это же стандарт всей ИТ индустрии! (сарказм)
То, что стандартов может быть несколько и выбирать из них надо исходя из требований задачи вам в школе ещё не рассказывали?
Лучше сразу на 1С.
Поправочка, на аналоге не имеющий аналогов Великом 1С!
Ядро ваше, если не торопиться никуда, и из-под питона поработает))
На Python лучше pcre2 переписать. Судя по этому https://github.com/bloomberg/memray на python возможно всё))
> Ядро ваше, если не торопиться никуда, и из-под питона поработает))
> На Python лучше pcre2 переписать. Судя по этому https://github.com/bloomberg/memray на
> python возможно всё))Unix way: program does one thing and does it well.
Python way: can do everything, does it like crap.
>Может и ядро Linux, FreeBSD и Windows предлагаешь на Python написать? Нет?Тсс
Не давай питонисиам идею!
Python с его замедлением в 30 раз и десятикратным потреблением памяти по сравнению с языками программирования - никакой не стандарт. Просто он долгое время был дефолтом для того чтобы наговнякать что угодно побыстрее, когда якобы не нужна производительность.Только сейчас, во-первых, появились нормальные языки
- на которых писать не менее просто и приятно
- с не менее развитой экосистемой модулей и встроенными батарейками
- уже с лучшим тулингом (потому что питон с его сотней сборочных систем, форматов setup.py/pyproject.toml/..., обёртками над venv и прочим дерьмом уже вышел из разряда приятных инструментов в разряд неуправляемого нагромождения несовместимого легаси)
- не имеющих таких кошмарных проблем с производительностью (напомню что питон до сих пор медленнее даже мёртвых перла и руби)
- умеющих, наконец, в потокиА во-вторых, стало понятно что перф таки имеет значение, а при таком оверхеде даже, сюрприз-сюрприз, в приложениях которые просто перекладывают данные из базы данных в http. Вот тут про такое пишут https://www.linux.org.ru/forum/development/18043707?cid=1804... с теми же десятками раз перфа и памяти.
Но вы забыли про скорость разработки! Работодателю наф*г не нужен временный язык, хайп которого закончится и потом его все забудут. А поддерживать кто будет? То-то и оно... Доля рынка - вещь упрямая!
> Но вы забыли про скорость разработки! Работодателю наф*г не нужен временный язык,
> хайп которого закончится и потом его все забудут. А поддерживать кто
> будет? То-то и оно... Доля рынка - вещь упрямая!Питон это и есть - временный язык. Во всех смыслах этого слова.
1) Программы на нем годятся только как макеты. Ибо докупите серверов в 30 раз больше - это прекрасно. Если за ВАШ счет. И при выстреливании проекта начинает очень дорого обходиться его обладателю. Язык для макетов, "не прокатило - выкинуть не жалко".
2) Поддержка программ на питоне это как раз - апокалипсис! Нечто без нормальной типизации, без аннотации намерений кодера, "зато джунам греть мозг не надо" - это прекрасно. До первого крупного проекта. После завала прода <фигзнаетгде>, <фигзнаетпочему> с трехэтажным трейсом рожи у програмеров становятся весьма печальные. Ибо перспективы дебага этого...
3) Чтобы не скучалось - большая часть ошибок и факапов на питоне в силу таких свойств случается - в рантайм. Проверка при компиляции и прочее ненужно типа статического анализа? Не, не слышали. Поэтому 2) постоянный спутник всего питона немного сложнее hello world.
4) А поддерживать придется хорошо и много - ибо господа не парятся всякой там обратной совместимостью. При переходе с 2 на 3 вымерла наверное львиная доля экосистемы. Hg соврать не даст - это его убило. Но такая же фигня, чуть менее хардкорно, и в минорных версиях.Итого? Средний по отрасли период полураспада софта на питоне - в лучшем случае пару лет. Если это не "временный язык" - то что?! Через 2 года то что на ТОМ питоне написано - уже не работает!
Ты втираешь нам какую-то дичь. Пиши драйвера на Питоне, раз стандарт.
Пиши или признайся что не осилил.
> лучше сразу переписывать на Python, так как это уже стандарт всей индустрии.Очередной "спец" индустрии... только что испеченный из универа?
Когда дойдет, что все интерпритаторы ломают обратную совместимость по исходному/выполняемому коду на мажорных (и не только) версиях, тогда поймете про реальную индустрию
У нас девелоперы используют Питон для всего, для чего не хотят использовать Яву. Компания из Fortune 100. Достаточно индустриально для понимания?
> У нас девелоперы используют Питон для всего, для чего не хотят использовать Яву.И как оно им без UV, сопровождать то?
Питон, это просто инструмент, так же как вилка или ложка, но только ложкой удобней есть суп, а вилкой мясо, так и здесь
> Компания из Fortune 100.
Конечно верю, здесь же одни джентельмены... и к чему это, повыёкиваться что ли?
> Достаточно индустриально для понимания?Понимания чего, да еще и индустриально? "А мы из фортуны 100, а еще я братана старшего позову... индустриально"
Есть задачи где уместен питон, а есть задачи где уместна джава, кресты и т.д. и т.п.
Говорить что джава не модна в интерпрайзах могут только люди не работавшие там никогда
>> лучше сразу переписывать на Python, так как это уже стандарт всей индустрии.
> Очередной "спец" индустрии... только что испеченный из универа?Синдром утенка. Прямиком из парижской палаты мер и весов - на опеннет.
> лучше сразу переписывать на Python, так как это уже стандарт всей индустрии.Индус-трии. Go был создан чтобы выпилить питон на бэках гугла. Потому что докупитесерверов в ТЕХ масштабах им не катило.
А dropbox вообще сперва переписал бэк на го а потом и на хрycт, потому что докупите серверов за свой счет - очень такое себе.
>Из-за сложностей кросс-компиляции SQLite прекращена сборка готовых исполняемых файлов для платформ dragonfly/amd64, illumos/amd64, netbsd/*, openbsd/386Глядь!
Основной пул моих любимых ОС (на netbsd х86, судя по публичной стате, я вообще был единственным пользователем синктинга).
Ну ничего, соберем руками.
> Основной пул моих любимых ОСА месье знает толк!
Хотя... кого только тут не встретишь, вот даже netbsdшники пожаловали.
Местные netbsd'шники сидят на винде если что.
netbsd серверная ОС
BSD-шники сидят на OpenBSD, Apple Mac OS, QNX
> Глядь!
> Основной пул моих любимых ОС (на netbsd х86, судя по публичной стате,
> я вообще был единственным пользователем синктинга).
> Ну ничего, соберем руками.Ну так это прекрасно - теперь ваша экзотика будет подгружать вас, а не авторов этой штуки, ибо на всех и сразу - не надергаешься.
Отличная вещь
> Отличная вещьИмеете опыт работы с ним? Пригодится для такой задачи: необходимо на разных компьютерах поддерживать домашний каталог пользователя в актуальном состоянии, что бы он переходя от одного компа к другому работал в едином окружении. Поработал на объекте А, перешёл на объект Б, а там всё, что наработал на объекте А уже переехало на комп объекта Б? А ещё есть объекты В, Г, Д....
P.S. Анонимусам кричать о пользе сетевой файловой системы для домашнего каталога не нужно, мне это известно, но, по определённым причинам, не приемлемо.
Для домашнего каталога лучше что то другое. А вот папочка с документами у меня так и сделана
> необходимо на разных компьютерах поддерживать домашний каталог пользователя в актуальном
> состоянии, что бы он переходя от одного компа к другому работал в едином окружении.В хомяк слишком много всего пишется.
Можно сделать отдельную папку для синка и нужные конфиги перенести туда.> Поработал на объекте А, перешёл на объект Б, а там всё, что наработал на объекте
> А уже переехало на комп объекта Б?Если нет промежуточного "сервака", и ты поработал с А и выключил его, а потом пошел включать Б... то ничего не засинкается))
Нужно или делать промежуточную ноду, которая всегда будет включена, или ждать синка.
А так оно работает, у меня синкается нужное между тремя компами и двумя телефонами.
> необходимо на разных компьютерах поддерживать домашний каталог пользователя в актуальном состоянии, что бы он переходя от одного компа к другому работал в едином окруженииРаботать будет, при условии что файло не локнуто программами которые их открыли на рабочих станциях, плюс, редко, но нужно будет резолвить конфликты, если 2 вэй синк. Но это касается любого софта, не только ST
Я по такой схеме и работаю. Syncthing это то без чего я уже не представляю жизни. Только я не синхронизирую домашний каталог. Всё моё хозяйство с кодом, конфигами, документами крутится в трёх директориях, которые я и синхронизирую.
скачивать вещи бесплатно без смс можно? в нем есть аналог рутрекера?
да
можно, я както холодильник скачал, до сих пор работает
Пегий дудочник и Интернет 2.0?
Сериал Кремниевая долина уже давно баян.
Должны знать, что тогда должно рекордное сжатие без потерь.
Для Homelab пойдет?
зачем?
Пойдёт, но в локалке лучше NFS сделать (поддерживается даже в Окнах).
это серверное решение, а syncthing - безсерверное. Совершенного разного класса софт, и к тому же syncthing без админского геммороя (для домохозяек)
дааа? прям бессерверное? прям как тор? децентрализованное ещё скажи
а что не так? Инфраструктура синтинга нужна только для поиска пиров, к-е находятся за роутерами с динамическими IP-адресами.Вбиваешь статические адреса и синтинг - абсолютно бессервеное решение.
> дааа? прям бессерверное? прям как тор? децентрализованное ещё скажиОчередной "шедевр" демострации безграмотности?
ST можно настроить в лоб в лоб, по ИП-шикам и без проблем отключить дисковери и прокси или юзать свои
Для homelab pyinotify достаточно
для энтерпрайза вот это вот лучше https://www.btfs.io/
> Предполагается, что использование SQLite упростит сопровождение
> Из-за сложностей кросс-компиляции SQLite прекращена сборка
> Предполагается, что использование SQLite упростит сопровождение
> Из-за сложностей кросс-компиляции SQLite прекращена сборкаТак никакого противоречия.
"SQLite упростит сопровождение" нормальных систем. Так и случилось.А для маргинальщины решать проблемы просто не целесообразно.
Времени потратится много, но профит от этого получат полтора нетакусика.
А более приоритетных багов в трекере дофига))Поэтому абсолютно закономерно переложить эти проблемы на самих любителей эдакого.
Им всё равно с чем прдлиться, пусть займустся чем-то "полезным".
авторы Syncthing украли протокол у BitTorrent Sync!
это же воровство, это позор! это позор всего OpenSource сообщества!
У что конкретно у автора BitTorrent Sync пропало? Состава правонарушения здесь нету.
Протокол в опенсорсе давно, сэр https://github.com/arvidn/libtorrent
Ничто не мешает написать клиентов, серверов, обвязок.
банальные паразиты
> Бэкенд хранения переведён с БД LevelDB на SQLite. Миграция данные производится автоматически при первом запуске после обновления. Предполагается, что использование SQLite упростит сопровождение и анализ данных, а также сократит число ошибок.
> ...
> Из-за сложностей кросс-компиляции SQLite прекращена сборка готовых исполняемых файлов для платформ dragonfly/amd64, illumos/amd64, solaris/amd64, linux/ppc64, netbsd/*, openbsd/386, openbsd/arm и windows/arm."и то верно... меньше конпилячить — сразу всё упростилось...
Странно, кстати, насчёт Sqlite, вроде есть же modernc dot org, который Сишные библиотеки компилит в гошный код, чтобы без cgo работать. Но может у них и так оно не собралось под солярю и разные bsd
Очень странно что в итоге они используют cgo версию Sqlite.
Версия от modernc точно под bsd работает. Я ее в своих проектах использую и со сборкой проблем там не было.
Когда смотрел код syncthing там видел что использовались оба варианта Sqlite и я думал что они например оставят cgo версию для x86 а для всего остального возьмут версию от modernc. Странно что они не остановились на таком варианте.
> Странно, кстати, насчёт Sqlite, вроде есть же modernc dot orgЭто у них в планах, нативный работает быстрее
Эх, жаль что скорее всего в условиях массовых блокировок оно стабильно работать не будет, скорее всего даже вообще работать не будет, когда блокировки различного трафика станут более жесткими.
> Эх, жаль что скорее всего в условиях массовых блокировок оно стабильно работать
> не будет, скорее всего даже вообще работать не будет, когда блокировки
> различного трафика станут более жесткими.Это если инфрастурутура синтинга заблочена. Но, если свою поднять или напрямую IP'шники узлов вбивать (хотя бы 1), или в локалке - то всё должно работать )
Одним из вариантов транспорта там идет QUIC. Если полная блокировка повлияет далеко не только на Syncthing.
И есть вариант поднять свой relay где будет просто tls соединение. Relay разве что по IP придется блокировать.
Не поможет, все идет к тому, что будет белый список сайтов и провайдеров, а весь остальной трафик в бан. Он, этот белый список, в принципе уже есть, я с трудом в него пролез благодаря работодателю, который похлопотал. Просто пока все в тестовом режиме, рано или поздно рубанут по полной.
Сама ты дочка офицера и уже все не так однозначно?
Тут у вас звонки через вацап и телегу всё. Теперь только через товарища майора.
Я разворачивал сабж в изолированной сети без вообще какого-либо доступа в интернет и всё отлично работало. И для себя потом от безделья делал полностью независимую сеть нод связанных через интернет. Завязываться на их инфраструктуру совершенно не обязательно.
Через Yggdrasil делал или ZeroTier?
> через интернетКакое из двух слов неясно? На всех устройствах публичный IPv6 адрес, включая телефон. Без оверлейных сетей. Но вообще, сабжу любая IP-сеть подойдёт, лишь бы связность была.
Нужны либы, которые будут заворачивать трафик в http и пусть блокируют
Чтоб поменять слушающий порт в настройках нужна либа???
Смотрю, трекер по-прежнему забит ишьюсами о внезапном жоре CPU. Годы идут, но у Syncthing все стабильно.
> Смотрю, трекер по-прежнему забит ишьюсами о внезапном жоре CPU. Годы идут, но
> у Syncthing все стабильно.попробуйте syncspirit, в несколько раз меньше есть CPU по моим замерам.
Да, собираюсь. Но я выше писал не о высоких системных требованиях сабжа, а о фантомно возникаемых багах. А потом смотришь описание с трудом найденной причины, а там какая-нибудь банальность, вроде того что разраб не додумался паузить индексацию изменяемых в данный момент файлов.
Оно и синькает как ей в голову взбредёт. Так что не надо такого.
> синькает как ей в голову взбредётЭто фича, а не баг. А почему так и почему ты на самом деле хочешь чтобы оно синхронизировалось в случайном порядке можно догадаться, если хорошо подумать.
>This is the first release of the new 2.0 series. Expect some rough edges and keep a sense of adventure! 🙏Лол :)
> Задействована установка нескольких сетевых соединений между устройствами, использующими Syncthing 2.x.это было еще добавлено в какой-то 1.x, 1.23 вроде, но точно не помню
более того эту фичи упорно не хотели добавлять многие годы, но потом почему-то созрели и синктин стал бесподобен для не только для LAN но и WAN
> прекращена сборка готовых исполняемых файлов для платформ
> dragonfly/amd64, illumos/amd64, solaris/amd64, linux/ppc64,
> netbsd/*, openbsd/386, openbsd/arm и windows/armФсё все правильно!
Дропнули нинужный хлам и сопровождение упростилось!
Всем бы так)))ЗЫ: можно глянуть официальную статистику юзаджа на всяких васяноплатформах mon.syncthing.net/d/edy5vpz3ri1ogd/usage-reporting-current
freebsd 0.511%
windows/arm64 0.0607%
netbsd 0.00593%
illumos 0.00502%
dragonfly 0.00182%
linux/ppc64le 0.00137%
solaris 0.000456%Пользователи ЭТОГО просто должны быть благодарны авторам, что его софтина просто собирается под их мусор.
Верните поддержку Win7! Явно на ней больше чем на Solaris сидит пользователей...
Попробуйте syncspirit , там вроде даже windows-xp поддерживают
Спасибо попробую! Если оно совместимо с обычным syncthing и не отвалятся все тмеющиеся линуксовые и андроидные хосты, то этого мне хватит.
Не факт…
семерка померла, уже безвозвратно, даже ESU - всёпереходи на ляликс
Пора конечно, но боюсь что если и заведу под вайном некоторые приложения по фотографии, но всё-равно вылезут какие-нибудь проблемы с цветовыми профилями и т.п.
> семерка померла, уже безвозвратно, даже ESU - всё
> переходи на ляликсЗачем? Есть шикарнейшая и стабильная, как обещания вендокапца, Win10 LTSC.
Поддержка - 10 лет, нового железа не требует, нвидия работает отлично, нет иксов и вейланда. Одни плюсы.
>> семерка померла, уже безвозвратно, даже ESU - всё
>> переходи на ляликс
> Зачем? Есть шикарнейшая и стабильная, как обещания вендокапца, Win10 LTSC.
> Поддержка - 10 лет, нового железа не требует, нвидия работает отлично, нет
> иксов и вейланда. Одни плюсы.кому оно нужно это плиточное ражно, еще 11-ая внешне терпимо, но тогда уж лучше KDE, а держать сейчас винду имеет смысл только для тестов и специфичного софта
ну и собственно тупняк с апдейтами, цирк с аккаунтами майкрософт и прочее никуда не делся
Купи про, там можно и без аккаунта, и со своим, и как хочешь ещё. Если совсем с деньгами туго, подожди до cyber monday и купи на адовых скидках. Я так всегда делаю, брат жив, активацию не просит.
я уже много лет на линухе, даже стим есть, если очень хочется, но я не игроманна винду не вернусь
> Верните поддержку Win7Для этого надо будет напрягать Гугл, так как это Го дропнул подержку 7-ки
Можете попробовать модифицированный Го https://github.com/Snawoot/go-win7 (который работает на 7-ке с новыми версиями) и компильнуть свежак
Да, теперь припоминаю, что с го была проблема. Но сам syncthing тоже хорош, автоматом обновлялся на неработающую в 7 версию, кажется тогда откатывал и разбирался как отключить автоапдейты.
Наверни же VxKex, только сраный qt6 не хочет работать, так что круг запускаемых программ немного ограничен.А можешь ещё и DXVk попробовать присунуть в папку с игрой.
Спасение, а не просто приложение! Закрывает массу проблем в повседневной деятельности.