- Узнаем, где расположен локальный оверлей:
# cat /etc/portage/repos.conf/zz-calculate.conf
Спойлер
# cat /etc/portage/repos.conf/zz-calculate.conf
[DEFAULT]
main-repo = gentoo
[distros]
priority = 50
sync-uri = https://github.com/calculatelinux/distros
location = /var/db/repos/distros
auto-sync = Yes
sync-type = calculate
[calculate]
priority = 50
sync-uri = https://github.com/calculatelinux/calculate
location = /var/db/repos/calculate
auto-sync = Yes
sync-type = calculate
[gentoo]
priority = 50
sync-uri = https://github.com/calculatelinux/gentoo
location = /var/db/repos/gentoo
auto-sync = Yes
sync-type = calculate
[custom]
location = /var/calculate/repos/custom
-
Создадим категорию программ в локальном оверлее:
# mkdir -p /var/calculate/repos/custom/dev-lang/pascalabcnet
-
Создадим ebuild-файлы программы (использую mcedit из пакета app-misc/mc, который сразу создаёт отсутствующий файл и позволяет наполнить его. Для создания пустого файла можно использовать touch):
# mcedit /var/calculate/repos/custom/dev-lang/pascalabcnet/pascalabcnet-3.9.0-r3390.ebuild
и
# mcedit /var/calculate/repos/custom/dev-lang/pascalabcnet/pascalabcnet-9999.ebuild
-
Вставим код ebuild-файлов, который можно взять из этого сообщения;
-
Проверим наполненные Нами файлы:
# cat /var/calculate/repos/custom/dev-lang/pascalabcnet/pascalabcnet-3.9.0-r3390.ebuild
и
# cat /var/calculate/repos/custom/dev-lang/pascalabcnet/pascalabcnet-9999.ebuild
-
Создадим manifest для Наших ebuild:
Спойлер
ebuild /var/calculate/repos/custom/dev-lang/pascalabcnet/pascalabcnet-3.9.0-r3390.ebuild manifest
# ebuild /var/calculate/repos/custom/dev-lang/pascalabcnet/pascalabcnet-3.9.0-r3390.ebuild manifest
>>> Downloading 'http://mirror.rosalinux.ru/rosa/rosa2021.1/repository/x86_64/contrib/release/pascalabcnet-3.9.0-1.gitf309df.3-rosa2021.1.x86_64.rpm'
--2025-01-07 19:53:35-- http://mirror.rosalinux.ru/rosa/rosa2021.1/repository/x86_64/contrib/release/pascalabcnet-3.9.0-1.gitf309df.3-rosa2021.1.x86_64.rpm
Resolving mirror.rosalinux.ru (mirror.rosalinux.ru)... 195.19.76.246
Connecting to mirror.rosalinux.ru (mirror.rosalinux.ru)|195.19.76.246|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7031257 (6.7M) [application/x-redhat-package-manager]
Saving to: ‘/var/calculate/distfiles/pascalabcnet-3.9.0-1.gitf309df.3-rosa2021.1.x86_64.rpm.__download__’
/var/calculate/distfiles/pascalabcnet-3.9.0-1.gitf309df.3-r 100%[=========================================================================================================================================>] 6.71M 2.44MB/s in 2.8s
2025-01-07 19:53:38 (2.44 MB/s) - ‘/var/calculate/distfiles/pascalabcnet-3.9.0-1.gitf309df.3-rosa2021.1.x86_64.rpm.__download__’ saved [7031257/7031257]
>>> Downloading 'https://pascalabc.net/downloads/PascalABCNETLinux.zip'
--2025-01-07 19:53:39-- https://pascalabc.net/downloads/PascalABCNETLinux.zip
Resolving pascalabc.net (pascalabc.net)... 195.208.245.34
Connecting to pascalabc.net (pascalabc.net)|195.208.245.34|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 8071253 (7.7M) [application/zip]
Saving to: ‘/var/calculate/distfiles/PascalABCNETLinux.zip.__download__’
/var/calculate/distfiles/PascalABCNETLinux.zip.__download__ 100%[=========================================================================================================================================>] 7.70M 1.57MB/s in 5.0s
2025-01-07 19:53:44 (1.54 MB/s) - ‘/var/calculate/distfiles/PascalABCNETLinux.zip.__download__’ saved [8071253/8071253]
>>> Creating Manifest for /var/calculate/repos/custom/dev-lang/pascalabcnet
- Выполним синхронизацию:
# eix-sync && eix-update
Спойлер
# eix-sync && eix-update
* Выполняются !-хуки
* Запуск /usr/sbin/cl-core --method update --sync-only --skip-eix-update
Синхронизация репозиториев
* Проверка текущего сервера обновлений ... [ ok ]
* Проверка обновлений Distros ... [ ok ]
* Проверка обновлений Calculate ... [ ok ]
* Проверка обновлений Gentoo ... [ ok ]
* Синхронизация завершена
Конфигурация системы
* Сервер обновлений https://mirror.yandex.ru/calculate
* Синхронизация репозиториев завершена!
* Копирую старую базу данных в /var/cache/eix/previous.eix
* Запуск eix-update
Чтение настроек Portage…
Построение базы данных (/var/cache/eix/portage.eix)…
[0] «gentoo» /var/db/repos/gentoo/ (кэш: metadata-md5-or-flat)
Чтение категории 172|172 (100) Готово
[1] «custom» /var/calculate/repos/custom (кэш: parse|ebuild*3.0.24#metadata-md5#metadata-flat#assign)
Чтение категории 172|172 (100) Готово
[2] «calculate» /var/db/repos/calculate (кэш: parse|ebuild*3.0.24#metadata-md5#metadata-flat#assign)
Чтение категории 172|172 (100) Готово
[3] «distros» /var/db/repos/distros (кэш: parse|ebuild*3.0.24#metadata-md5#metadata-flat#assign)
Чтение категории 172|172 (100) ПУСТО!
Применение масок…
Расчёт хеш-таблиц…
Запись файла базы данных /var/cache/eix/portage.eix…
База данных содержит 19125 пакетов в 172 категориях
* Вызов eix-diff
[<] == sys-apps/calculate-utils (3.7.7.7@17.12.2024; 9999 -> 3.7.7.7^t) [2]: A set of Calculate utilities for system installation, build and upgrade
[N] >> dev-lang/pascalabcnet (~9999) [1]: PascalABC.NET is a Pascal programming language that implements classic Pascal, most Delphi language features, as well as a number of their own extensions
* Статистика времени:
4 секунд для синхронизация
8 секунд для eix-update
1 секунд для eix-diff
13 секунд всего
Чтение настроек Portage…
Построение базы данных (/var/cache/eix/portage.eix)…
[0] «gentoo» /var/db/repos/gentoo/ (кэш: metadata-md5-or-flat)
Чтение категории 172|172 (100) Готово
[1] «custom» /var/calculate/repos/custom (кэш: parse|ebuild*3.0.24#metadata-md5#metadata-flat#assign)
Чтение категории 172|172 (100) Готово
[2] «calculate» /var/db/repos/calculate (кэш: parse|ebuild*3.0.24#metadata-md5#metadata-flat#assign)
Чтение категории 172|172 (100) Готово
[3] «distros» /var/db/repos/distros (кэш: parse|ebuild*3.0.24#metadata-md5#metadata-flat#assign)
Чтение категории 172|172 (100) ПУСТО!
Применение масок…
Расчёт хеш-таблиц…
Запись файла базы данных /var/cache/eix/portage.eix…
База данных содержит 19125 пакетов в 172 категориях
, где увидим, что созданный pascalabcnet отобразился в добавленных:
* Вызов eix-diff
[<] == sys-apps/calculate-utils (3.7.7.7@17.12.2024; 9999 -> 3.7.7.7^t) [2]: A set of Calculate utilities for system installation, build and upgrade
[N] >> dev-lang/pascalabcnet (~9999) [1]: PascalABC.NET is a Pascal programming language that implements classic Pascal, most Delphi language features, as well as a number of their own extensions
- Для наглядности выполним поиск пакета таким образом (в выводе можно увидеть, что присутствует две версии пакета. Первая версия - “3.9.0 сборка 3390”, а вторая версия - “живая”):
# eix dev-lang/pascalabcnet
* dev-lang/pascalabcnet [1]
Доступные версии: ~3.9.0-r3390^ms ~9999^ms {+chm gtk2}
Домашняя страница: http://pascalabc.net/
Описание: PascalABC.NET is a Pascal programming language that implements classic Pascal, most Delphi language features, as well as a number of their own extensions
[1] "custom" /var/calculate/repos/custom
или таким образом:
# emerge -s dev-lang/pascalabcnet
Спойлер
# emerge -s dev-lang/pascalabcnet
Local copy of remote index is up-to-date and will be used.
[ Results for search key : dev-lang/pascalabcnet ]
Searching...
* dev-lang/pascalabcnet [ Masked ]
Latest version available: 9999
Latest version installed: [ Not Installed ]
Size of files: 7883 KiB
Homepage: http://pascalabc.net/
Description: PascalABC.NET is a Pascal programming language that implements classic Pascal, most Delphi language features, as well as a number of their own extensions
License: LGPL-3.0
[ Applications found : 1 ]
, где обратим внимание на то, что пакет замаскирован;
- Попробуем выполнить установку:
# emerge -av dev-lang/pascalabcnet
Спойлер
# emerge -av dev-lang/pascalabcnet
Local copy of remote index is up-to-date and will be used.
Local copy of remote index is up-to-date and will be used.
These are the packages that would be merged, in order:
Calculating dependencies... done!
Dependency resolution took 14.06 s (backtrack: 0/20).
[binary N ] acct-group/geoclue-0-r2::gentoo 12 KiB
[binary N ] acct-user/geoclue-0-r2::gentoo 0 KiB
[binary N ] dev-libs/chmlib-0.40-r2::gentoo USE="examples -static-libs" 49 KiB
[binary N ] dev-libs/libzip-1.11.2:0/5::gentoo USE="bzip2 ssl zstd -gnutls -lzma -mbedtls -static-libs -test -tools" 262 KiB
[binary N ] dev-lang/mono-6.12.0.199-r2::gentoo USE="minimal nls -doc -pax-kernel (-selinux) -xen" ABI_X86="32 (64) (-x32)" 72356 KiB
[binary N ] dev-dotnet/libgdiplus-6.0.2-r4::gentoo USE="cairo" 192 KiB
[binary N ] dev-qt/qtprintsupport-5.15.16:5/5.15::gentoo USE="cups -debug -gles2-only -test" 222 KiB
[binary NS ] dev-qt/qtwebchannel-5.15.16:5/5.15::gentoo [6.8.1:6/6.8.1::gentoo] USE="qml -debug% -test" 101 KiB
[binary N ] dev-qt/qtpositioning-5.15.16:5/5.15::gentoo USE="geoclue qml -debug -test" 337 KiB
[binary N ] app-misc/geoclue-2.7.2:2.0::gentoo USE="introspection -gtk-doc -modemmanager -vala -zeroconf" 206 KiB
[binary N ] dev-qt/qtwebengine-5.15.16_p20241115:5/5.15::gentoo USE="alsa geolocation jumbo-build pulseaudio screencast system-icu widgets -bindist -debug -designer -kerberos -test" 50930 KiB
[ebuild N ~] app-text/kchmviewer-8.0::gentoo 305 KiB
[ebuild N ~] dev-lang/pascalabcnet-9999::custom USE="chm -gtk2" 0 KiB
Total: 13 packages (12 new, 1 in new slot, 11 binaries), Size of downloads: 124966 KiB
The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by dev-lang/pascalabcnet (argument)
=dev-lang/pascalabcnet-9999 ~amd64
# required by dev-lang/pascalabcnet-9999::custom[chm]
# required by dev-lang/pascalabcnet (argument)
=app-text/kchmviewer-8.0 ~amd64
Would you like to add these changes to your config files? [Yes/No] y
Autounmask changes successfully written.
* IMPORTANT: config file '/etc/portage/package.accept_keywords/custom' needs updating.
* See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
* sections of the emerge man page to learn how to update config files.
, где увидим, какие зависимости требуется установить, и что требуется принять изменения для keywords;
- Принимаем эти изменения, выполняя нижеуказанную команду с нажатием клавиши u:
# dispatch-conf
Спойлер
--- /etc/portage/package.accept_keywords/custom 2025-01-07 19:55:38.007168436 +0300
+++ /etc/portage/package.accept_keywords/._cfg0000_custom 2025-01-07 20:20:56.547968948 +0300
@@ -1,3 +1,8 @@
# Этот файл будет перенесён при установке системы
# required by anydesk (argument)
=net-misc/anydesk-6.3.3 ~amd64
+# required by dev-lang/pascalabcnet (argument)
+=dev-lang/pascalabcnet-9999 ~amd64
+# required by dev-lang/pascalabcnet-9999::custom[chm]
+# required by dev-lang/pascalabcnet (argument)
+=app-text/kchmviewer-8.0 ~amd64
>> (1 of 1) -- /etc/portage/package.accept_keywords/custom
>> q quit, h help, n next, e edit-new, z zap-new, u use-new
m merge, t toggle-merge, l look-merge:
- Вот теперь производим установку:
# emerge -av dev-lang/pascalabcnet
Спойлер
# emerge -av dev-lang/pascalabcnet
Local copy of remote index is up-to-date and will be used.
Local copy of remote index is up-to-date and will be used.
These are the packages that would be merged, in order:
Calculating dependencies... done!
Dependency resolution took 13.72 s (backtrack: 0/20).
[binary N ] acct-group/geoclue-0-r2::gentoo 12 KiB
[binary N ] acct-user/geoclue-0-r2::gentoo 0 KiB
[binary N ] dev-libs/chmlib-0.40-r2::gentoo USE="examples -static-libs" 49 KiB
[binary N ] dev-libs/libzip-1.11.2:0/5::gentoo USE="bzip2 ssl zstd -gnutls -lzma -mbedtls -static-libs -test -tools" 262 KiB
[binary N ] dev-lang/mono-6.12.0.199-r2::gentoo USE="minimal nls -doc -pax-kernel (-selinux) -xen" ABI_X86="32 (64) (-x32)" 72356 KiB
[binary N ] dev-dotnet/libgdiplus-6.0.2-r4::gentoo USE="cairo" 192 KiB
[binary N ] dev-qt/qtprintsupport-5.15.16:5/5.15::gentoo USE="cups -debug -gles2-only -test" 222 KiB
[binary NS ] dev-qt/qtwebchannel-5.15.16:5/5.15::gentoo [6.8.1:6/6.8.1::gentoo] USE="qml -debug% -test" 101 KiB
[binary N ] dev-qt/qtpositioning-5.15.16:5/5.15::gentoo USE="geoclue qml -debug -test" 337 KiB
[binary N ] app-misc/geoclue-2.7.2:2.0::gentoo USE="introspection -gtk-doc -modemmanager -vala -zeroconf" 206 KiB
[binary N ] dev-qt/qtwebengine-5.15.16_p20241115:5/5.15::gentoo USE="alsa geolocation jumbo-build pulseaudio screencast system-icu widgets -bindist -debug -designer -kerberos -test" 50930 KiB
[ebuild N ~] app-text/kchmviewer-8.0::gentoo 305 KiB
[ebuild N ~] dev-lang/pascalabcnet-9999::custom USE="chm -gtk2" 0 KiB
Total: 13 packages (12 new, 1 in new slot, 11 binaries), Size of downloads: 124966 KiB
Would you like to merge these packages? [Yes/No] y
>>> Verifying ebuild manifests
>>> Running pre-merge checks for acct-group/geoclue-0-r2
* Fetching in the background:
* /var/calculate/packages/x86_64/acct-group/geoclue-0-r2.tbz2.partial
* To view fetch progress, run in another terminal:
* tail -f /var/log/emerge-fetch.log
>>> Running pre-merge checks for acct-user/geoclue-0-r2
>>> Running pre-merge checks for dev-lang/mono-6.12.0.199-r2
* Fetching in the background:
* /var/calculate/packages/x86_64/dev-lang/mono-6.12.0.199-r2.tbz2.partial
* To view fetch progress, run in another terminal:
* tail -f /var/log/emerge-fetch.log
* Determining the location of the kernel source code
* Found kernel source directory:
* /usr/src/linux
* Found sources for kernel version:
* 6.6.57-calculate
>>> Running pre-merge checks for dev-qt/qtwebengine-5.15.16_p20241115
* Fetching in the background:
* /var/calculate/packages/x86_64/dev-qt/qtwebengine-5.15.16_p20241115.tbz2.partial
* To view fetch progress, run in another terminal:
* tail -f /var/log/emerge-fetch.log
>>> Emerging binary (1 of 13) acct-group/geoclue-0-r2::gentoo
>>> Emerging binary (2 of 13) dev-libs/chmlib-0.40-r2::gentoo
>>> Emerging binary (3 of 13) dev-libs/libzip-1.11.2::gentoo
>>> Emerging binary (4 of 13) dev-lang/mono-6.12.0.199-r2::gentoo
>>> Emerging binary (5 of 13) dev-dotnet/libgdiplus-6.0.2-r4::gentoo
>>> Emerging binary (6 of 13) dev-qt/qtprintsupport-5.15.16::gentoo
>>> Emerging binary (7 of 13) dev-qt/qtwebchannel-5.15.16::gentoo
>>> Installing (2 of 13) dev-libs/chmlib-0.40-r2::gentoo
>>> Installing (1 of 13) acct-group/geoclue-0-r2::gentoo
>>> Installing (3 of 13) dev-libs/libzip-1.11.2::gentoo
>>> Installing (5 of 13) dev-dotnet/libgdiplus-6.0.2-r4::gentoo
>>> Completed (2 of 13) dev-libs/chmlib-0.40-r2::gentoo
>>> Installing (6 of 13) dev-qt/qtprintsupport-5.15.16::gentoo
>>> Completed (3 of 13) dev-libs/libzip-1.11.2::gentoo
>>> Installing (4 of 13) dev-lang/mono-6.12.0.199-r2::gentoo
>>> Completed (1 of 13) acct-group/geoclue-0-r2::gentoo
>>> Installing (7 of 13) dev-qt/qtwebchannel-5.15.16::gentoo
>>> Completed (5 of 13) dev-dotnet/libgdiplus-6.0.2-r4::gentoo
>>> Completed (6 of 13) dev-qt/qtprintsupport-5.15.16::gentoo
>>> Completed (7 of 13) dev-qt/qtwebchannel-5.15.16::gentoo
>>> Completed (4 of 13) dev-lang/mono-6.12.0.199-r2::gentoo
>>> Emerging binary (8 of 13) acct-user/geoclue-0-r2::gentoo
>>> Installing (8 of 13) acct-user/geoclue-0-r2::gentoo
>>> Completed (8 of 13) acct-user/geoclue-0-r2::gentoo
>>> Emerging binary (9 of 13) dev-qt/qtpositioning-5.15.16::gentoo
>>> Emerging binary (10 of 13) app-misc/geoclue-2.7.2::gentoo
>>> Installing (10 of 13) app-misc/geoclue-2.7.2::gentoo
>>> Installing (9 of 13) dev-qt/qtpositioning-5.15.16::gentoo
>>> Completed (10 of 13) app-misc/geoclue-2.7.2::gentoo
>>> Completed (9 of 13) dev-qt/qtpositioning-5.15.16::gentoo
>>> Emerging binary (11 of 13) dev-qt/qtwebengine-5.15.16_p20241115::gentoo
>>> Installing (11 of 13) dev-qt/qtwebengine-5.15.16_p20241115::gentoo
>>> Completed (11 of 13) dev-qt/qtwebengine-5.15.16_p20241115::gentoo
>>> Emerging (12 of 13) app-text/kchmviewer-8.0::gentoo
>>> Installing (12 of 13) app-text/kchmviewer-8.0::gentoo
>>> Completed (12 of 13) app-text/kchmviewer-8.0::gentoo
>>> Emerging (13 of 13) dev-lang/pascalabcnet-9999::custom
>>> Installing (13 of 13) dev-lang/pascalabcnet-9999::custom
>>> Recording dev-lang/pascalabcnet in "world" favorites file...
>>> Completed (13 of 13) dev-lang/pascalabcnet-9999::custom
>>> Jobs: 13 of 13 complete Load avg: 4.45, 2.73, 1.50
* Messages for package acct-group/geoclue-0-r2:
* Group geoclue already exists
* Messages for package acct-user/geoclue-0-r2:
* User geoclue already exists
* Updating user geoclue
* Messages for package dev-qt/qtwebengine-5.15.16_p20241115:
* This version of Qt WebEngine is based on Chromium version 87.0.4280.144,
* with additional security fixes from newer versions. Extensive as it is, the
* list of backports is impossible to evaluate, but always bound to be behind
* Chromium's release schedule.
* In addition, various online services may deny service based on an outdated
* user agent version (and/or other checks). Google is already known to do so.
*
* tldr: Your web browsing experience will be compromised.
* Messages for package dev-lang/pascalabcnet-9999:
* Если будет докучать ошибка-предупреждение об отсутствующей библиотеке 'appmenu-gtk-module' или 'canberra-gtk-module', то поступите следующим образом:
*
* Задайте USE-флаги командой: echo 'dev-lang/pascalabcnet gtk2' >> /etc/portage/package.use/custom && echo 'x11-misc/appmenu-gtk-module gtk2' >> /etc/portage/package.use/custom && echo 'media-libs/libcanberra gtk2' >> /etc/portage/package.use/custom
*
* и переустановите программу 'PascalABCNETLinux' следующей командой: emerge -av dev-lang/pascalabcnet
*
>>> Auto-cleaning packages...
>>> No outdated packages were found on your system.
* GNU info directory index is up-to-date.
- Получаем результат (скрином запущенной программы порадовать не получится, т.к. в HYPER-V она не работает, увы):
, но некоторый вывод из консоли приложу:
Спойлер
# ls -l /opt/PascalABCNETLinux/
итого 12020
-rw-r--r-- 1 root root 381952 янв 7 20:31 CodeCompletion.dll
-rw-r--r-- 1 root root 245760 янв 7 20:31 Compiler.dll
-rw-r--r-- 1 root root 13824 янв 7 20:31 CompilerTools.dll
-rw-r--r-- 1 root root 307200 янв 7 20:31 Debugger.Core.dll
-rw-r--r-- 1 root root 9728 янв 7 20:31 Errors.dll
drwxr-xr-x 2 root root 60 янв 7 20:31 Highlighting
-rw-r--r-- 1 root root 110592 янв 7 20:31 ICSharpCode.Core.dll
-rw-r--r-- 1 root root 57344 янв 7 20:31 ICSharpCode.Core.WinForms.dll
-rw-r--r-- 1 root root 663552 янв 7 20:31 ICSharpCode.NRefactory.dll
-rw-r--r-- 1 root root 1454080 янв 7 20:31 ICSharpCode.SharpDevelop.dll
-rw-r--r-- 1 root root 368640 янв 7 20:31 ICSharpCode.SharpDevelop.Dom.dll
-rw-r--r-- 1 root root 352256 янв 7 20:31 ICSharpCode.TextEditorLinux.dll
-rw-r--r-- 1 root root 5632 янв 7 20:31 LambdaAnySynToSemConverter.dll
-rw-r--r-- 1 root root 11264 янв 7 20:31 LanguageIntegrator.dll
drwxr-xr-x 2 root root 820 янв 7 20:31 Lib
drwxr-xr-x 2 root root 800 янв 7 20:31 LibSource
drwxr-xr-x 4 root root 80 янв 7 20:31 Lng
-rw-r--r-- 1 root root 118272 янв 7 20:31 Localization.dll
-rw-r--r-- 1 root root 144384 янв 7 20:31 Microsoft.Scripting.dll
-rw-r--r-- 1 root root 275968 янв 7 20:31 Mono.Cecil.dll
-rw-r--r-- 1 root root 33280 янв 7 20:31 Mono.Debugger.Soft.dll
-rw-r--r-- 1 root root 200704 янв 7 20:31 NETGenerator.dll
-rw-r--r-- 1 root root 32256 янв 7 20:31 OptimizerConversion.dll
-rw-r--r-- 1 root root 28672 янв 7 20:31 pabcnetcclear.exe
-rw-r--r-- 1 root root 150 янв 7 20:31 pabcnetcclear.exe.config
-rw-r--r-- 1 root root 32768 янв 7 20:31 pabcnetc.exe
-rw-r--r-- 1 root root 148 янв 7 20:31 pabcnetc.exe.config
-rw-r--r-- 1 root root 159744 янв 7 20:31 ParserTools.dll
-rw-r--r-- 1 root root 6144 янв 7 20:31 PascalABCLanguageInfo.dll
-rw-r--r-- 1 root root 3019554 янв 7 20:31 PascalABCNET.chm
-rw-r--r-- 1 root root 436 янв 7 20:31 PascalABCNETLinux.desktop
-rw-r--r-- 1 root root 1507328 янв 7 20:31 PascalABCNETLinux.exe
-rw-r--r-- 1 root root 499 янв 7 20:31 PascalABCNETLinux.exe.config
-rw-r--r-- 1 root root 3460 янв 7 20:31 PascalABCNETLinux.png
-rwxr-xr-x 1 root root 231 янв 7 20:31 PascalABCNETLinux.sh
-rw-r--r-- 1 root root 526336 янв 7 20:31 PascalABCParser.dll
-rw-r--r-- 1 root root 16384 янв 7 20:31 Pause.exe
-rw-r--r-- 1 root root 22528 янв 7 20:31 PluginsSupportLinux.dll
-rw-r--r-- 1 root root 5120 янв 7 20:31 ProgrammRunner.exe
drwxr-xr-x 14 root root 280 янв 7 20:31 Samples
-rw-r--r-- 1 root root 57344 янв 7 20:31 SemanticTree.dll
-rw-r--r-- 1 root root 23552 янв 7 20:31 StringConstants.dll
-rw-r--r-- 1 root root 6656 янв 7 20:31 SyntaxTreeConverters.dll
-rw-r--r-- 1 root root 532480 янв 7 20:31 SyntaxTree.dll
-rw-r--r-- 1 root root 155136 янв 7 20:31 SyntaxVisitors.dll
-rw-r--r-- 1 root root 66560 янв 7 20:31 TeacherControlPlugin.dll
-rw-r--r-- 1 root root 1494 янв 7 20:31 template.pct
-rw-r--r-- 1 root root 942080 янв 7 20:31 TreeConverter.dll
-rw-r--r-- 1 root root 244736 янв 7 20:31 WeifenLuo.WinFormsUI.DockingLinux.dll
-rw-r--r-- 1 root root 90112 янв 7 20:31 WeifenLuo.WinFormsUI.Docking.ThemeVS2005Linux.dll
-rw-r--r-- 1 root root 4608 янв 7 20:31 YieldHelpers.dll
- Например, следующим образом производится установка конкретной версии:
Узнаем какие версии доступны к установке:
# equery list -op dev-lang/pascalabcnet
* Searching for pascalabcnet in dev-lang ...
[--O] [ ~] dev-lang/pascalabcnet-3.9.0-r3390:0
[I-O] [ ] dev-lang/pascalabcnet-9999:0
Маскируем “живую” версию:
# echo ">dev-lang/pascalabcnet-3.9.0-r3390" >> /etc/portage/package.mask/custom
Попробуем выполнить установку:
# emerge -av =dev-lang/pascalabcnet-3.9.0-r3390
Спойлер
# emerge -av =dev-lang/pascalabcnet-3.9.0-r3390
Local copy of remote index is up-to-date and will be used.
Local copy of remote index is up-to-date and will be used.
These are the packages that would be merged, in order:
Calculating dependencies... done!
Dependency resolution took 15.10 s (backtrack: 0/20).
[binary N ] app-arch/rpm2targz-2021.03.16::gentoo 25 KiB
[ebuild UD~] dev-lang/pascalabcnet-3.9.0-r3390::custom [9999::custom] USE="chm -gtk2" 0 KiB
Total: 2 packages (1 downgrade, 1 new, 1 binary), Size of downloads: 25 KiB
The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by =dev-lang/pascalabcnet-3.9.0-r3390 (argument)
=dev-lang/pascalabcnet-3.9.0-r3390 ~amd64
Would you like to add these changes to your config files? [Yes/No] y
Autounmask changes successfully written.
* IMPORTANT: config file '/etc/portage/package.accept_keywords/custom' needs updating.
* See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
* sections of the emerge man page to learn how to update config files.
, снова видим, что для пакета требуется размаскирование, выполняем и устанавливаем:
Спойлер
# emerge -av =dev-lang/pascalabcnet-3.9.0-r3390
Local copy of remote index is up-to-date and will be used.
Local copy of remote index is up-to-date and will be used.
These are the packages that would be merged, in order:
Calculating dependencies... done!
Dependency resolution took 13.25 s (backtrack: 0/20).
[binary N ] app-arch/rpm2targz-2021.03.16::gentoo 25 KiB
[ebuild UD~] dev-lang/pascalabcnet-3.9.0-r3390::custom [9999::custom] USE="chm -gtk2" 0 KiB
Total: 2 packages (1 downgrade, 1 new, 1 binary), Size of downloads: 25 KiB
Would you like to merge these packages? [Yes/No] y
>>> Verifying ebuild manifests
>>> Emerging binary (1 of 2) app-arch/rpm2targz-2021.03.16::gentoo
>>> Installing (1 of 2) app-arch/rpm2targz-2021.03.16::gentoo
>>> Completed (1 of 2) app-arch/rpm2targz-2021.03.16::gentoo
>>> Emerging (2 of 2) dev-lang/pascalabcnet-3.9.0-r3390::custom
>>> Installing (2 of 2) dev-lang/pascalabcnet-3.9.0-r3390::custom
>>> Completed (2 of 2) dev-lang/pascalabcnet-3.9.0-r3390::custom
>>> Jobs: 2 of 2 complete Load avg: 1.67, 1.13, 1.28
* Messages for package dev-lang/pascalabcnet-3.9.0-r3390:
* Если будет докучать ошибка-предупреждение об отсутствующей библиотеке 'appmenu-gtk-module' или 'canberra-gtk-module', то поступите следующим образом:
*
* Задайте USE-флаги командой: echo 'dev-lang/pascalabcnet gtk2' >> /etc/portage/package.use/custom && echo 'x11-misc/appmenu-gtk-module gtk2' >> /etc/portage/package.use/custom && echo 'media-libs/libcanberra gtk2' >> /etc/portage/package.use/custom
*
* и переустановите программу 'PascalABCNETLinux' следующей командой: emerge -av dev-lang/pascalabcnet
*
>>> Auto-cleaning packages...
>>> No outdated packages were found on your system.
* GNU info directory index is up-to-date.
- Результат:
# whereis pascalabcnet
pascalabcnet: /usr/bin/pascalabcnet /usr/libexec/pascalabcnet
- Снова возвращаемся на “живую” версию, для этого убираем маскирование:
# sed -i "/$pascalabcnet-3.9.0-r3390/d" /etc/portage/package.mask/custom
, и выполняем либо:
# cl-update
, что предложит обновить текущую версию программы:
Спойлер
# cl-update
Синхронизация репозиториев
* Проверка текущего сервера обновлений ... [ ok ]
* Проверка обновлений Distros ... [ ok ]
* Проверка обновлений Calculate ... [ ok ]
* Проверка обновлений Gentoo ... [ ok ]
* Синхронизация завершена
Конфигурация системы
* Сервер обновлений https://mirror.yandex.ru/calculate
Обновление пакетов
* Вычисление зависимостей ...
* Список пакетов для установки
* PascalABC.NET is a Pascal programming language that implements classic Pascal, most Delphi language features, as well as a number of their own extensions (U) dev-lang/pascalabcnet-9999 (0 KiB)
* 1 пакетов будет установлено, 0 kB будет загружено
Вы хотите установить эти пакеты? (Yes/No):
либо повторяем установку:
# emerge -av dev-lang/pascalabcnet
, что так же предложит обновить версию программы:
Спойлер
# emerge -av dev-lang/pascalabcnet
Local copy of remote index is up-to-date and will be used.
Local copy of remote index is up-to-date and will be used.
These are the packages that would be merged, in order:
Calculating dependencies... done!
Dependency resolution took 12.46 s (backtrack: 0/20).
[ebuild U ~] dev-lang/pascalabcnet-9999::custom [3.9.0-r3390::custom] USE="chm -gtk2" 0 KiB
Total: 1 package (1 upgrade), Size of downloads: 0 KiB
Would you like to merge these packages? [Yes/No]
- Парам пам пам. Всё!