Userscripts.org: ищем альтернативы

    Полагаю, многие активно применяют пользовательские скрипты (GreaseMonkey / UserJS). Думаю также, что каждому любителю «промасленных обезьянок» знакомо крупнейшее хранилище этих самых скриптов. А именно — каталог пользовательских JavaScript, расположенный по адресу userscripts.org. Я сам с удовольствием прибегал к его услугам в течение нескольких лет.
    К сожалению, в последнее время userscripts.org ведёт себя крайне нестабильно.
    image
    Под катом интересующихся ждёт небольшое исследование вопроса + размышления на тему кто виноват и что делать альтернатив полюбившемуся ресурсу.

    Немного истории

    Userscripts.org в 2005-м году основал Джесс Эндрюс (Jesse Andrews — Twitter, LinkedIn, Meetup, Userscripts.org). Он же был его бессменным админом.
    В 2010-м году Джесс внезапно огорошил сообщество Hacker News просьбой принять у него эстафету развития сайта. Он писал, что не может больше уделять достаточно внимания проекту из-за своего нового увлечения — сайта, посвящённого фотографиям космоса.
    Среди проблем ресурса (кроме чисто технических) им были упомянуты правовые вопросы (касающиеся Digital Millennium Copyright Act: многим не нравилось, что с помощью скриптов можно вносить изменения в работу их сайтов).
    Но это не испугало людей, и «подхватить эстафету» вызвались многие энтузиасты. Среди них были вполне компетентные товарищи, к примеру, Джей 'Saurik' Фриман (Jay 'Saurik' Freeman) — менеджер сценового сообщества Cydia/jailbreak. Мне не известны детали личной переписки между Джессом и соискателями, но в итоге «эстафетный факел» так и остался у основателя сайта. При этом Джесс филигранно разыграл спектакль «собака на сене лежит, сама не ест и другим не дает». То есть, он не передал бразды правления, но и сам не занимался сайтом. Последние действия Джесса как админа Userscripts.org датируются апрелем 2013-го, когда он попытался исправить счётчик установок скрипта. До этого в разделе «самых популярных скриптов» можно было увидеть скрипты, которые никто вообще ни разу не скачал.

    В итоге, 2010-й год стал для сайта переломным: Userscripts.org начал стремительно превращаться в рассадник спама и вредоносных скриптов. Доходило до курьёзного — пользователи писали скрипты, которые пытались убрать из поисковой выдачи вредоносные скрипты других пользователей.

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

    Наблюдая огромное количества «мусора», постоянные downtime'ы, и отсутствие связи с администрацией ресурса, расстроенные пользователи из сообщества Userscripts.org пробовали запускать различные сайты-аналоги, но все они терялись в тени своего «прародителя».

    А затем наступил апрель 2014-го…

    Наши дни

    Когда Userscripts.org в очередной раз перестал открываться, мало кто обратил на это внимание: к подобному многие уже просто привыкли. Но в этот раз сайт «спал» подолгу, периоды же бодрствования стали кратковременными и глюкавыми. К середине мая на сайт можно было зайти (если повезёт) только дописав в адрес номер порта:
    userscripts.org:8080

    Уже тогда на реддите, например, появился пост, автор которого задавался вопросом о смерти проекта. Примерно тогда же Greasemonkey-сообщество всерьёз задумалось о судьбе и самого проекта userscripts.org, и сотен скриптов, которые на нём находились. Люди начали активно готовиться к худшему.

    Обобщая, можно вычленить два направления работы:
    — поиск новой площадки для обмена опытом и скриптами,
    — сохранение расположенных на userscripts.org скриптов.

    Данный пост, собственно, посвящён сбору и хранению информации о результатах этой работы.
    Предлагаю всем заинтересованным помочь мне в этом деле.
    Итак, перехожу к практической стороне вопроса.

    Что мы имеем на данный момент

    userscripts.org и его бэкапы

    На userscripts.org иногда всё ещё удаётся зайти, используя адрес userscripts.org:8080.

    Один из пользователей реддита создал статическое зеркало сайта userscripts-mirror.org. Там полностью отсутствует backend: нельзя залогиниться и не работает поиск (впрочем, возможность поиска по сайту обещают в скором времени прикрутить).

    sorennordstrom предпринял эпическую попытку по сортировке и классификации всех скриптов с userscripts.org на github:
    Git repo of the user.js files from userscripts.org

    Archiveteam натравили на полудохлый userscripts.org своего ArchiveBot'а.
    Результат
    Archivebot GO Pack 049
    userscripts.org-inf-20140510-190530-e323l:
    JSON (234.0 B)
    Web ARChive GZ (67.6 MB)
    WARC CDX Index (643.7 KB)



    Archivebot GO Pack 061
    userscripts.org-inf-20140511-044233-e323l-00000:
    Web ARChive GZ (10.0 GB)
    WARC CDX Index (86.2 MB)

    userscripts.org-inf-20140511-044233-e323l-00001:
    Web ARChive GZ (8.7 GB)
    WARC CDX Index (67.5 MB)

    userscripts.org-inf-20140511-044233-e323l-meta:
    Web ARChive GZ (77.6 MB)
    WARC CDX Index (47.0 B)

    JSON (227.0 B)

    Альтернативы userscripts.org

    В качестве альтернативных площадок мне пока нечего предложить, кроме того, что уже перечислено на странице списка репозиториев — на greasespot.net.
    Я не стал их тестить: сам скрипты не пишу, поэтому поглядеть на эти проекты глазами скриптописателя я не могу. А «фасад» лучше один раз увидеть самому, имхо. Так что предлагаю желающим описать в комментариях плюсы и минусы этих ресурсов, чтобы можно было составить некий рейтинг. Ведь хочется описать эти проекты не только с точки зрения количества скриптов и удобства их каталогизации, но также и с позиции тех, кто заливает и сопровождает собственные скрипты.
    Пока спрячу его под спойлер:
    User Script Hosting

    Gist


    https://gist.github.com/
    Gist is GitHub's «paste» service, where any set of simple files can be pasted into a web form and saved.
    Gist files may be named. If they are given the .user.js suffix, then the raw link for the gist will serve perfectly as an install.
    HTTPS is available and used by default.

    Greasy Fork


    https://greasyfork.org/
    Created by the maintainer of http://userstyles.org/.
    HTTPS is available and enforced by default.
    Open source, hosted on GitHub.

    OpenUserJS.org


    https://openuserjs.org/
    «An open source user scripts repo built using Node.js».
    Only HTTPS is available.
    Open source, hosted on GitHub.

    MonkeyGuts


    https://monkeyguts.com/
    «MonkeyGuts is a brand-new script repository.»
    Only HTTPS is available.

    База скриптов с userscripts.org

    Пользователь ssbtoday выложил на MEGA полную базу скриптов (размер — 800 mb, формат — tar.gz)

    Другой пользователь — expert02 — почистил эту базу от малвари и тоже выложил (размер — 230 mb, формат — 7z):
    Firedrive
    MEGA
    Mirrorcreator (8 mirrors)
    Этот же вариант базы я залил на Яндекс.Диск.
    В архиве куча файлов вида «5678395.user.js». То есть, они никак не упорядочены, и даже названия не несут смысловой нагрузки.



    На данный момент это всё, что у меня есть сообщить.
    Надеюсь, хабрасообщество поможет превратить этот недопост в нечто по-настоящему полезное.
    PS
    Специально для любителей уличать меня в “make an elephant out of a fly” добавлен тег «скандалы-интриги-расследования» =)
    • +23
    • 36.2k
    • 6
    Share post
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 6

      –18
      Я не совсем понимаю назначение этого сайта, может он просто появился во времена динозавров?

      Сегодня никто бы не стал использовать для хранения свой собственный сайт, если есть github и API к нему.
        +15
        Я не совсем понимаю смысл Вашего комментария =)
        Userscripts.org был основан за 3 года до появления гитхаба.
        И вопрос не в том, что теоретически удобнее, или как бы сделали сейчас, а в том, как поступить в сложившейся ситуации.
        Впрочем, я уже давно понял, что «простынки текста» не осиливают даже на хабре. Скоро буду посты оформлять в виде комиксов =) А то, знаете ли, редкая птица дочитывает до середины второго абзаца ))
        +3
        В архиве куча файлов вида «5678395.user.js». То есть, они никак не упорядочены, и даже названия не несут смысловой нагрузки.

        разве это не достаточно просто исправить, вытянув названия (и/или имена сайтов, для которых они сделаны) из скриптов?

        // ==UserScript==
        // @name kino2rss
        // @description Easy access to kino2rss movies
        // @include http://kino2rss.appspot.com/*/
        
          +1
          Моё дело — предупредить. Чтобы читатель примерно представлял, что его ожидает.
          +1
          Архивы имеются и это хорошо. Но надо двигаться дальше. Мне кажется, что самое оптимальное сделать не хранения скриптов, а некий каталогизатор с ссылками на репозитарии (github, bitbucket, etc.)

          А дальше тут два пути развития:
          1) Копировать из репозитариев (бекапить) в этот проект, благо это делается относительно легко.
          2) Не копировать, ибо если скрипт умирает или удаляется автором, значит на то воля божья таково желание автора.

          Такое развитие мне видится наиболее правильным, простым и универсальным. Вопрос: «кто бы взялся за реализацию?»

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

          ИМХО!
            0
            Спасибо за освещение вопроса — сам собирался об этом написать, но не имел столь обширной информации. Из альтернатив вижу Пкуфынащкл как самый перспективный, потомучто его сделал Jason Barnabe — автор и сопроводитель userstyles.org. Он же сумел наладить экспорт скриптов с USO на свой сайт (авторами, без проверки авторства). Случайная посещаемость его крайне низкая — копию и обновление моего HabrAjax там скачали 1 раз за неделю.

            На USO основная пикантность последнего месяца была в том, что с 17 мая по 13 примерно июня сайт вообще не работал на запись. 15 мая обновился Хабр — и я не мог никак сообщить об этом пользователям, они скачивали старую версию (если нашли, что надо заходить на :8080) и видели, что скрипт — устаревший. Для решения я переехал со всеми скриптами, требующими обновления (3 шт), на Гитхаб ( github.com/spmbt/haPages/tree/gh-pages ), но там нет счётчика загрузок, а сайт больше подходит для гиков, которые знают, что issue нужно писать в особый раздел. (Что относительно HabrAjax — он до сих пор в связи с появлением Firefox 30 не полностью восстановлен от последствий обновлений 15 мая, но обновлённая версия уже лежит на USO и других хостингах. Впрочем, там по ссылке написано, куда я советую бежать с USO.)

            Неплохим решением было бы — выделиться в сообщество в рамках Github — там есть все инструменты для поддержки репо и багтрекинга. Но пока там нет такого сообщества. И нужны дополнительные инструменты, хотя бы счётчик загрузок, в идеале — простой форум в отличие от issue.

            Only users with full accounts can post comments. Log in, please.