# FreeBSD 11.4 on Alienware m14x



## l2f (Jan 8, 2021)

Remarks:​- should work for FreeBSD 12 serie too

1- Install FreeBSD 11.4​- download the memstick: FreeBSD-11.4-RELEASE-amd64-memstick.img
# write it onto you usb key:
`dd if=PATH_TO/FreeBSD-11.4-RELEASE-amd64-memstick.img of=/dev/daX status=progress conv=sync`
- plug your usb key into your Alienware, check the bios setting concerning the boot order and power-on the Alienware
- do not forget to add a normal user and add him to the wheel group (he will be able to use the command `su -`)
- configure the network


2- update the system​# log in and become root
`$ su -`

# update the whole system
`$ freebsd-update fetch
$ freebsd-update install`

# restart the beast
`$ shutdown -r now`


3- Packages​# log in and become root
`$ su -`

# bootstrap pkg
`$ pkg bootstrap`

# update pkg
`$ pkg update`

# as it is a desktop machine so install graphic card drivers and the X-11 system
# I use a minimal installation so add/change packages to fit your needs
# - drm-kmod: kernel module for drm
# - xorg-minimal: xorg server minimal install
# - xdm: desktop manager
# - pekwm: my favorite window manager
# - xorg-apps: basic X-11 applications
# - xorg-drivers: for mouse, keyborad, etc.
# - xorg-vfbserver: the frame-buffer server
# - nvidia-440: nvidia drivers (check the last version number)
`$ pkg install drm-kmod xorg-minimal xdm pekwm xorg-apps xorg-drivers xorg-vfbserver nvidia-400.100_1`

# add kernel modules to load at boot
`$ echo "kld_list=\"drm drm2 i915 i915kms nvidia nvidia-modeset\"" >> /etc/rc.conf`

# reboot
`$ shutdown -r now`

# if everything goes right, your console display should change from "ugly (big font)" to "nice (small font)"


4- Xorg configuration and test​# change to the 2nd console (no more disturbing messages from the system)
`Ctrl+Alt+F2`

# log in and become root
`$ su -`

# check the kernel modules
# normally the following modules should be loaded:
# - drm
# - drm2
# - i915
# - i915kms
# - nvidia
# - nvidia-modeset
`$ kldstat`

# get a first config file
`$ xorg -retro -configure`

# replace nvidia by scfb for the device "Card0"
# you can edit the file with `vi ~/xorg.conf.new`
# if something goes wrong restart from the previous step (above)
`$ sed -i '' -e "s|nvidia|scfb|g" ~/xorg.conf.new`

# to stop X you need to log in another console
`Ctrl+Alt+F3`

# on this new console become root
`$ su -`

# return to the previuos console
`Ctrl+Alt+F2`

# test X
`$ X -config ~/xorg.conf.new`

# at this step the screen should be black with a white cursor at the top left position of the screen
# everything should work
# need to stop X
# switch to the 3rd console
`Ctrl+Atl+F3`

# get information about X
`$ ps auxwww | grep -i x`

# from the result, kill the X server
`$ kill -9 X_SERVER_PID`

# check for X messages
`$ less /var/log/Xorg.0.log`

# copy the xorg configuration file
`cp -f ~/xorg.conf.new /etc/X11/xorg.conf`

​5- Window Manager test​# before using xdm, we will test if we do not miss something
# create a file for `startx`
`$ echo "xterm &" > ~/.xinitrc
$ echo "YOUR_WINDOW_MANAGER_NAME" >> ~/.xinitrc`

# we start X with startx
`$ startx`

# you should get an xterm window
# to exit just use the menu from your window manager

# copy the .xinitrc file to .xsession
`$ cp ~/.xinitrc ~/.xsession`


6- Xdm configuration​# change the line of: /etc/ttys
`$ vi /etc/ttys`

# from 'off'


> ttyv8   "/usr/local/bin/xdm -nodaemon"  xterm   off secure


# to 'on'


> ttyv8   "/usr/local/bin/xdm -nodaemon"  xterm   on secure



# reboot to get the xdm screen
`$ shutdown -r now`

You should get the xdm interface 


7- post installation​# check the xorg log and try to solve any error
# specially the font one
`$ less /var/log/Xorg.0.log`


----------

