Zenway

Linux - это интересно!

Вы не вошли.

#26 01-05-2019 20:21:58

redix
Участник
Здесь с 14-02-2013
Сообщений: 2,068
LinuxChrome 74.0

Re: CRUX

BigOrange пишет:

помогла смена темы оформления.

Во времена GTK2 шрифт и его размер для темы мог быть запросто прописан в gtkrc файле, как сейчас (во времена GTK3) фик его знает, рихтовать css нет желания. Да и gtkrc частенько имел внутри неплохие комментарии, сомневаюсь чтобы такое же было и в css.


In Tux We Trust

Вне форума

01-05-2019 20:21:58

google
реклама

Re: CRUX



#27 01-05-2019 22:37:49

BigOrange
Модератор
Откуда: Саратов
Здесь с 20-11-2010
Сообщений: 1,947
LinuxUnknown

Re: CRUX

@redix, где-то во время прихода ЖТК3 всё и началлось
но менял я тему в самом либрофисе, там есть такая неплохая зелёненькая
до этого на буржуйском было всё норм, а на православном квадратиками
а системная у меня стыренная с манжары и слегка переделанная vertex-maia-square с ней проблем нет


Долой DE! Даёшь WM!

Вне форума

#28 10-05-2020 16:23:56

cdrw
Участник
Здесь с 18-08-2013
Сообщений: 323
LinuxChrome 78.0

Re: CRUX

redix пишет:

Привет! Спортивнее было бы не вводить 100500 команд, а сделать скрипт, выложить его на гитхаб, или пастебин, и запустить его командой типа:

wget $url -O - | sh

или

curl https://www.example.com/files/coreinstall.sh -o new-filename.sh

Можно будет обработать ссылку линк-шортенером, и существенно укоротить команду.

ЗЫ. Если нужен пример, то могу выложить скрипт, которым я обстругивал центось.

Привет!
Попробовал и я соорудить скрипт. Выложи пожалуйста свой для центоси. Просто интересна логика мышления, чего я не предусмотрел. Учиться никогда не поздно...

Скрипт скачивает образ последнего CRUX на подготовленный для этого раздел. Автоматом монтирует образ, раздел для установки. Устанавливает, делает минимальные действия по настройке русификации и настройке prt-get и pkgmk, создаёт скрипт для chroot. Ты умеешь читать скрипты, поэтому вся основная инфа в самом скрипте. Скрипт имеет свой конфиг - install_crux.conf. Именно в нём определяются каталоги - откуда брать и куда устанавливать:

#╓────────────────────────
#║ Определение переменных
#╚═════════════════════════════════════════════════════─────────────────────────

# install_crux.conf

# Переменные, которые нужно ОБЯЗАТЕЛЬНО подстроить под свои требования 
# перед началом работы скрипта.
# Определитесь, куда вы собираетесь устанавливать дистрибутив.
# Можете определить рабочий каталог, куда будет скачпан ISO-образ CRUX


# Каталог в который будет монтироваться раздел, на который установим CRUX
TRG_CRUX="/mnt/crux"
# Рабочий каталог
WRK_CRUX="/wrk/"
# Каталог в который монтируется ISO-образ CRUX
SRC_CRUX="/wrk/isos"
# ISO-образ CRUX
ISO_CRUX="crux-3.5-updated.iso"
# http - адрес откуда скачаем ISO-образ CRUX
ISO_ADDR="https://crux.ninja/updated-iso/"

# Раздел, на который установим CRUX
DEV_CRUX="/dev/sda5"
# Раздел подкачки
SWP_CRUX="/dev/sda6"

#╓────────────────────────
#║ End of file
#╚═════════════════════════════════════════════════════─────────────────────────

Собственно сам скрипт install_crux:

#!/bin/sh

# версия 0.1 2020.05.10

#╓────────────────────────
#║ Определение переменных
#╚═════════════════════════════════════════════════════─────────────────────────

source ./install_crux.conf  || exit 1

