59

Не люблю я Microsoft. Или как поставить skype в debian stretch

Не так давно корпорация Microsoft раструбила на весь мир, что любит Linux (конечно любит... кждую неделю иски в суд таскает), даже баннер соответствующий на азуре повесили. Но сейчас не об этом.

Начитавшись комментариев на Пикабу и наслушавшись коллегу в курилке я решил обновить свой консервативный Debian со Stable до Testing. В общем не буду вдаваться в подробности, а просто скажу, что систему почти полностью пришлось переставлять (слишком сильно я её запустил и кастомизировал).

После установки основного софта я принялся ставить всё то, что мне нужно в повседневной жизни, и первое, за что я взялся, это был так сильно "обожаемый" скайп. Хочу немного пояснить своё пренебрежительное отношение к скайпу на линуксе. Во-первых скайп для линукса стар как говно мамонта имеет довольно старую и не актуальную версию. Во-вторых - нет реализации 64-битной архитектуры, из-за чего приходится тянуть целую кучу библиотек для i386. Всё это не сильно то и радует, но как то я уже смирился. Но тут, при установке, я получаю сообщение о том, что скайп не может быть установлен, т.к. не разрешены некоторые зависимости. Начинаю гуглить и узнаю, что разработчики Debian выкинули из системы (и из репозитроиев) устаревшую библиотеку libssl_1.0.0. И я их полностью в этом поддерживаю. Но оказалось, что горячо любимые индусы/китайцы/арабы/или хер пойми кто там в этом майкрсофте работает прописали жёсткую зависимость скайпа от устаревшей библиотеки, а обновлять версию - не хотят. Продолжив поиск я нашёл решение проблемы, и представляю его вам.

Для начала нам понадобится скачать тот самый злополучный скайп и небольшой скрипт.

Вот скрипт изнутри:

#!/bin/bash

if [[ -z "$1" ]]; then

echo "Syntax: $0 debfile"

exit 1

fi

DEBFILE="$1"

TMPDIR=`mktemp -d /tmp/deb.XXXXXXXXXX` || exit 1

OUTPUT=`basename "$DEBFILE" .deb`.modfied.deb

if [[ -e "$OUTPUT" ]]; then

echo "$OUTPUT exists."

rm -r "$TMPDIR"

exit 1

fi

dpkg-deb -x "$DEBFILE" "$TMPDIR"

dpkg-deb --control "$DEBFILE" "$TMPDIR"/DEBIAN

if [[ ! -e "$TMPDIR"/DEBIAN/control ]]; then

echo DEBIAN/control not found.

rm -r "$TMPDIR"

exit 1

fi

CONTROL="$TMPDIR"/DEBIAN/control

MOD=`stat -c "%y" "$CONTROL"`

vi "$CONTROL"

if [[ "$MOD" == `stat -c "%y" "$CONTROL"` ]]; then

echo Not modfied.

else

echo Building new deb...

dpkg -b "$TMPDIR" "$OUTPUT"

fi

rm -r "$TMPDIR"

Кладём всё это в одну папку, открываем терминал и приступаем к подготовке пакета.

Распакуем архив и выставим права.

gzip -d videbcontrol.gz

chmod 755

Теперь можно запускать скрипт

./videbcontrol skype-debian_4.3.0.37-1_i386.deb

После этого перед нами появится редактор vj, в котором нам нужно поправить версию библиотеки libssl на 1.0.2.

Не люблю я Microsoft. Или как поставить skype в debian stretch

И тут нас ждёт сюрприз! Оказывается, что vi - это не просто редактор, как блокнот, и просто так вы не сможете отредактировать тут текст. Поэтому нам нужно выбрать нашу библиотеку, а точнее установить курсор на последний ноль в версии, нажать Del (это удалит символ), нажать i (это переведёт нас в режим редактирования), ввести 2, нажать Esc (для возврата в командный режим), и просто ввести на клавиатуре :wq (это запишет в файл наши изменения и выйдет из vi). после закрытия редактора скрипт продолжит работу. Дождёмся конца работы скрипта и получим в папке с исходный пакетоп скайпа модифицированный skype-debian_4.3.0.37-1_i386.modfied.deb. Теперь можно устанавливать:

dpkg -i skype-debian_4.3.0.37-1_i386.modfied.deb

Если будет ругаться на недостаток зависимостей - запускаем

apt-get install -f

Пользуемся на здоровье ;)

GNU/Linux

1.2K поста15.6K подписчика

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.