In this post, I will continue from my last
post and set up my newly installed Arch
Linux for daily use. I am going to install some applications that I use on a day
to day basis. Some of these applications are required for my current dotfile
configuration setup to work properly. The
choice of applications is highly opinionated and your preferences might be
different.
If you had gone for installation via SSH option, then I would suggest you to
edit your sshd_config file and disable root login. It can be a security risk
otherwise.
Terminal-based browsers are very handy in cases when you are required to login
into a captive portal and you don't have access to a graphical browser. We will
install two different browsers, elinks and w3m.
sudo pacman -S apache# Make your user-directory available to apache servermkdir ~/public_htmlchmod o+x ~chmod o+x ~/public_htmlchmod -R o+r ~/public_html
bash
# To enable virtualhosts, uncomment the following line in `/etc/httpd/conf/httpd.conf`Include conf/extra/httpd-vhosts.conf
Add your virtualhost configuration in following file -
bash
sudo vim /etc/httpd/conf/extra/httpd-vhosts.conf
To test the virtual hosts on you local machine, add the virtual names to your
/etc/hosts file.
Now add these lines to /etc/httpd/conf/httpd.conf:
bash
# Add these at the end of `LoadModule` section.LoadModule php7_module modules/libphp7.soAddHandler php7-script .php# Place this at the end of the `Include` section:Include conf/extra/php7_module.conf
sudo pacman -S mariadb# Initialize the MariaDB data directory prior to starting the service. To do so, run:sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql# Then issue the commands to start the database serversudo systemctl enable mariadb.servicesudo systemctl start mariadb.service# To apply recommended security settings to your database, runsudo mysql_secure_installation
Enable mysqli, mcrypt, zip and bz2 extensions in /etc/php/php.ini.
Create the apache configuration file /etc/httpd/conf/extra/phpmyadmin.conf
apache
Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"<Directory "/usr/share/webapps/phpMyAdmin"> DirectoryIndex index.php AllowOverride All Options FollowSymlinks Require all granted</Directory>
Then include following in /etc/httpd/conf/httpd.conf
All these tools are part of my i3 config with exception of the theme related
packages. So installing them here will help me later while setting up the i3
window manager.
Fonts rendering is one area where Linux still lags behind Windows and OSX. It
can be a nightmare for users to setup fonts properly in Linux. In Arch Linux,
this is even worse. I found some tricks to improve the quality of font rendering
on Arch Linux. Though this is far from perfect, it is manageable. Follow these
steps
on Reddit to fix font rendering. I use Noto Sans, Adobe Source Code Pro, and
Microsoft fonts. My apologies, but I can't help here. Some websites still use
Microsoft fonts.
I use Python extensively and virtual environments are a must for my development
setup. I use pipenv to manage my virtual environments. To install pipenv,
you need to install virtualenv first. To install it, run the following
command.
bash
sudo pacman -S python-virtualenv
Now you are ready to install pipenv. Follow
here to install the tool.