#╓────────────────────────
#║ Подготовка к установке
#╚═════════════════════════════════════════════════════─────────────────────────

# Создать каталог, если не существовало ни его самого, ни ссылки на него.
if [[ ! -d "$TRG_CRUX" && ! -L "$TRG_CRUX" ]] ; then
    mkdir -p $TRG_CRUX
fi

if [[ ! -d "$SRC_CRUX" && ! -L "$SRC_CRUX" ]] ; then
    mkdir -p $SRC_CRUX
fi

# Проверяем наличие iso-образа в каталоге.
# Если нету, то скачиваем и монтируем.
# Если уже есть, то просто монтируем.

if [[ ! -f "$SRC_CRUX"/"$ISO_CRUX" && ! -L "$SRC_CRUX"/"$ISO_CRUX" ]]; then
    echo "Скачиваю образ $ISO_CRUX и монтирую его";
    ( cd "$WRK_CRUX"; wget -c $ISO_ADDR/$ISO_CRUX )
    mount "$WRK_CRUX"/"$ISO_CRUX" "$SRC_CRUX"
else 
    echo "$ISO_CRUX закачан ранее, просто монтирую его"
    mount "$WRK_CRUX"/"$ISO_CRUX" "$SRC_CRUX"
fi

# Монтирование раздела для установки CRUX

mount $DEV_CRUX $TRG_CRUX 

#╓────────────────────────
#║ Процесс установки.
#╚═════════════════════════════════════════════════════─────────────────────────

cd $WRK_CRUX

# Извлекаем менеджер пакетов pkgadd для установки пакетов CRUX
tar xvf $SRC_CRUX/crux/core/pkgutils*.tar* usr/bin/pkgadd -O > ./pkgadd
chmod a+rx ./pkgadd

# Создаём пустой файл базы данных установленных пакетов
mkdir -p $TRG_CRUX/var/lib/pkg
touch $TRG_CRUX/var/lib/pkg/db

