Статьи

Що робити, якщо в Pidgin не вдалося підключитися ICQ в Debian / Squeeze 6

Приблизно з півроку тому однією з моїх операційних систем стала Debian / Squeeze, стабільний шостий реліз одного з найстаріших дистрибутивів Linux (старожили, можливо, пам'ятають епічний цикл «30 днів без Windows»). Так вийшло, що ряд завдань мені швидше і зручніше вирішувати саме в ній, і тому я частий гість в цій системі. З недавніх пір у мене раптово відвалилася ICQ в Pidgin, що мене кілька засмучувало - я вважаю за краще використовувати мультипротокольні клієнти, а не запускати купу програм.

Якщо вірити Google, проблема з відмовою підключення до сервера ICQ виникала не тільки у мене. Багатьом пощастило побачити повідомлення виду:

Ви з'єднувалися і від'єднувалися занадто часто. Зачекайте 10 хвилин і спробуйте знову. Якщо ви продовжите спроби, вам доведеться чекати ще довше.

Як виявилося, вирішується ця проблема просто, як два байти переслати. А ось шлях до цього рішення був непростий. Але про все по порядку.

Так виглядали мої настройки підключення до сервера ICQ:

Так виглядали мої настройки підключення до сервера ICQ:

Досвідченим шляхом я виявив, що

  • слід прибрати прапорець Use clientLogin
  • слід змінити кодування з CP1251 на CP1251. Наявність дефіса змушує надсилати сервер відповідь виду «Ви не пройшли авторизацію», який Pidgin чомусь інтерпретував як перевищення кількості підключень. Ну да ладно. Працюючий варіант параметрів з'єднання в Pidgin 2.7.3 на Debian такий:

Мабуть, на серверах ICQ відбулися якісь зміни, що вимагають корекції налаштувань, та й кодування-то треба правильно вказувати
Мабуть, на серверах ICQ відбулися якісь зміни, що вимагають корекції налаштувань, та й кодування-то треба правильно вказувати. CP-1251 - невірний запис.

Пошуку цього, здавалося б, простого рішення передувало чимало технічної метушні. Сьогодні ми з приятелем Дмитром aka citadeldimon вирішили впритул і радикально зайнятися викоріненням проблеми з аською, тому що ... тому що мені робити було нічого, а процес складання deb-пакету з останньою версією pidgin, яким пропонував зайнятися citadeldimon, мені видався цікавим.

Кожен з нас зайнявся компіляцією свіжовикачаний початкових кодів. Процес цей відносно простий, але, м'яко кажучи, тоскний. Ваш покірний слуга, передчувають захоплюючу процедуру, відразу озброївся Synaptic, щоб качати відсутні в системі пакети та програми.

В ході компіляції програмного забезпечення практично завжди доводиться доставляти заголовні dev-пакети, які використовуються компілятором для створення виконуваних файлів і бібліотек. Десь на 45-му файлі моє терпіння скінчилося. Використовуючи логи Synaptic, я видалив всі встановлені пакети, і твердо вирішив для себе - якщо я ще коли-небудь надумаю компілювати софт в Linux, я запозичень віртуальну машину, і в ній встановлю все заголовки та компілятори відразу. На деськтопной машині мені це ні до чого.

Мій приятель виявився більш терплячим, і пакети таки зібрав. Зацікавлені особи можуть спробувати їх в справі (я сам не пробував):
|

Ну а я взявся за вивчення суті проблеми, прийшовши до вищеописаного рішенням. Розумніше, звичайно, було почати саме з цього, відкривши вікно відладчика Pidgin.

Окремо хочу зробити акцент на випилюванні пакетів з заголовками файлами. Після того, як спроба скомпілювати Pidgin провалилася, я скористався балками додатки Synaptic (заради чого я і запускав його, власне). На кожен запуск установки пакетів Synaptic пише файл журналу в папку /root/.synaptic/log, розібравши який, можна позбутися від будь-якої програми - поставленої на «подивитися», або помилково. На жаль, не пам'ятаю де я підглянув ось таку команду:
[Code] grep \ (./synaptic/*.log | grep -Po '[\ w -.] + (? = \ S)' | xargs apt-get -y purge [/ code]

Симбіоз консольних утиліт і регулярок шукають в папці synaptic, що знаходиться в поточній директорії, логи, які я туди скопіював, і запускають повне видалення пакетів, зазначених в логах. Страшенно зручно.

Резюмуючи, скажу наступне. Одним з суттєвих недоліків дистрибутивів Linux з пакетним менеджментом додатків було і, на жаль, залишається «залипання версії» - коли при виході нової версії додатка вона потрапляє не в твою, а в наступну версію дистрибутива ОС. Це і призводить до необхідності компілювати самостійно ті додатки, бінарні пакети яких розробником і / або третіми особами не збираються. В цьому відношенні в досить вигідних умовах перебувають користувачі сімейства систем Ubuntu з їх кількістю PPA-репозиторіїв. На щастя, реальна необхідність заміни версій додатків у мене трапляється [поки] досить Релком.

Новости