Is Oracle Linux feasible for a desktop enviroment or is it strictly server oriented?
Oracle Linux is based upon RHEL (Red Hat Enterprise Linux). It can be used either as a server or as a desktop, as a compatible alternative to RHEL.
As for a desktop, if you're looking for bleeding-edge packages (GNOME 3, recent versions of KDE, etc...), you will not find them in in Oracle Linux or any RHEL clone (CentOS, Scientific Linux etc...).
As usual it depends on what you are looking for or what you consider feasible.
Yes RHEL and all of it's derivatives can be used as a desktop distribution, they do contain the graphical environment and a choice of Gnome and KDE desktops. I believe even XFCE is included in the main repository but I'm not 100% sure about that.
But as @renan pointed out, RHEL is aimed at business customers who want stability more than the latest new features so you will not find the most recent editions of the desktop environments.
I don't know if Oracle builds and supports these variants as well. But your sales-rep will be happy to tell you. :)
I have been using Oracle Linux for the company that I work for. We started with this Operating System as a Pilot Project to eventually migrate all of the workstations' Operating Systems from Windows XP to Oracle Linux.
Thus far we have received positive feedback from our users. It's a great option to replace Windows as it provides practically everything that Microsoft does and on top of that it's brutally fast.
I am not a Linux expert and I didn't take me much to get started with it. You can find any information you want online, basically from all the Linux communities. It took me a couple of weeks to get acquainted with YUM and the repositories issues, but once you learn how to deal with it and couple this knowledge with all the great resources you can find online - trust me my friend, you will never want to go back to any other Operating System again.
It offers everything one needs. The bad thing is that unfortunately from time to time you need to run some Windows based application and Wine may not be able to emulate it perfectly or just not well enough. I had this situation with some government based applications. In order to overcome this problem I downloaded VirtualBox to install the Windows OS and install all of the trouble making kind of software. (Which was great because the main reason that motivated the migration was performance issues and we had the licences for Windows), so the users used everything they needed on Linux and when they needed something else they would just log in the Virtual Machine and do their job. Awkwardly enough, the performance in the virtual machine was incredibly better as well, I don't know if Linux had anything to do with this or VirtualBox, but that is just a fact that screams at you as soon as you get started with the VM.
If you want to access Terminal Servers rDesktop will do the job for you, you can download it from YUM and It's much much faster than the Windows based workstations. If you want to compress and decompress files you will be astonished to see how fast it can do it compared to Windows, especially because you can perform these activities from the command line. Seriously - files that would take 15 minutes to decompress in Windows would require only 2 or 3 seconds with Linux via command line.
So my opinion is: GO FOR IT! Make sure to do this via a pilot project though so you can map all the issues that you need to cross until you reach the optimum opportunity to migrate every workstation that you have. It will pay off the job :)
As a CentOS X86_64 and Fedora 31 X86_64 desktop user for non-commercial use, my experience may be similar to what you will experience on Oracle Linux X86_64. I attached a link to Oracle Linux Documentations as-is for comprehensive reference. https://docs.oracle.com/en/operating-systems/linux.html
As what others have mentioned, Oracle Linux as well as CentOS are meant for stability and maybe security (depends on how you configure your settings). By default, it is pretty secure. There may be things you may need to troubleshoot yourself to make it work as a daily go-to desktop system.
Some considerations to keep in mind while setting up your desktop using Redhat-based Derivatives (e.g. CentOS, Oracle Linux and to some extent Fedora) may include the following:
1) Desktop Environment: Gnome, KDE (KDE is no longer supported on RHEL at the date of writing this answer 13 December 2019). Can refer to the link in Oracle-Base which is a brief introduction to Oracle Linux 8 installation. I presume it should install gnome by default if you are using the minimal option: Server with GUI. https://oracle-base.com/articles/linux/oracle-linux-8-installation
I have experimented installing the GUI using the console on CentOS. I have converted from Gnome to KDE Plasma Workspace, which may need some tweaks to work with your touchpads (from elantech for example).
Some commands to use to install Desktop environment. https://docs.oracle.com/en/operating-systems/oracle-linux/7/admin/ol7-about-yum-groups.html
sudo yum groupinstall "X Window System" -y
This should install the X windows system with Gnome as the desktop environment.
This should activate the gnome display manager (gdm) to display login prompt.
2) systemd service management (otherwise known as system 500,intended by design to replace the old but alive sysvinit service management). It is the default service management as of Oracle Linux 7.https://oracle-base.com/articles/linux/linux-services-systemd A few useful commands are:
systemctl -b -p3 | less
This is to list the error message written to systemd journal during current bootup process of the systemd service management.
This is to list any failed services during the bootup. This can be performed on the console or on the GUI.
3) SELinux (a linux security module or LSM, similar to apparmor, which is implemented default in OpenSUSE or Ubuntu). This is a highly specialised and critical area (if security highly matters to your enterprise or to you for personal security) which i have no expertise in. Oracle Linux has a comprehensive documentation on this. Here is a brief introduction to what to watch out for.
This is to check the status of SELinux which is set to enabled by default.
sudo setenforce Permissive
This is to set the SELinux policy to be not as restricted. Not recommended if your enterprise security requirement is strict.
sudo setenforce Enforcing
This is the reverse of Permissive mode. Security conscious experts usually recommend this setting.
audit2allow -w -a
This is to view the access denial message in detail.
4) firewalld(firewalld service is a replacement for iptables service with new concepts like zones and serivces). This is the default firewall management tool to work with. The GUI tool to manage firewalld is firewall-config which is easy to navigate for a novice user like me. As i am often on public wifi,i usually set my connected network environment as public. In general business environment, you would trust other computers on your network and set it to work. Some useful commands to check if the firewall is running when you are on terminal.
sudo firewall-cmd --state
This is to check running status of your firewall status which is either running or not running.
systemctl status firewalld | less
This is to check the status of firewalld running on your system in a relatively verbose manner. I preferred this method to check my running services, so that i can jump in to troubleshoot if there are issues reported.
5) yum (yellowdog updater, modified is the easy way to install and update rpm packages). Some simple command to install and update your operating system.
sudo yum update
This update all your available packages with package repository.
sudo yum install foo-bar
This install a package called foo-bar.
sudo yum remove foo-bar
This remove a package called foo-bar.
sudo yum repolist
This will list your available repository.