MediaGoblin, децентралізована платформа обміну медіафайлами, досягла версії 0.13.0

МедіаГоблін

MediaGoblin — це медіа-публікаційна платформа, яка вважається децентралізованою альтернативою Flickr, YouTube, SoundCloud тощо.

Кілька днів тому було оголошено випуск нової версії MediaGoblin 0.13, версія, у якій реалізовано вдосконалення підтримки, а також ця проміжна версія додає підтримку Python 3.10 і 3.11 і припиняє підтримку версій Python до 3.7

Тим, хто не знайомий з MediaGoblin (він же GNU MediaGoblin), слід знати, що це платформа, призначена для організації хостингу та обміну мультимедійним вмістом, включаючи фотографії, відео, звукові файли, відео, XNUMXD-моделі та документи PDF.

Що нового в MediaGoblin 0.13?

Цей випуск MediaGoblin 0.13 представлений як другорядний випуск, оскільки інтегровано кілька змін і покращень (порівняно з попередніми випусками), але згадується, що випуск Це було зроблено тому, що була додана підтримка для Python 3.10 і 3.11, Підтримку версій Python до 3.7 було припинено.

Крім цього, зазначається, що впроваджено оновлення бібліотеки, Серед яких є Jinja2, PyLD і Celery а також додано підтримку для навігації між багатосторінковими переглядами за допомогою клавіш керування курсором.

Ще одна зміна, яка виділяється, полягає в тому, початкове завантаження було заборонено на сторінках з відео, оскільки реалізовано атрибут preload="metadata", який налаштовано за замовчуванням, щоб уникнути попереднього завантаження відеоконтенту (у режимі "metadata" завантажується лише інформація про розмір відео).

З іншого боку, це підкреслюється код відповідності пароля використовує алгоритм постійного часу (для блокування термінових атак на бокових каналах) і за замовчуванням під час зміни розміру зображень використовується фільтр бікубічної інтерполяції (BICUBIC).

З інші зміни що виділяються:

  • Ремонт різний « ResourceWarning«sy « DeprecationWarning«s
  • Додано записи «extras_require» для залежностей документів, аудіо, відео, необроблених зображень, LDAP і OpenID (Олів’є Механі)
  • Розгорніть навігаційні клавіші зі стрілками вліво/вправо до сторінок
  • MediaGoblin 0.13 було протестовано на Debian 11, Debian 12, Ubuntu 20.04, Ubuntu 22.04 і Fedora 39.

нарешті, якщо ти є цікаво дізнатися про це більше, Ви можете перевірити деталі У наступному посиланні.

Як встановити MediaGoblin та похідні на Ubuntu?

Для тих, хто зацікавлений у можливості встановити цю платформу у своїй системі, вони можуть це зробити, дотримуючись інструкцій, які ми ділимо нижче.

Перше, що ми повинні зробити, це встановити необхідні послуги, на яку в даному випадку ми можемо покластися на Lampp. Зробив це зараз ми повинні встановити Ngix (оскільки MediGoblin цього вимагає) а також різні залежності:

sudo apt install nginx-light rabbitmq-server
sudo apt install postgresql python3-psycopg2
sudo apt install automake git nodejs npm python3-dev python3-gi \
python3-gst-1.0 python3-lxml python3-pil virtualenv python3-psycopg2

Зараз ми збираємося налаштувати базу даних у PostgreSQL, де база даних та користувач є mediagoblin:

sudo --login --user=postgres createuser --no-createdb mediagoblin
sudo --login --user=postgres createdb --encoding=UTF8 --owner=mediagoblin mediagoblin

Ми створюємо користувача та надаємо йому привілеї про мультимедійні файли:

sudo useradd --system --create-home --home-dir /var/lib/qmediagoblin \
--group www-data --comment 'GNU MediaGoblin system account' mediagoblin
sudo groupadd --force mediagoblin
sudo usermod --append --groups mediagoblin mediagoblin
sudo su mediagoblin –shell=/bin/bash

Ми створюємо каталоги що буде містити мультимедійні файли:

sudo mkdir --parents /srv/mediagoblin.example.org
sudo chown --no-dereference --recursive mediagoblin:www-data /srv/mediagoblin.example.org

Встановлюємо платформу:

sudo su mediagoblin --shell=/bin/bash
cd /srv/mediagoblin.example.org
git clone --depth=1 https://git.savannah.gnu.org/git/mediagoblin.git \
--branch stable --recursive
cd mediagoblin
./bootstrap.sh
VIRTUALENV_FLAGS='--system-site-packages' ./configure
make
mkdir --mode=2750 user_dev
sudo su mediagoblin --shell=/bin/bash
cd /srv/mediagoblin.example.org
git submodule update && ./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate

Зробив це зараз лише тНам доведеться відредагувати файл mediagoblin.ini в якому ми збираємось розмістити наступне:

  • email_sender_address: електронний лист, який буде використовуватися як відправник для системи
  • У direct_remote_path, base_diry та base_url їх можна редагувати, щоб змінити префікс URL-адреси.
  • [mediagoblin]: тут ми додамо підключення до бази даних (вона полягає в наступному, якщо дотримується ім’я бази даних, яку ми створили за допомогою попередніх команд “sql_engine = postgresql: /// mediagoblin”)

Після редагування та збереження змін ми оновимо зміни за допомогою:

./bin/gmg dbupdate

В кінці кінців давайте створимо обліковий запис адміністратора де ми замінюємо ім’я користувача на своє ім’я користувача, а you@example.com - електронною поштою, до якої буде пов’язаний обліковий запис:

./bin/gmg adduser --username you --email you@example.com
./bin/gmg makeadmin you

Щоб запустити службу, просто запустіть:

./lazyserver.sh –server-name=broadcast

І ми підключаємося з веб-браузера до URL-адреси localhost: 6543 або використовуючи вашу внутрішню або IP-адресу сервера або доменне ім'я для порту "6543".