Linux Scoop — Ubuntu Budgie 18.04 LTS Ubuntu…

Ubuntu Budgie 18.04 LTS – See What’s New

Ubuntu Budgie 18.04 LTS is the latest release of Ubuntu budgie. As part of Ubuntu 18.04 flavor this release ships with latest Budgie desktop 10.4 as default desktop environment. Powered by Linux 4.15 kernel and shipping with the same internals as Ubuntu 18.04 LTS (Bionic Beaver), the Ubuntu Budgie 18.04 LTS official flavor will be supported for three years, until April 2021.

Prominent new features include support for adding OpenVNC connections through the NetworkManager applet, better font handling for Chinese and Korean languages, improved keyboard shortcuts, color emoji support for GNOME Characters and other GNOME apps, as well as window-shuffler capability.

Source

How to change the color of your BASH prompt | Elinux.co.in | Linux Cpanel/ WHM blog

You can change the color of your BASH prompt to green with this command:

export PS1=”e[0;32m[[email protected]h W]$ e[m”

It will change the colour of bash temporarily. To make it permanent then add code in bash_profile page.

vi ~/.bash_profile

and paste above code save the file and you are done.

For other colors please see the attached list:

Color Code
Black 0;30
Blue 0;34
Green 0;32
Cyan 0;36
Red 0;31
Purple 0;35
Brown 0;33
Blue 0;34
Green 0;32
Cyan 0;36
Red 0;31
Purple 0;35
Brown 0;33
Light Color Code
Light Black 1;30
Light Blue 1;34
Light Green 1;32
Light Cyan 1;36
Light Red 1;31
Light Purple 1;35
Light Brown 1;33
Light Blue 1;34
Light Green 1;32
Light Cyan 1;36
Light Red 1;31
Light Purple 1;35
Light Brown 1;33

Source

how to force user to change their password on next login in linux ?

Method 1:

To force a user to change his/her password, first of all the password must have expired and to cause a user’s password to expire, you can use the passwd command, which is used to change a user’s password by specifying the -e or –expire switch along with username as shown.

#passwd –expire ravi

#chage -l ravi

Last password change : password must be changed

Password expires : password must be changed

Password inactive : password must be changed

Account expires : never

Minimum number of days between password change : 0

Maximum number of days between password change : 99999

Number of days of warning before password expires : 7

After running the passwd command above, you can see from the output of thechage command that the user’s password must be changed. Once the userravi tries to login next time, he will be prompted to change his password before he can access a shell .

Method 2:

Using chage command:

chage command – Change user password expiry information

Use the following syntax to force a user to change their password at next logon on a Linux:

# chage -d 0 user-name

In this example, force ravi to change his password at next logon, enter:

# chage -d 0 ravi

  • -d 0 : Set the number of days since January 1st, 1970 when the password was last changed. The date may also be expressed in the format YYYY-MM-DD. By setting it to zero, you are going to force user to change password upon first login.

Source

OWASP Security Shepherd – Insecure Cryptographic Storage Challenge 1 Solution – LSB – ls /blog


Thanks for visiting and today we have another OWASP Security Shepherd Solution for you. This time it’s the Insecure Cryptographic Storage Challenge. Cryptography is usually the safest way to communicate online but this method of encryption is not secure at all.

Get your Linux career soaring with 16% off courses site wide. COUPON CODE: LSB16

icsc1

That’s all very straight forward. The key has been encrypted using Roman Cipher. This is incorrect, the correct term is Caesar Cipher. A Caesar Cipher takes a letter from the alphabet, say A, and use a number, like 5. This would change an A to an F, moving 5 places in the alphabet.

REGISTER TODAY FOR YOUR KUBERNETES FOR DEVELOPERS (LFD259) COURSE AND CKAD CERTIFICATION TODAY! $499!

So we need to copy the cipher and go to a decoder that’s available online. We just need to paste the code into the decoder and try 5, 6, 7 places and so on.

https://www.dcode.fr/caesar-cipher easily does this for us.

icsc2

We will leave out how many places in the alphabet that this cipher moves as we would like you to try it yourself. Another challenge down, check!!.

Thanks for reading and if you enjoyed this post please leave comment. Don’t forget to follow also for more tutorials and challenges. Peace.

QuBits 2018-09-21

BUNDLE CLOUD FOUNDRY FOR DEVELOPERS COURSE(LFD232) AND THE CFCD CERTIFICATION FOR $499!

Source

How to Install Rocket.Chat on Debian 9 – LinuxCloudVPS Blog

How to install rocket.chat on Debian 9

Rocket.chat is an open source application that can be used as a team communication solution and can be deployed on your own server. There are many options for this application, such as chatting with team members and friends, using audio and video chat, interacting with website visitors in real time, sharing files and more. In this tutorial, we will install and deploy Rocket.Chat on Debian 9 server. Let’s get started!

1. Update the system

Once you are logged in to your server, you need to update and upgrade RPM packages. You can upgrade and upgrade your server with the following commands:

sudo apt update
sudo apt upgrade -y

2. Install Dependencies

Before starting the Rocket.Chat installation, you need to install the following required dependencies so that the application can work:

Node.js – an open source cross-platform JavaScript run-time environment.
MongoDB – is an open-source leading NoSQL database program written in C++.
cURL- know as “Client URL” is the command-line tool for transferring data.
GraphicsMagick – is a collection of tools and image processing libraries. GraphicsMagick is an ImageMagick fork.

First, we are going to install cURL , MongoDB and GraphicsMagick with this command:

sudo apt install -y curl mongodb graphicsmagick

Run the next command to install the Node.js:

sudo curl -sL https://deb.nodesource.com/setup | sudo bash –

sudo apt install -y nodejs

also you need to install the npm package

sudo npm install -g n

Use n to download and install Node.js version 8.9.3 which is required by Rocket.Chat

sudo n 8.9.3

You can check the Node.js current version with the following command:

node –version
v8.9.3

In order for some npm packages which require building from source, you will need to install the build-essentials and python-dev packages:

sudo apt install build-essential python-dev

Now when you set all the necessary dependencies we can continue with installing the Rocket.Chat.

3. Installing Rocket.Chat

We will use the curl command to download the Rocket.Chat latest version and we will extract into the /opt directory:

cd /opt
curl -L https://releases.rocket.chat/latest/download -o rocket.chat.tgz
tar zxvf rocket.chat.tgz
mv bundle Rocket.Chat
cd Rocket.Chat/programs/server
npm install
cd ../..

There are two ways to populate and start the Rocket.Chat. First one is manually to set the necessary environment variables and start the Rocket.Chat:

export ROOT_URL=http://your_domain-or-IP_addres:3000/
export MONGO_URL=mongodb://localhost:27017/rocketchat
export PORT=3000

Replace ‘your_domain-or-IP_addres’ with your actual domain name or server’s IP address.

Run the Rocket.Chat server

node main.js

The second one is to create the Rocket.Chat systemd service unit:

nano /etc/systemd/system/rocketchat.service
[Unit]
Description=RocketChat Server
After=network.target remote-fs.target nss-lookup.target mongod.target nginx.target # Remove or Replace nginx with your proxy

[Service]
ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js # The location of node and location of main.js
Restart=always # When is set to always, the service will be restarted in any case (hit a timeout, got terminated)
RestartSec=15 # If node service crashes, restart the service after 15 seconds
StandardOutput=syslog # Output to syslog
StandardError=syslog # Output to syslog
SyslogIdentifier=nodejs-example
#User=<alternate user>
#Group=<alternate group>
Environment=NODE_ENV=production PORT=3000 ROOT_URL=https://your_domain.com MONGO_URL=mongodb://localhost:27017/rocketchat

[Install]
WantedBy=multi-user.target

You can change ROOT_URL and replace the domain you want to use. If you do not have an available domain, you can instead enter your IP address on your server. You can also change the port number that is currently set to 3000 to a port number of your choice.

In order to notify the systemd that you just created a new unit file you need to execute the following command:

sudo systemctl daemon-reload

Start the MongoDB and Rocket.Chat services:

sudo systemctl start mongodb
sudo systemctl start rocketchat

You can check the status of the service by running the command:

sudo systemctl status rocketchat
Output:

● rocketchat.service – RocketChat Server
Loaded: loaded (/etc/systemd/system/rocketchat.service; enabled; vendor preset: disabled)
Active: active (running) since Sat 2018-08-25 08:35:50 CDT; 4s ago
Main PID: 894 (node)
CGroup: /system.slice/rocketchat.service
└─894 /usr/local/bin/node /opt/Rocket.Chat/main.js

If the rocketchat.service is enabled and there are no errors, you can enable it also the automatically to start at boot time:

sudo systemctl enable rocketchat

4. Access Rocket.Chat in the web browser

Now, open http://your_domain-or-IP_addres:3000 in your favorite web browser and you should see the RocketChat login/register screen. The first user created will get administrative privileges by default.

That’s it. You have successfully installed Rocket.Chat on your Debian 9 VPS. For more information about how to manage your Rocket.Chat installation, please refer to the official Rocket.Chat documentation.

installing rocket.chat on debian 9

Of course, you don’t have to do any of this if you use one of our Debian Cloud VPS plans, in which case you can simply ask our expert Linux admins to set Rocket.Chat web communication and collaboration software for you. They are available 24×7 and will take care of your request immediately.

Be the first to write a comment.

Source

Mod_Expires Configuration In Apache – LinuxAdmin.io

How to setup mod_expires in Apache

mod_expires is a module which runs on the Apache web server. It allows manipulation of the cache control headers to leverage browser caching. What this means more specifically is that you will be able to set values on how long the image will be stored by the browser when a client makes a request. This will greatly improve page load times on subsequent requests by that same client. If a asset it set to not change very often, then using longer cache times are better, if the asset changes frequently you would want to use a shorter cache time so that returning visitors will see the updated asset. You can read more about the granular configuration on Apache’s site.

This guide assumes you already have a working version of Apache web server. If you do not, please see How To Install Apache.

Verify mod_expires is loaded

First you will want to check to see if mod_expires is loaded by performing the following

$ httpd -M 2>&1|grep expires
expires_module (static)

If it returns nothing, you will need to verify mod_expires is loaded the the config:

cat httpd.conf|grep expires
#LoadModule expires_module modules/mod_expires.so

If it is commented out, you will want to uncomment it and restart Apache.

Configure mod_expires Rules

You will now want to set rules for your site. The configuration can either be placed in the .htaccess or directly in the Apache vhost stanza. The expiration time you will want to set largely depends on how long you plan on keeping the asset as it is. The below ruleset is fairly conservative, if you do not plan on updating those media types at all, you can set them for even a year before expiration.

In this example we will just set the mod_expires values in the .htaccess file in the document root

nano .htaccess

Add the following, adjust any for longer or shorter times depending on your needs:

<IfModule mod_expires.c>
# Turn on the module.
ExpiresActive on
# Set the default expiry times.
ExpiresDefault “access plus 2 days”
ExpiresByType image/jpg “access plus 1 month”
ExpiresByType image/gif “access plus 1 month”
ExpiresByType image/jpeg “access plus 1 month”
ExpiresByType image/png “access plus 1 month”
ExpiresByType text/css “access plus 1 month”
ExpiresByType text/javascript “access plus 1 month”
ExpiresByType application/javascript “access plus 1 month”
ExpiresByType application/x-shockwave-flash “access plus 1 month”
ExpiresByType text/css “now plus 1 month”
ExpiresByType image/ico “access plus 1 month”
ExpiresByType image/x-icon “access plus 1 month”
ExpiresByType text/html “access plus 600 seconds”
</IfModule>

Once you have set those values, further subsequent requests should now start setting expires headers. If you set the expires values directly in the Apache v-host stanza, you will want to restart Apache.

Testing mod_expires to ensure its working correctly

There are a couple different ways, you can use the developer tools in a browser to verify the expires value is being set correctly. You can also test this functionality with curl. You will want to curl the URL of the file you are checking

$ curl -Is https://linuxadmin.io/wp-content/uploads/2017/04/linuxadmin_io_logo.png
HTTP/1.1 200 OK
Date: Mon, 09 Oct 2017 23:10:29 GMT
Content-Type: image/png
Content-Length: 6983
Connection: keep-alive
Set-Cookie: __cfduid=d7768a9a20888ada8e0cee831245051cc1507590629; expires=Tue, 09-Oct-18 23:10:29 GMT; path=/; domain=.linuxadmin.io; HttpOnly
Last-Modified: Fri, 28 Apr 2017 02:21:20 GMT
ETag: “5902a720-1b47”
Expires: Sun, 30 Sep 2018 21:49:53 GMT
Cache-Control: max-age=31536000
CF-Cache-Status: HIT
Accept-Ranges: bytes
Server: cloudflare-nginx
CF-RAY: 3ab5037b7ac291dc-EWR

The line you are checking for is what starts with Expires:

Expires: Sun, 30 Sep 2018 21:49:53 GMT

this should return a time based on the mod_expires value you set. That is it for setting mod_expires headers in Apache to leverage browser caching.

Oct 9, 2017LinuxAdmin.io

Source

Configure Graylog Server with Puppet | Lisenet.com :: Linux | Security

We’re going to use Puppet to install and configure a Graylog server.

This article is part of the Homelab Project with KVM, Katello and Puppet series. See here (CentOS 7) and here (CentOS 6) for blog posts on how to configure a Graylog server manually.

Homelab

We have a CentOS 7 VM installed which we want to configure as a Graylog server:

syslog.hl.local (10.11.1.14) – Graylog/Elasticsearch/MongoDB with Apache frontend

SELinux set to enforcing mode.

See the image below to identify the homelab part this article applies to.

Configuration with Puppet

Puppet master runs on the Katello server.

Puppet Modules

We use graylog-graylog Puppet module to configure the server. The module only manages Graylog itself. We need other modules to install the required dependencies like Java, MongoDB, Elasticsearch and Apache (as a reverse proxy):

  1. puppetlabs-java
  2. elastic-elasticsearch
  3. puppet-mongodb
  4. puppetlabs-apache
  5. saz-rsyslog

Please see each module’s documentation for features supported and configuration options available.

Katello Repositories

Repositories for Graylog, Elasticsearch and MongoDB are provided by Katello (we configured them here).

Note that Graylog 2.4 does not work with Elasticsearch 6.x, we’ll therefore use Elasticsearch 5.x.

Install MongoDB

class { ‘mongodb::globals’:
## Use Katello repository
manage_package_repo => false,
}->
class { ‘mongodb::server’:
ensure => ‘present’,
restart => true,
bind_ip => [‘127.0.0.1’],
port => 27017,
smallfiles => true,
}

Install Elasticsearch

class { ‘elasticsearch’:
ensure => ‘present’,
status => ‘enabled’,
## Use Katello repository
manage_repo => false,
restart_on_change => true,
}->
elasticsearch::instance { ‘graylog’:
config => {
‘cluster.name’ => ‘graylog’,
‘network.host’ => ‘127.0.0.1’,
},
jvm_options => [
‘-Xms512m’,
‘-Xmx512m’
]
}

Install Java and Graylog

include ::java

class { ‘graylog::server’:
enable => true,
ensure => ‘running’,
config => {
‘is_master’ => true,
‘password_secret’ => ‘3jC93bTD…OS7F7H87O’,
‘root_password_sha2’ => ‘008e3a245354b…f0d9913325f26b’,
‘web_enable’ => true,
‘web_listen_uri’ => ‘http://syslog.hl.local:9000/’,
‘rest_listen_uri’ => ‘http://syslog.hl.local:9000/api/’,
‘rest_transport_uri’ => ‘http://syslog.hl.local:9000/api/’,
‘root_timezone’ => ‘GMT’,
}
}->
##
## Use a script to automatically create
## UDP Syslog/GELF inputs via Graylog API.
##

file { ‘/root/syslog_inputs.sh’:
ensure => file,
source => ‘puppet:///homelab_files/syslog_inputs.sh’,
owner => ‘0’,
group => ‘0’,
mode => ‘0700’,
notify => Exec[‘create_syslog_inputs’],
}
exec {‘create_syslog_inputs’:
command => ‘/root/syslog_inputs.sh’,
refreshonly => true,
}

The content of the file syslog_inputs.sh can be seen below.

We create two Graylog inputs, one for syslog to bind to UDP 1514, and one for GELF. See the section below for port redirection from UDP 514 to UDP 1514 as Graylog cannot bind to UDP 514 unless run as root.

#!/bin/bash
GRAYLOG_URL=”http://admin:[email protected]:9000/api/system/inputs”;

GRAYLOG_INPUT_SYSLOG_UDP=’
{
“global”: “true”,
“title”: “Syslog UDP”,
“configuration”: {
“port”: 1514,
“bind_address”: “0.0.0.0”
},
“type”: “org.graylog2.inputs.syslog.udp.SyslogUDPInput”
}’;

GRAYLOG_INPUT_GELF_UDP=’
{
“global”: “true”,
“title”: “Gelf UDP”,
“configuration”: {
“port”: 12201,
“bind_address”: “0.0.0.0”
},
“type”: “org.graylog2.inputs.gelf.udp.GELFUDPInput”
}’;

curl -s -X POST -H “Content-Type: application/json” -d “$” $ >/dev/null;
curl -s -X POST -H “Content-Type: application/json” -d “$” $ >/dev/null;

exit 0;

Configure Firewall

Configure firewall to allow WebUI, syslog and GELF traffic. Also configure port redirection as Graylog cannot bind to UDP 514 unless run as root.

firewall { ‘007 allow Graylog HTTP/S’:
dport => [80, 443, 9000],
source => ‘10.11.1.0/24’,
proto => tcp,
action => accept,
}->
firewall { ‘008 allow Syslog’:
dport => [‘514’, ‘1514’],
source => ‘10.11.1.0/24’,
proto => udp,
action => accept,
}->
firewall { ‘009 redirect Syslog 514 to Graylog 1514’:
chain => ‘PREROUTING’,
jump => ‘REDIRECT’,
proto => ‘udp’,
dport => ‘514’,
toports => ‘1514’,
table => ‘nat’,
}->
firewall { ‘010 allow Gelf’:
dport => [‘12201’],
source => ‘10.11.1.0/24’,
proto => udp,
action => accept,
}

Apache Reverse Proxy with TLS

Install Apache as a reverse proxy for Graylog.

class { ‘apache’:
default_vhost => false,
default_ssl_vhost => false,
default_mods => false,
mpm_module => ‘prefork’,
server_signature => ‘Off’,
server_tokens => ‘Prod’,
trace_enable => ‘Off’,
}
include apache::mod::proxy
include apache::mod::proxy_http
include apache::mod::rewrite
include apache::mod::ssl
include apache::mod::headers

apache::vhost { ‘graylog_http’:
port => 80,
servername => ‘syslog.hl.local’,
rewrites => [
{ rewrite_rule => [‘(.*) https://%%’],
rewrite_cond => [‘% off’],
},
],
docroot => false,
manage_docroot => false,
suphp_engine => ‘off’,
}
apache::vhost { ‘graylog_https’:
port => 443,
servername => ‘syslog.hl.local’,
docroot => false,
manage_docroot => false,
suphp_engine => ‘off’,
ssl => true,
ssl_cert => ‘/etc/pki/tls/certs/hl.crt’,
ssl_key => ‘/etc/pki/tls/private/hl.key’,
ssl_protocol => [‘all’, ‘-SSLv2’, ‘-SSLv3’],
ssl_cipher => ‘HIGH:!aNULL!MD5:!RC4’,
ssl_honorcipherorder => ‘On’,
## Pass a string of custom configuration directives
custom_fragment => ‘
ProxyRequests Off
<Proxy *>
Require ip 10.11.1.0/24
</Proxy>
<Location />
RequestHeader set X-Graylog-Server-URL “https://syslog.hl.local/api/”
ProxyPass http://syslog.hl.local:9000/
ProxyPassReverse http://syslog.hl.local:9000/
</Location>
‘,
}

Configure Log Forwarding on All Servers

We want to configure all homelab servers to forward syslog to Graylog.

This needs to go in to the main environment manifest file /etc/puppetlabs/code/environments/homelab/manifests/site.pp so that configuration is applied to all servers.

class { ‘rsyslog::client’:
log_remote => true,
log_local => true,
remote_servers => false,
server => ‘syslog.hl.local’,
port => ‘1514’,
remote_type => ‘udp’,
remote_forward_format => ‘RSYSLOG_SyslogProtocol23Format’,
}

The result should be something like this:

All servers forward logs to Graylog.

Source

Your next Linux computer? A Samsung mobile phone — The Ultimate Linux Newbie Guide

The Samsung DeX Dock with the Samsung S8 will shortly be able to run stock Linux distributions.The Samsung DeX Dock with the Samsung S8 will shortly be able to run stock Linux distributions.

Yep, you can soon use a Samsung Mobile phone as a fully fledged Linux PC running Ubuntu. Sit it on the Samsung Dock, which is attached to a monitor, keyboard and mouse and et voila!

Samsung say it’s aimed at developers, but there’s no reason why it shouldn’t be suitable for general use. It’ll run Ubuntu. Samsung released this information at its developer conference in San Francisco last week. The new app called “Linux on Galaxy” works best when paired with a DeX station. Apparently it can run on a range of smartphones compatible with the DeX station, including the Samsung Galaxy S8, S8 Plus, or the latest Note 8.

If you want to sign up to receive a notification from Samsung when the project goes live, visit this link: https://seap.samsung.com/linux-on-galaxy

NB: This isn’t the first time Linux has been available in a similar setup. Recently, we covered how to run Linux on your Android phone with or without root access. From there, you can mirror/cast your mobile screen to a TV or monitor with HDMI, and use a bluetooth keyboard and mouse. Here’s a video demonstration of how to do that:

Source

Microsoft Offers its Patent Portfolio » Linux Magazine

The company ends its long war; vows to protect Linux.

In a surprise and historical move Microsoft has released its entire patent portfolio to Open Innovation Network (OIN) by joining the organization. Microsoft has released all 60,000 patents to OIN.

“We bring a valuable and deep portfolio of over 60,000 issued patents to OIN for the benefit of Linux and other open source technologies,” said Erich Andersen Corporate Vice President, Deputy General Counsel.

These patents also include those 235 patents that Microsoft once claimed were infringed upon by the Linux kernel. Linus Torvalds had dismissed those claims stating, “Microsoft just made up the number.”

It’s a major u-turn for Microsoft, which has a history of exploiting patents as a weapon against Linux players. This move brings an end to the long hostility between Linux and Microsoft.

There are more than 2,650 members, including numerous Fortune 500 enterprises, that make OIN the largest patent non-aggression community.

OIN has created a massive pool of patents affecting Linux and open source projects. The organization offers these patents on a royalty-free basis to member organizations. Companies not yet member of OIN can also tap into its pool of patents if they promise not to assert its patents against the Linux system.

Back in 2005, OIN was created by a group of companies with vested interests in open source. The goal was to fend off any patent attacks on open source companies. Founding members included IBM, NEC, SUSE/Novell, Philips, Red Hat, and Sony.

Microsoft has around 90,000 patents, but over 30,000 as still pending with the US Patent Office. Once those patents are approved, they will also become part of OIN pool.

Source

Debian 8.8 LXDE Desktop Installation on Oracle VirtualBox

Debian 8.8 LXDE Desktop Installation on VirtualBox
Debian 8.8 LXDE Desktop Installation on Oracle VirtualBox

This video tutorial shows

Debian 8.8 LXDE Desktop installation

on Oracle

VirtualBox

step by step. This tutorial is also helpful to install Debian 8.8 on physical computer or laptop hardware. We also install

Guest Additions

on Debian 8.8 LXDE for better performance and usability features: Automatic Resizing Guest Display, Shared Folder, Seamless Mode and Shared Clipboard, Improved Performance and Drag and Drop.

Debian 8.8 LXDE Desktop Installation Steps:

  1. Create Virtual Machine on Oracle VirtualBox
  2. Start Debian 8.8 LXDE Desktop Installation
  3. Install Guest Additions
  4. Test Guest Additions Features: Automatic Resizing Guest Display and Shared Clipboard

Installing Debian 8.8 LXDE on Oracle VirtualBox

 

Debian 8.8 New Features and Improvements

Debian 8.8

mainly adds corrections for security problems to the stable release, along with a few adjustments for serious problems. Security advisories were already published separately and are referenced where available. Those who frequently install updates from security.debian.org won’t have to update many packages and most updates from security.debian.org are included in this update. Debian 8.8 is not a new version of Debian. It’s just a Debian 8 image with the latest updates of some of the packages. So, if you’re running a Debian 8 installation with all the latest updates installed, you don’t need to do anything.

Debian Website:

https://www.debian.org/

What is LXDE Desktop?

LXDE, which stands for Lightweight X11 Desktop Environment, is a desktop environment which is lightweight and fast. It is designed to be user friendly and slim, while keeping the resource usage low. LXDE uses less RAM and less CPU while being a feature rich desktop environment. Unlike other tightly integrated desktops LXDE strives to be modular, so each component can be used independently with few dependencies. This makes porting LXDE to different distributions and platforms easier.

LXDE Website:

http://lxde.org/

Hope you found this Debian 8.8 LXDE Desktop installation on Oracle VirtualBox tutorial helpful and informative. Please consider sharing it. Your feedback and questions are welcome!

Source

WP2Social Auto Publish Powered By : XYZScripts.com