В одній з перших заміток про Mint'е 17-м я написав, що в його інсталяції настільки мало зайвих програм, що не варто було й морочитися з їх видаленням. Однак тут я кілька покривив душею - зайвих (для мене) додатків цілком достатньо. Зі своєї робочої системи я їх так і не видалив. Але з прицілом на майбутнє (а схоже, що воно триватиме ще без малого п'ять років) задумав виготовити свій установчий диск цього дистрибутива. На якому не було б нічого зайвого (повторюю, для мене). І, навпаки, були б всі програми, які мені так чи інакше довелося доустанавливать.
Задумати щось я задумав, а ось втілити цю задумку в життя - все руки не доходили, та й хвороба печінки (в просторіччі іменується лінню) тому не сприяла. Але давній обговорення в Джуйке мене спровокувало. І я, забувши про печінки та інших справах, зайнявся вивченням питання.
У мережі можна знайти згадки про трьох інструментах для виготовлення власного дистрибутива на базі Ubuntu і її похідних (а Mint, як відомо, належить до їх числа). По-перше, це oem-config-remaster - утиліта командного рядка, що дозволяє зробити снапшот встановленої системи. Вона надзвичайно гнучка, але вимагає великої попередньої підготовки у вигляді установки і кастомізації цієї самої системи на окремому розділі, в віртуальній машині або в chroot-оточенні. Бо снапшотов свою робочу систему у мене великого бажання не було.
По-друге, можна знайти відомості про програму Ubuntu Builder, що має графічний інтерфейс і дозволяє скомпонувати свій дистрибутив попакетно. Однак слідством було встановлено, що нині такого пакета в репозиторіях немає, і куди він подівся - невідомо.
Нарешті, по-третє, існує програма Ubuntu Customization Kit, якась виявилася у вигляді пакету uck. Побіжне гугленіе показало, що це приблизно те, що мені потрібно. Так що я встановив її стандартним способом:
Після чого під ім'ям Ubuntu Customization Kit виявив її в секції Адміністрування. Залишалося приступити до справи. Правда, при першому запуску вона поскаржилася на відсутність каталогу
/ Tmp і працювати далі відмовилася. Довелося перервати процес і зазначений каталог створити. Результатом чого було спочатку поява якогось терміналу:
А незабаром - і вікна запрошення:
Далі пропонувалося вибрати мову інсталяції і, відповідно, инсталлированной системи - я, з огляду на квасного патріотізьма, зупинився російською:
Наступний крок - вибір мови інтерфейсу при завантаженні Live-носія. Тут я теж вибираєш собі язика рідних осик - хоча і був попереджений, що це може виявитися недопустимими конкретним релізом кастомізіруемой системи:
Забігаючи вперед, скажу, що так воно і виявилося.
Оскільки в обох випадках я до рiдной мове додав ще й ворожу, на наступній стадії мені запропонували визначитися, яку з них я хочу бачити умолчальне - зрозуміло, я продовжував гнути патріотичну лінію:
Далі було запропоновано вибрати робоче середовище - Unity, Gnome, KDE або більш іншу. Так як я планував зібрати свою систему з Cinnamon'ом, саме останній варіант і був відзначений:
Тепер потрібно вибрати образ диска, який підлягав патранню - через звичайне вікно відкриття файлу:
Зрозуміло, йому слід було дати ім'я:
Втім, де воно фігурувало в подальшому, я так і не зрозумів.
Потім мене запитали, чи хочу кастомизировать образ мануально - зрозуміло, відповів я, інакше навіщо було б весь город городити?
Наступне запитання стосувалося Windows-related файлів, типу autorun.inf - і тут я, подібно послу, відповідав yes (хоча, здається, їх на установчому носії Mint'а і так немає):
І на питання про створення гібридного способу (тобто придатного для запису як на OD, так і на USB) я відповів позитивно, бо мій CD / DVD-привід давно вже агонізує, а новим обзаводитися я не маю наміру:
Далі мені повідомили, що вся необхідна інформація зібрана, по введенні пароля можна приступати до складання диска, який буде поміщений в / home / alv / tmp / remaster-new-files під ім'ям livecd.iso (питається, навіщо я придумував йому осмислене ім'я? ):
Настав момент повідомити системі пароль:
Після чого почалася розпакування образу, обраного раніше в якості вихідного:
Оскільки образ цей несе на собі компрессированного файлову систему SquashFS, процедура його розпакування виявилася вельми довгою. І закінчилася питанням - чи запустити консоль або продовжити побудову диска. У другому варіанті вийшла б майже точна копія вихідного образу, так що вибір першого варіанту напрошувався сам собою:
В результаті було відкрито ще одне термінальне вікно, chroot'овое (тоді як в першому йшли повідомлення про хід процесу):
Тут би мені слід було пригальмуватися і запустити apt update apt upgrade для оновлення всього chroot'ового господарства - воно було Суцільнотягнені з вихідного образу, що вийшов без малого три місяці тому. Однак я цього не зробив - і в результаті отримав деякі проблеми і в ході складання свого образу, і після його установки.
Замість цього я, як можна бачити на попередньому скріншоті, вирішив запустити Synaptic. Звичайно, можна було обійтися і apt 'ом, але в даному випадку Synaptic здався мені наочніше, ось:
Хоча що, ви Synaptic'а не бачили, чи що? Так що подальше розповім на словах. Насамперед я відзначив для видалення все, що вважав надлишками всякими нехорошими: LibreOffice, Gimp, Thunderbird, всю рясну мультимедіа. А замовив установку для мене необхідного - від zsh'а до MPlayer'а. Причому весь час отримував повідомлення про конфлікти і порушеннях залежностей. Потім-то я зрозумів, що це було пов'язано з тим, що я полінувався (точніше, просто забув) оновити систему: встановлюються знову пакети тягнули за собою залежності, які конфліктували з компонентами, успадкованими від вихідного образу за три місяці. А тоді просто плюнув і відмовився від установки всіх конфліктних додатків, зокрема, мультимедійних - все одно образ збирався в суто експериментальних цілях, і призначався не для практичної роботи, а для установки в виртуалке.
У підсумку я виконав таки видалення непотрібного і установку потрібного - все дійсно необхідне, типу zsh, Geany, Guake, Shutter, ніяких проблем і конфліктів не викликали. Зрозуміло, істинний послідовник малчега Дениски на цій стадії подумав би, як прикрутити до майбутньої системи свої шпалери. Але я, по своєму легкодухість, цим заморочуватися не став, а просто закрив Synaptic, а слідом за ним і другий термінал, опинившись знову в попередньому вікні, де резонним було вибрати пункт Continue building:
Після чого почалося виконання сценаріїв кастомізації, плавно перейшло в компресію системи у вигляді SquashFS - це виявилося найдовшим справою у всьому процесі:
Однак все коли-небудь закінчується - і упаковка SquashFS закінчилася повідомленням про успіх операції і нагадуванням про те, де і під яким ім'ям можна знайти її результат:
Прийнявши це до відома, я дізнався, що зібраний образ не вміститься на стандартний семісотмегабайтний CD: дійсно, як потім виявилося, він розмахнувся більш ніж на 900. Але я і не ставив собі за мету економію місця: аби непотрібні (і ніколи мною не використовуються ) програми не муляли очі в меню. Та й у порівнянні з 1,3 ГБ вихідного образу результат виявився непоганим:
Так що я натиснув OK. що спричинило закриття вікна збірки. І в першому терміналі натиснув Enter - в результаті закрився і він:
Тепер треба було помилуватися плодами своєї праці. Для цього я в VirtualBox'е створивши віртуальну машину, запустивши її з новоствореного LiveCD. Ніяких несподіванок мене тут не чекало - Mint виявився як Mint, з Cinnamon'ом і дуже урізаним його меню. Інтерфейс системи в Live-режимі виявився англійським - але про можливість цього мене чесно попередили:
Так що можна було приступати до установки системи, все в тій же виртуалке. Установка пройшла без будь-яких ускладнень, нічим не відрізняючись від такої з оригінального диска. Результат її - точна копія образу LiveCD, розгорнута на «вінчестері». Але - вже з російськомовним інтерфейсом:
Тоді-то я і зрозумів причину конфліктів під час компонування образу: не забудь я зробити повний апгрейд в chroot'е, тягнуть з вихідного образу, ніяких проблем би і не було. Так що зробив зарубку на майбутнє - щоб до збірки наступного способу підійти у всеозброєнні. У тому числі - і з власними шпалерами (що я, гірше малчега Дениски, чи що?). Тому що чую - поточну версію Mint'а мені доведеться встановлювати ще багато разів, і не тільки собі. Адже до кінця світу хоч і не мільярд років, але майже п'ять. А за цей час теж можна багато встигнути ...