# Устанавливаем пакеты набора core
for pkg in $SRC_CRUX/crux/core/*
	do echo "Установка пакета $pkg" 
	./pkgadd -r $TRG_CRUX/ $pkg
done

#╓────────────────────────
#║ Предварительная настройка дистрибутива
#╚═════════════════════════════════════════════════════─────────────────────────

# Создаём файл fstab

cat > $TRG_CRUX/etc/fstab << EOF
$SWP_CRUX        swap             swap        defaults                    0   0
$DEV_CRUX        /                ext4        defaults                    1   1
devpts           /dev/pts         devpts      gid=5,mode=620              0   0
proc             /proc            proc        defaults                    0   0
tmpfs            /dev/shm         tmpfs       nosuid,nodev,noexec         0   0

# Монтирование /tmp в ОЗУ. Раскоментировать по желанию строку ниже, 
# если ОЗУ 4Гб и больше.
#tmpfs            /tmp             tmpfs       defaults,size=2G,mode=1777  0   0
EOF

# Прописываем версию дистрибутива для того, чтобы загрузчик ОС GRUB
# не принимал CRUX за "неизвестный linux"

cat > $TRG_CRUX/etc/lsb-release << EOF
DISTRIB_ID=CRUX
DISTRIB_RELEASE=3.5
DISTRIB_CODENAME=posix
DISTRIB_DESCRIPTION="Crux64 3.5 updated"
EOF

# Системные настройки - русификация, шрифт консоли, временная зона

cat > $TRG_CRUX/etc/rc.conf << EOF
#╓────────────────────────
#║ /etc/rc.conf: system configuration
#╚═════════════════════════════════════════════════════─────────────────────────

FONT=LatArCyrHeb-16
KEYMAP=ruwin_ct_sh-UTF-8.map
TIMEZONE=Europe/Moscow
HOSTNAME=cdrw
SYSLOG=sysklogd
SERVICES=(lo net crond)

#╓────────────────────────
#║ End of file
#╚═════════════════════════════════════════════════════─────────────────────────
EOF

# Сохраняем оригинальный pkgmk.conf на всякий случай

mv $TRG_CRUX/etc/pkgmk.conf $TRG_CRUX/etc/pkgmk.conf.old

# Создаём новый pkgmk.conf преднастроеный под свои нужды

cat > $TRG_CRUX/etc/pkgmk.conf << EOF
#╓────────────────────────
#║ /etc/pkgmk.conf: конфигурация pkgmk(8)
#╚═════════════════════════════════════════════════════─────────────────────────

export CFLAGS="-O2 -march=x86-64 -pipe"
export CXXFLAGS="\${CFLAGS}"

export JOBS=\$(nproc)
export MAKEFLAGS="-j \$JOBS"

case \${PKGMK_ARCH} in
	"64"|"")
		;;
	"32")
		export CFLAGS="\${CFLAGS} -m32"
		export CXXFLAGS="\${CXXFLAGS} -m32"
		export LDFLAGS="\${LDFLAGS} -m32"
		export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig"
		;;
	*)
		echo "Unknown architecture selected! Exiting."
		exit 1
		;;
esac

# PKGMK_SOURCE_MIRRORS=()
# PKGMK_SOURCE_DIR="\$PWD"
# PKGMK_PACKAGE_DIR="\$PWD"
# PKGMK_WORK_DIR="\$PWD/work"
# PKGMK_DOWNLOAD="no"
PKGMK_IGNORE_SIGNATURE="yes"
PKGMK_IGNORE_MD5SUM="yes"
PKGMK_IGNORE_FOOTPRINT="yes"
# PKGMK_IGNORE_NEW="no"
PKGMK_NO_STRIP="no"
# PKGMK_DOWNLOAD_PROG="wget"
# PKGMK_WGET_OPTS=""
# PKGMK_CURL_OPTS=""
PKGMK_COMPRESSION_MODE="xz"

#╓────────────────────────
#║ End of file
#╚═════════════════════════════════════════════════════─────────────────────────
EOF

# Сохраняем оригинальный prt-get.conf на всякий случай

mv $TRG_CRUX/etc/prt-get.conf $TRG_CRUX/etc/prt-get.conf.old

# Создаём новый prt-get.conf преднастроеный под свои нужды

cat > $TRG_CRUX/etc/prt-get.conf << EOF
#╓────────────────────────
#║ /etc/prt-get.conf: конфигурация prt-get(8)
#╚═════════════════════════════════════════════════════─────────────────────────

# Примечание: 
# Очередность расположения в списке каталогов с портами имеет значение
# Это на случай, если в каталогах с портами две версии одного и того же пакета
# При создании пакета приоритет будет отдан первому по списку каталогу с портами
prtdir /usr/ports/core
prtdir /usr/ports/opt
prtdir /usr/ports/xorg

# Раскоментируйте, если хотите использовать мультибиблиотечность в системе
#prtdir /usr/ports/compat-32

# Раскоментируйте, если хотите использовать неофициальные порты от сообщества
#prtdir /usr/ports/contrib

### Так подключают свой, локальный репозиторий
# prtdir /home/packages/build:mypackage

### Опции журналирования:
# writelog enabled         # (enabled|disabled)
# logmode  overwrite       # (append|overwrite)
# rmlog_on_success yes     # (no|yes)
logfile  /var/log/pkgbuild/%n.log
                           # path, %p=path to port dir, %n=port name
                           #       %v=version, %r=release

### Использовать альтернативный файл кэша (default: /var/lib/pkg/prt-get.cache
# cachefile /mnt/nfs/cache

### Вывод информации из файла README:
# readme verbose           # (verbose|compact|disabled)

### Предпочитать более новые версии sysup / diff
# preferhigher no          # (yes|no)

### При поиске использовать regexp
# useregex no              # (yes|no)

### Выполнять до/после-установочные скрипты; yes - эквивалентно опции
### --install-scripts option
# runscripts no            # (no|yes)


### ЭКСПЕРТ РАЗДЕЛ ###

### альтернативные команды
# makecommand      pkgmk
# addcommand       pkgadd
# removecommand    pkgrm
# runscriptcommand sh
#╓────────────────────────
#║ End of file
#╚═════════════════════════════════════════════════════─────────────────────────
EOF

# Создаём скрипт chroot.sh для входа в сеанс chroot

cat > ./chroot.sh << EOF
#!/bin/sh

#╓────────────────────────
#║ Скрипт смены корневого каталога chroot.sh
#╚═════════════════════════════════════════════════════─────────────────────────

if [ "\$UID" != "0" ]; then
    echo "Для chroot нужен доступ под root!"
    exit 1
fi
CRUX=\$1
if [ -z \$1 ]; then
    echo "Введите путь для смены корневого каталога!"
    exit 1
fi
if [ ! -d \$CRUX ]; then
    echo "Каталог '$CRUX' не существует"
    exit 1
fi

pushd \$CRUX

mount -v  --bind /dev   \$CRUX/dev
mount -vt devpts devpts \$CRUX/dev/pts -o gid=5,mode=620
mount -vt proc   proc   \$CRUX/proc
mount -vt sysfs  sysfs  \$CRUX/sys
mount -vt tmpfs  tmpfs  \$CRUX/run

if [ -e /etc/resolv.conf ]; then
    cp -L /etc/resolv.conf \$CRUX/etc/
fi

chroot "\$CRUX" /bin/bash -l

popd

echo "Сеанс chroot закончен."
echo "Отмонтирование виртуальных файловых систем"
umount -v \$CRUX/dev/pts
umount -v \$CRUX/dev
umount -v \$CRUX/run
umount -v \$CRUX/proc
umount -v \$CRUX/sys

exit $?

#╓────────────────────────
#║ End of file
#╚═════════════════════════════════════════════════════─────────────────────────
EOF

chmod a+rx ./chroot.sh

umount $SRC_CRUX
umount $TRG_CRUX

Если не лень, попробуй, мне важно мнение со стороны... Критику и матюки воспринимаю, только тихонько, шоб соседи не слышали... smile


14103011_GgHo.png

Вне форума

#29 10-05-2020 17:56:09

redix
Участник
Здесь с 14-02-2013
Сообщений: 2,068
LinuxChrome 81.0

Re: CRUX

#!/usr/bin/bash
#
# Postinstall script for MontanaLinux: https://img.cs.montana.edu/linux/montanalinux/
#

# Install ELREPO
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm

# Install Nux-Dextop repo
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

# Creating a /swapfile & enable it
fallocate -l 8G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo "/swapfile none swap defaults 0 0" >> /etc/fstab

# Enable CR repo & rebase system
# yum clean all
# yum-config-manager --enable cr
# yum update -y

# Install yum-pugins & update system
yum install yum-langpacks -y
rm -rf /var/cache/yum
yum update -y

# Install some other stuff
yum install dmz-cursor-themes gnome-disk-utility lightdm-settings gtk-murrine-engine \
firefox gvfs gtk-xfce-engine gtk2-engines beesu unzip p7zip p7zip-plugins conky \
file-roller xfce4-weather-plugin htop xdg-user-dirs alsa-utils pavucontrol Zim \
xfce4-xkb-plugin xfce4-taskmanager woeusb notify-python pygtk2-libglade wget firefox \
dconf-editor libusal genisoimage libarchive lzop ncompress autofs nano hwinfo \
librsvg2 xed bash-completion system-config-date system-config-users yumex xclip \
ntfs-3g xfce4-whiskermenu-plugin menulibre libXScrnSaver os-prober xviewer \
xviewer-plugins xfce4-genmon-plugin xfce4-time-out-plugin dconf ntfsprogs \
xfce4-pulseaudio-plugin light-locker gvfs-mtp xfce4-genmon-plugin numlockx \
xfce4-time-out-plugin xdg-user-dirs cairo libXft xorg-x11-server-Xvfb -y

# Resolve Thunar archive plugin problem
ln -s /usr/libexec/thunar-archive-plugin/file-roller.tap /usr/libexec/thunar-archive-plugin/org.gnome.FileRoller.tap

# Create folders in home dir
xdg-user-dirs-update

# Set hardware clock to UTC
hwclock --systohc --utc

# Move /tmp to RAM
cd /
sudo su -c 'echo "tmpfs         /tmp            tmpfs   size=2G,noexec,nosuid,rw,auto,nouser,sync,relatime,mode=01777       0 0" >> /etc/fstab'

# Disable SELinux
sed -i -e 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

# Limit the number of installed kernels
sed -i -e 's/installonly_limit=5/installonly_limit=2/' /etc/yum.conf

# Disable unnecessary services
localectl set-keymap no
localectl set-x11-keymap no
systemctl mask systemd-udev-settle
systemctl mask lvm2-monitor.service
systemctl mask NetworkManager-wait-online.service
systemctl mask postfix.service

# Install additional wallpapers
cd /usr/share/backgrounds
wget -O - "https://www.dropbox.com/s/dsyudgg06zab1z2/wls.tar.gz?dl=0" | tar xzf -

In Tux We Trust

Вне форума

#30 10-05-2020 18:02:09

cdrw
Участник
Здесь с 18-08-2013
Сообщений: 323
LinuxChrome 78.0

Re: CRUX

# Creating a /swapfile & enable it

Даже такое можно, как в винде?


14103011_GgHo.png

Вне форума

#31 10-05-2020 18:12:10

redix
Участник
Здесь с 14-02-2013
Сообщений: 2,068
LinuxChrome 81.0

Re: CRUX


In Tux We Trust

Вне форума

#32 10-05-2020 20:40:19

cdrw
Участник
Здесь с 18-08-2013
Сообщений: 323
LinuxChrome 78.0

Re: CRUX

Век живи, век учись... Из ссылки узнал про команду fallocate...


14103011_GgHo.png

Вне форума

#33 10-05-2020 20:50:00

redix
Участник
Здесь с 14-02-2013
Сообщений: 2,068
LinuxChrome 81.0

Re: CRUX

Я скажу тебе, что когда я только начинал переходить на Линукс, то я там почерпнул целую кучу знаний, еще во всяческих блогах. То что там есть, кроме дистро специфичностей, все работает в любом лине.


In Tux We Trust

Вне форума

#34 10-05-2020 20:56:31

cdrw
Участник
Здесь с 18-08-2013
Сообщений: 323
LinuxChrome 78.0

Re: CRUX

И ещё про MontanaLinux, чьими репами дистр пользуется? Или это уже самостоятельный дистрибутив?


14103011_GgHo.png

Вне форума

#35 10-05-2020 21:05:25

redix
Участник
Здесь с 14-02-2013
Сообщений: 2,068
LinuxChrome 81.0

Re: CRUX

У него репы центоси, да это центось и есть на самом деле, форк для универа штата монтана делает Scott Dowdle, насколько я понял для учебного процесса. Я беру мин образ, и проезжаю по нему этим и еще тремя скриптами, и получается centos 7 + xfce c мултимедиями и тем софтом, что я использую. Ставлю в один раздел ext4.
ЗЫ. Только сейчас какой то бок вылез, после обновления дико тормозит курсор и инерция у него какая то, не разбирался пока, не очень со временем свободным.


In Tux We Trust

Вне форума

10-05-2020 21:05:25

google
реклама

Re: CRUX



Сейчас в этой теме пользователей: 0, гостей: 1
[Bot] CCBot

Подвал форума

Под управлением FluxBB
Модифицировал Visman

[ Сгенерировано за 0.016 сек, 9 запросов выполнено - Использовано памяти: 545.37 Кбайт (Пик: 687.02 Кбайт) ]