Calista xserver - код и скрипты сборки x-server 1.18.4 для операционной системы Calista
Данный сборщик работает под FreeBSD 15
Оригинальный код x-server 1.18.4 взят с https://www.x.org/releases/individual/xserver/xorg-server-1.18.4.tar.gz
ВНИМАНИЕ - в текущей папке xorg-server 1.18.4 есть патчи, папку не удалять и не заменять
Для сборки и установки запускаем файл ./build
Информация для написания новых версий данной автоматизации
Локальный репозиторий
#Создана структура папок
mkdir ./packages/All
#Переходим и добавляем нужные пакеты
cd ./packages/All
pkg fetch -o . pixman #Добавили сам пакет
pkg fetch -o . $(pkg rquery %dn pixman) # зависимости pixman
#Можно ещё Так
pkg fetch -o . пакет пакет пакет
#Возвращаемся
cd ../..
pkg repo packages #Инициировали репозиторий
nano pkg.conf #Добавляем конфиг
#x-server-dep: {
# url: "file:///root/calista-xserver/packages",
# enabled: yes,
# priority: 100
#}
#Добавили пакет - обновили репозиторий
pkg repo packages
Драйвер nvidia который используется для работы в этом xserver - это драйвера с маской nvidia-driver-304
В примере для Toshiba satellite A100 - там стоит видеокарта Nvidia GeForce Go 7600
Если мы будем ставить nvidia-driver-304 стандартным способом с помощью pkg, этот пакет затрет нашу скомпилированную версию иксов
Так что мы просто производим pkg fetch nvidia-drive-304, а затем распаковываем полученый пакет (например у меня он был по пути /var/cache/pkg/nvidia-driver-304-304.137_11~6f584e845d.pkg) в корень файловой системы, предварительно, конечно, установив зависимости КРОМЕ XORG_SERVER
затем просто делаем символичную ссылку xorg-server на Xorg (по пути /usr/local/bin)
tar -xzvf /var/cache/pkg/nvidia-driver-304-304.137_11~6f584e845d.pkg -C /
Создаем /etc/X11/xorg.conf
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device)"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x800" # Стандартное разрешение для ноутбуков того поколения
EndSubSection
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Generic"
ModelName "LCD"
Option "DPMS" # Включаем управление питанием монитора
EndSection
Section "ServerLayout"
Identifier "Layout0"
Screen "Screen0"
EndSection
И запукаем иксы
X :0
Готово
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device)"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x800" # Стандартное разрешение для ноутбуков того поколения
EndSubSection
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Generic"
ModelName "LCD"
Option "DPMS" # Включаем управление питанием монитора
EndSection
Section "ServerLayout"
Identifier "Layout0"
Screen "Screen0"
EndSection
Section "InputClass"
Identifier "libinput pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Примеры запусков
Запустить xserver и xterm
X :0 & sleep 2 && DISPLAY=:0 xterm &
После запуска xserver можно запустить композитный менеджер ctwm