Как я могу получить последнюю версию nano (4.5) на CentOS 7?

Последняя версия редактора nano - 4.5 ( https://www.nano-editor.org/ ) ... Я запускаю 2.3.1 на своем сервере CentOS 7 и хочу обновиться. Но никакие репозитории (EPEL, Remi и т. Д.), Похоже, не имеют ничего новее, чем 2.3.

Как я могу получить последнюю версию nano? Надо ли собирать его с нуля на сервере? Я бы предпочел использовать yum для управления установками / обновлениями, если это возможно.

Я вижу множество вариантов загрузки (пакеты, Open SUSE [?], Дистрибутивы, бла-бла) на nano page, но ни один из них не подходит для yum. Я думаю.

3
задан 22 October 2019 в 21:32
4 ответа

Пакеты EL 7 были созданы несколько лет назад, и их сборки все еще находятся на уровне 2.3, потому что это стабильный дистрибутив. Многие репозитории не заменяют пакеты из базового EL.

Чтобы продолжить использование Red Hat RPM, подумайте об обновлении ОС среды вашего редактора (может быть виртуальная машина или контейнер).

EL 8, похоже, до 2.9 , на основе CentOS 8 nano.spec и пакетов на зеркалах. Не последняя.

Fedora 30 новее, 4.2.

Или, не стесняйтесь компилировать самостоятельно, возможно, возьмите спецификацию Fedora и перестройте. Как обычно, вы берете на себя больше ответственности, если строите сами.

1
ответ дан 3 December 2019 в 07:46

Вы не можете. Nano 4.5 имеет зависимости от пакетов, которые недоступны в репозиториях CentOS 7. Если вы хотите, чтобы ощущения CentOS были передовыми, используйте Fedora

-1
ответ дан 3 December 2019 в 07:46

Получить Nano 4 на компьютере с CentOS 7 довольно просто.

  1. Перейдите на https://www.nano-editor.org/dist/v4/ и скачайте последнюю версию .xz (по состоянию на февраль 2020 г. последней версией является v4.8).

  2. cd в подходящий каталог, например cd /opt.

  3. Создайте подкаталог для хранения всего: mkdir -p /opt/apps/nano
    Как и некоторые люди, вы также можете загрузить соответствующую подпись GPG и проверьте его.

  4. Распакуйте и распакуйте в подкаталог с именем nano-4.8: tar -Jxvf nano-4.8.tar.xz

  5. CD в извлеченную папку и запустите configure: cd nano -4.8 && ./configure.
    Возможно, вам потребуется установить ncurses; прочитайте вывод make, и он сообщит вам, если это так.

  6. Скомпилируйте: make && sudo make install

  7. Приведите в порядок и создайте символическую ссылку на двоичный файл nano (если вы не указали место установки во время настройки).

Этот метод можно улучшить, но в целом я им доволен.

По умолчанию сценарий configure указывает окончательную установку на расположение по умолчанию /usr/local/bin. Вы можете настроить с помощью --prefix=PREFIX (где PREFIX — абсолютный путь к файлу), переданного в ./configure, но я не возражаю против значения по умолчанию. Дополнительную информацию можно получить с помощью ./configure --help.

Моя машина не включает usr/local/bin в $PATH; для облегчения жизни вы можете удалить nano 2 с помощью yum remove nano или nano до nano2 и установить символическую ссылку, если вы хотите сохранить оба по причинам:

mv /bin/nano /bin/nano2 ln -s /usr/local/bin/nano /bin/nano

После этого обратите внимание, что некоторые переменные конфигурации .nanorc имеют изменено, поэтому, если вы используете set const, его необходимо обновить до set constshow.

Лично я использую

set softwrap
set constantshow
include "/usr/local/share/nano/*.nanorc"

Включение включает подсветку синтаксиса, а два других очевидны. Nano 4 теперь по умолчанию выполняет программную обертку, но я оставил ее.

Оболочка полезна, вы избежите непреднамеренной вставки разрывов строк в файлы, строки которых превышают ограничение по ширине).

Вы можете определить их в ~/.nanorc или сделать это глобально через глобальный файл nanorc. (местоположение варьируется).

Единственная вещь, которую я не смог понять, это куда должна идти эта глобальная конфигурация — обычные пути, такие как /etc, /etc/default, /usr/local/etc и т. д. не работают. strace -e open nano показывает, что nano даже не пытается открыть глобальный файл конфигурации ни в одном из распространенных мест. Возможно, ему нужен другой флаг, указанный во время компиляции, но в ./configure --help нет ничего очевидного. Документы также изменились после версии 3 и неопределенно ссылаются на общесистемный файл конфигурации, расположение которого меняется.

Похоже, что компиляция из исходников по умолчанию не включает глобальную конфигурацию. Я просто использую свой ~/.nanorc и включаю оттуда файлы подсветки синтаксиса, все работает нормально. Возможно, изучение версии, скомпилированной для RPM репо, покажет, что нужно изменить.

Полный список опций для nanorc доступен в документации (man nanorc или на странице https://www.nano-editor.org/dist/v4. /nanorc.5.html).

Некоторые другие примечания по подсветке синтаксиса стоит прочитать на https://www.mc-guinness.co.uk/blog/20160307/configuring-nano-text-editor-in-ubuntu/ и несколько других сообщений о SE, AskUbuntu и т. д.

Редактировать, февраль 2020 г.: я использовал синтаксис scopatz, подсвечивающий скрипт автоматической установки в «облегченном» режиме (sh -l вместо sh в однострочнике): https://github.com/scopatz/nanorc . Доступны другие пакеты подсветки синтаксиса.

Мне также пришлось закомментировать set const, так как этот конкретный синтаксис устарел, а программные оболочки nano 4 используются по умолчанию. Начиная с nano 2.7, синтаксис все равно изменился на set ConstantShow.

5
ответ дан 5 January 2020 в 13:13

Согласно ответу @Chris Woods -я сделал однострочный скрипт (nano version 5.9)

$ sudo yum install gcc ncurses-devel && mkdir /opt/apps/nano && curl https://www.nano-editor.org/dist/v5/nano-5.9.tar.gz -o /opt/apps/nano/nano-5.9.tar.gz && cd /opt/apps/nano && tar -xvf nano-5.9.tar.gz && cd nano-5.9 &&./configure &&  make && sudo make install && mv /bin/nano /bin/nano2 && ln -s /usr/local/bin/nano /bin/nano
1
ответ дан 21 November 2021 в 13:09

Теги

Похожие вопросы