DTOS is an Arch-based GNU/Linux distribution that is built around the Qtile window manager, Emacs and dmscripts. In this video, I'm running through a quick installation and first look of the latest build of DTOS.
Your support is very much appreciated. Thanks, guys!
Today, I'm going to be taking a look at the latest version of DTOS.
I rebuilt the ISO for DTOS just yesterday.
This is going to be DTOS version 2023.10.02.
So it's the October 2nd of 2023 ISO.
And if I move over to my desktop here,
the ISOs for DTOS are hosted over on SourceForge.
If you go to SourceForge, go to files, and you will see a folder here for 2023.10.02.
Click on that, and you will find the latest ISO.
It is 3.4 gigabytes in size.
What I'm going to do is I'm going to go ahead and download that ISO.
I'm going to run through a quick installation and
look of DTOS inside a virtual machine.
And of course, this is done not just for my benefit, but
for those of you that are thinking of trying out DTOS.
I'll cover some of the basics, some of the basic key bindings.
Because obviously, DTOS, for those of you that are not familiar with it,
is a little bit different than most other Linux distributions,
because it is heavily centered around Qtile, a tiling window manager,
as well as Emacs, and as well as my DM scripts, which are my D menu scripts.
So I've spun up a virtual machine, and when you come to the boot menu here,
you have the options of booting using the open source drivers or
the proprietary NVIDIA drivers, if you have an NVIDIA card.
Obviously, that's what you should choose.
For a virtual machine, though, all the drivers, the graphics drivers, and
everything for a VM are open source, so I can boot using the open source driver.
One thing I do wanna warn you is it will take a minute or
two for the live environment to load.
There is a systemd start job that causes some issue, and
I'm not sure which one it is, but it hangs for a little bit.
But this only happens on a live environment, on a live USB, or
in my case, I'm booting directly off the ISO.
After DTOS is actually installed, it does not hang like this on startup.
It starts up just fine.
And the live environment, it's finally loading.
And after a second or two, the Calamares installer will automatically launch.
Now, if for some reason you have to close out of the Calamares launcher and
you wanna launch it later, for example, if I hit Cancel, how do I get Calamares back?
Well, the Kaki will tell you that SuperShift Return gives you a run prompt,
which is D menu.
So if I hit SuperShift Return, I get our run prompt here, and
I could type Calamares, but you don't wanna just launch Calamares by typing
the command Calamares, because you need sudo privileges,
you need root privileges for Calamares.
So the command you wanna run is actually calamares-pawkit, and run that.
And now you will launch Calamares as root, and
now you should be able to run through the installation just fine.
So the first screen we see here is just the welcome screen for Calamares.
Just click Next, and then choose your time zone.
Now, it's based off of geolocation, so
hopefully it chooses the correct time zone for you.
It has correctly chosen the central time zone in the US for me, so
I'm just gonna click Next, and then choose your keyboard layout.
English US is correct for me, so all I need to do is click Next, and
then do your partitioning.
Now, do you want to do the automatic partitioning, or
do you want to run through a manual partitioning?
So I'm gonna choose this option here, erase disk, and
I'm gonna go ahead and choose to create a swap file.
The file system I'm gonna choose is Extend 4, that's what I recommend you guys try.
That's a tried and true, very stable file system that most Linux distros
default to these days.
And then we need to create our username and our password.
I'm gonna call my user dt, and I'm gonna create a super secure password for
the dt user, and then repeat the super secure password.
And then require strong passwords, I have that turned off,
that way I don't have to type an excessively long password.
And then log in automatically without asking for a password,
I always leave that ticked off.
You should have to enter a password to get into any computer,
just for privacy reasons.
And then use the same password for
the administrator account that's ticked on by default.
I would leave that ticked on, that way your sudo password and
your user's password, in my case, the dt user, their passwords are the same.
That way you don't have to remember two different passwords.
And then click Next, and then you have your summary here, everything looks good.
So I'm gonna go ahead and click the Install button.
It's gonna warn us that it's about to format the drive and write to the disk.
I'm gonna click Install now, and away it goes.
This portion of the installation will typically take about ten minutes or
so on my machine.
Now as the installation progresses, there is a slideshow I've created.
I don't know, four or five different images here for the slideshow.
Basically, just some fancy screenshots of Qtile and Emacs.
So just something to look at while you wait.
I'm gonna go ahead and pause the video.
I'm gonna go grab me a cup of coffee.
I'll be back once this portion of the installation has completed.
And the installation of DTOS has completed.
That took about ten minutes or so.
And as always with the Calamares installer, you need to click on Restart.
Now make sure that is checked.
And then go ahead and click the Done button, and
that should automatically reboot your machine for you.
If you're doing this on physical hardware,
of course, you need to unplug your USB stick at that point.
So I'm gonna go ahead and click Done.
And the VM reboots just fine.
You can see we get a grub menu here.
So I'm gonna go ahead and log in.
And we come to our Login Manager.
The Login Manager, of course, is SDDM.
And by default, the session is Qtile.
Now, Qtile, that session is an X11 session.
But Qtile does have an experimental Wayland session you could choose.
Now, do not choose the Wayland session because my Qtile config for
DTOS is not set up for Wayland in any way.
I don't install any components of Wayland on the ISO.
So the Wayland version will not work.
If you try to log in, it's just gonna crash.
It'll be a black screen.
You're probably gonna have to do a hard reboot of your computer at that point.
So just go with the default X11 session for Qtile.
And then let's go ahead and log in.
And it successfully draws our wallpaper, Kaki launches successfully.
And of course, Qtile, we've got our panel with all our widgets,
the SysTray with various widgets.
And you notice inside the VM,
it actually did a 1920 by 1080 screen resolution by default.
I came up with a hacky solution for that.
I'll show you in just a second.
But I do want to tell you a little bit about what is in the panel.
So obviously, you have nine workspaces for Qtile.
So Super 1 through 9, so right now I'm on Workspace 1.
If I go to Super 2, I go to Workspace 2.
I'm on Workspace 2 right now.
I'll do Super Enter to launch a terminal.
If I do Super 1, I go back to Workspace 1.
If I go Super 2, I go back to Workspace 2.
If I do Super Shift 1, I send that window back to 1.
Super 1 takes me to Workspace 1.
Super Shift 4 sends that window to Workspace 4.
Super 4 would take me to Workspace 4.
And to close any window with focus in Qtile, Super Shift C.
So those are the key bindings.
Let me Super 1 to get back to Workspace 1.
We've already discussed that Super Shift Enter is D menu,
which is our run prompt.
So you can launch programs from D menu.
I also have Super B as a key binding.
Super B for browser.
It's the Brave browser by default.
But of course, you're free to install any browser you want.
But you could go ahead and set Brave as your default browser.
And then choose whether you want the match system setting,
light mode or dark mode.
For me, I always prefer dark modes.
So I choose that.
And then away I go with the Brave browser.
If I move my head out of the way,
the conky will give you some other key bindings
that are important, such as these Super plus E
plus another key.
These are key bindings for Emacs.
Super P plus another key.
These are all the prompt key bindings.
So this is for DM scripts.
So DM scripts is a collection of D menu scripts
that I basically maintain over on my GitLab.
So let me show you some of the DM scripts.
Super P followed by H launches the DM hub.
So Super P and then H launches DM hub.
All this is, this is a menu of all of the other DM scripts.
So I could choose one of the other DM scripts,
such as DM dash kill, which the DM kill DM script,
what this is, it's a list of all the processes running
at the time that we run the menu.
And then you could pick one of these processes
to actually kill the process.
One of the most important ones that you need to know
about right away is Super P plus B.
You can think of B for background.
So Super P B.
And it's asking you what you wanna do
as far as a wallpaper or a background.
Do you wanna go ahead and set one
or do you want to choose one at random?
Let's choose set.
And when I choose to set a background,
it's gonna launch SXIV, which is our image viewer.
And it has to launch about 300 wallpapers
because I ship about 300 wallpapers
as part of D2S as a collection of wallpapers.
And these wallpapers, by the way,
it's a wallpapers repository I maintain
over on my GitLab once again.
And then you just navigate to a wallpaper,
just whichever one you want with the arrow keys.
Let's say maybe this is the wallpaper I want.
What I need to do is then hit M on the keyboard to mark it.
And this is the XIV standard key binding,
M to mark an image.
And once that's marked,
if I do Super Shift C to close the window with focus,
SXIV then will run an external script.
And that external script basically says,
take that image and set it as our wallpaper.
So that's kind of how that particular DM script works.
That is dm-setbg is the name of the program.
If you needed to run it from D menu, type dm-setbg.
But again, you have Super P B to run the script.
If you wanted to, you could pick a wallpaper at random.
And if you would like that, choose yes.
If you don't like it, choose no.
And it'll grab another one at random.
No, another one at random.
But you know what?
I like this one, I'll choose yes.
Some of the other DM scripts,
there's about 30 of them.
But the only ones I have in the cocky are actually,
just to save on space,
are some of the ones that I think
are some of the more important ones like dm-man.
How often do you need to read a man page?
Well, I read man pages all the time.
So for me, Super P M for man page, right?
Do you want to search for a man page
or get a random man page?
Maybe you just want to learn something new that day.
So give me a random man page to read.
That's kind of nerdy,
but you know, I like that kind of stuff, actually.
I do a lot of random reading.
But let's search for a specific man page.
So I'm going to search for the man page for,
let's search for the dmenu man page.
And it launches our terminal emulator,
which is the Alacrity terminal,
and it launches the dmenu man page inside Alacrity.
And here we can read all about dmenu, right?
Q to quit out of that.
Another key binding, Super P S for search.
So you think of this as web searches,
search indices.
So you can search things like Amazon or the ArchAUR,
or just the standard Arch repos for Arch packages,
or you can search the Arch wiki.
You can search with Brave Search or Bing Search.
You can search CNN, various news sites,
eBay, GitHub, GitLab, Google.
You can search YouTube and of course,
things like Wikipedia and Wiktionary
and various other sources.
And when you run those searches,
those searches, of course,
the results launch in the Brave browser.
Now I mentioned DTOS is very Emacs centric.
There's a lot of Emacs configuration
already done out of the box.
There's a lot of key bindings for Emacs
already set up for you out of the box.
To launch Emacs, it launches the Emacs client.
The Emacs server is always running on DTOS
unless it's crashed or you have killed it for some reason.
So Emacs is actually running in the background.
To bring up a client window,
Super E followed by E should launch my version of Emacs,
lovingly called DT Max.
It's just a pre-configured Emacs with evil mode.
So it uses the Vim key bindings and all of that.
To navigate around in Emacs, you could do space period.
Most of the key bindings that I've set
begin with space as the leader key.
Space period runs the find file command
and you could navigate to a file, hit enter.
And this is a file that maybe you wanna edit inside Emacs.
Again, it uses the Vim key bindings
because it uses evil mode.
So that's a mode in Emacs that faithfully mimics Vim
and it's really, really good emulation.
So if I do capital G, goes to the last line,
GG to the top line, J goes down, K goes up,
L goes right, H goes left.
Pretty much all of your Vim commands
work inside evil mode in Emacs.
If you want a terminal emulator inside Emacs,
space TV for toggle vterm.
Vterm is a program that runs inside Emacs.
So this is our terminal emulator
and it's a standard terminal emulator.
By default, it runs the phish shell.
Same thing with the alacrity terminal.
Let me super shift C to kill that Emacs window.
But the alacrity terminal, super enter,
also runs phish out of the box
as far as your user's default shell.
Of course, you're free to change that.
That's just what it ships with out of the box.
One thing with all of the terminal emulators in DTOS,
whether it's alacrity or vterm inside Emacs
or even the eshell inside Emacs,
you're always gonna get a random color script.
So this is part of my shell color scripts package,
another of one of my programs
that I maintain myself over on my GitLab.
So you always get a random color script
every time you launch a terminal.
And the reason I do this is
because I make a lot of videos with the terminal
and sometimes keeping which terminal is which is handy.
So having a different ASCII art on each terminal
lets me know which terminal is which
or which workspace I'm on in some cases.
One last thing I wanna mention
is the system tray inside the panel here, the Qtel panel.
By default, I have three system tray applets
that do launch and sit in that system tray.
The first one is a clipboard.
Some people have the need for some kind of GUI clipboard
that they can manage all of their copy and paste jobs.
And what I've decided to ship is CopyCue.
This program is called CopyCue.
I go into preferences here.
You know, you've got a ton of different preferences.
It's a very, very powerful clipboard manager.
If I double click it, you will actually get a window
that will actually have everything in its history.
It saves a history of all your copies.
Of course, if you want to clear that, you can.
You can empty it at some point,
especially if it contains sensitive information.
I also ship the network manager applet.
So that's nm-applet.
That's the name of the program.
And that's just for your ethernet and Wi-Fi.
By the way, the networking for DTOS
is managed by network manager.
That's the service that's running.
And then this icon here that right now is red.
Most of the time it should be white,
but right now it's red.
That's letting me know there are updates available.
So that is actually PAMAC.
If I right click the package manager,
you can see it's going to ask me for my sudo password,
because anytime you do any package management stuff,
whether you install packages, remove packages,
update all the software on your system,
you have to enter a sudo password.
So PAMAC is your GUI package manager,
your graphical package manager.
And if I wanted to update, I'd hit the updates button.
It's going to tell me all the packages that have an update.
And it looks like most of it is a bunch of Haskell libraries.
So Haskell is installed on the system
because Pandoc is installed on the system.
But these are very, very small libraries.
If I took that update, I bet it wouldn't
take more than 10 or 20 seconds to run all of these updates.
So let's go ahead.
It's more than 100 updates.
Let's see how long it takes.
It's been running for about five seconds.
You can see I've got about nine seconds.
Well, actually, it jumped really fast.
It probably, in real time, I'm going
to cut out some of the dead air, but that took like 20 seconds.
Don't worry about all those Haskell libraries
that will occasionally pop up.
And it'll be like more than 100 of them
that have to be updated when you do a sudo pacman-syu
or you update through PAMAC.
Those things, they're very, very, very small libraries.
It's not bloat.
It's very small programs.
And actually, I thought the update was completed,
but I guess it was still running some hooks or something
in the background because now we finally get a checkbox
confirming your system is up to date.
Now I'll close PAMAC, and you can see the SysTrait icon
is no longer red with the I.
Now it's white, and it has the checkbox,
so we're all good on the updates.
So there you have it.
That's just a very quick and cursory look
at the latest release of DTOS.
It's really not much different than last month's
release of DTOS.
Really, all I did was just rebuild the ISO
with newer packages.
There are a couple of minor bug fixes in this release,
but nothing most of you guys would have probably noticed
because they're like really deep under the hood changes,
you know, minor tweaks to things I've made.
No major changes as far as like the look and feel
or the workflow or anything.
I do have some, I've got a long list of bugs
that I need to get around to fixing.
I've got a very long to-do list of things
I would eventually like to add to DTOS.
I'm not sure how long it's gonna take me
to get around to some of that stuff,
but at least for the month of October, this ISO,
it is very much DTOS back in the month of September,
just with an up-to-date ISO.
Now, before I go, I need to thank a few special people.
I need to thank the producers of this episode,
Daniel Gabe James, Matt, Paul Royal West,
Armored Dragon, Commander Angry, George Lee,
Methos, Nader, Jan, Paul, Peace Archon, Vador,
Realiteats4Less, Red Prophet, Roland, Solastri,
ToolsDev, WarGen2, and Ubuntu, and Willie.
These guys, they're my high-steered patrons
over on Patreon without these guys.
This quick look at the latest release of DTOS
would not have been possible.
The show's also brought to you by each and every one
of these fine ladies and gentlemen.
All these names you're seeing on the screen right now,
these are all my supporters over on Patreon
because I don't have any corporate sponsors.
I'm sponsored by you guys, the community.
If you like my work, wanna see more videos about Linux,
free and open-source software, and DTOS,
subscribe to DistroTube over on Patreon.
All right, guys, peace.
Finally, there's a Linux distro that takes Emacs seriously.