Tech Over Tea - A Simpler Way To Switch To Linux | Technoporg
Episode Date: October 24, 2025Today we have the developer of the Operese project on the show, a new tool for migrating to Linux directly from WIndows without ever having to manually install Linux.==========Support The Channel=====...=====► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson==========Guest Links==========Operese Video: https://youtu.be/4YUkD5oslmcOperese Repo: https://codeberg.org/Operese/operese==========Support The Show==========► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson=========Video Platforms==========🎥 YouTube: https://www.youtube.com/channel/UCBq5p-xOla8xhnrbhu8AIAg=========Audio Release=========🎵 RSS: https://anchor.fm/s/149fd51c/podcast/rss🎵 Apple Podcast:https://podcasts.apple.com/us/podcast/tech-over-tea/id1501727953🎵 Spotify: https://open.spotify.com/show/3IfFpfzlLo7OPsEnl4gbdM🎵 Google Podcast: https://www.google.com/podcasts?feed=aHR0cHM6Ly9hbmNob3IuZm0vcy8xNDlmZDUxYy9wb2RjYXN0L3Jzcw==🎵 Anchor: https://anchor.fm/tech-over-tea==========Social Media==========🎤 Discord:https://discord.gg/PkMRVn9🐦 Twitter: https://twitter.com/TechOverTeaShow📷 Instagram: https://www.instagram.com/techovertea/🌐 Mastodon:https://mastodon.social/web/accounts/1093345==========Credits==========🎨 Channel Art:All my art has was created by Supercozmanhttps://twitter.com/Supercozmanhttps://www.instagram.com/supercozman_draws/DISCLOSURE: Wherever possible I use referral links, which means if you click one of the links in this video or description and make a purchase we may receive a small commission or other compensation.
Transcript
Discussion (0)
Good morning, good day, and good evening.
I'm as well as your host, Rudy Robertson.
And today, we have the developer of a project
you may have seen the video of
because it was going around quite a bit
about two months ago.
The developer of a project called Oprys.
Oh, is that how you say it?
Yes?
Yep.
Okay, awesome.
For anyone who may not have seen that video,
explain what it is.
So basically it's a tool to migrate a computer from Windows to Linux in place, transferring
all your files, your settings, your programs, with the goal that basically it's a completely
seamless transition so things look a little bit different on top, but non-technical users
can just keep going on and using their computers exactly the same as they otherwise would.
So it's basically an automated migration tool to go from Windows to Linux.
Exactly.
Okay.
I guess the first place to start here is why.
Like, why couldn't someone just go, like, why wouldn't someone just go and install an ISO and then just move the files over?
What, what reason did you have to just go and make this project to do it all seamlessly?
I think that there's a common assumption in the Linux community that you know you just download the ISO, flash a live USB, boot from there, installs,
Linux or copy all your files first and then install Linux and I think we tend to overestimate
the skill of the average user at doing so. And so I've seen this firsthand with some people I've helped
switch to Linux. I just did it a couple days ago actually with someone and they had no idea
what a partition was to write images to a USB and they were like I would have completely lost on my
And so I think there is a need for tooling to make this easier for people who want to make the switch, but don't have the technical confidence to do so.
Mm-hmm, mm-hmm.
I would imagine, so are you doing, you're in university right now.
What are you doing?
Is it like computer science, software engineering, or is it something entirely unrelated?
I actually started out in software engineering, but then transferred to mechatronics engineering, which is kind of a combination of mechanical and electrical, just because,
I wanted to explore a bit of a broader range of technical subjects, but there's still very
much a core software component to it.
So I would imagine a lot of the people around you are probably more technical than the
average person then.
Yes, absolutely.
But even there, you know, if you've done everything on Windows and Windows has automatically
made your petitions for you and managed all this stuff for you, I could easily see why
someone, you know, even someone who's built their own system, if you're doing it on
Windows, you probably have never bothered interacting with petitions, unless maybe you've
installed a new drive after the system's been built and you wanted to petition it weirdly?
Like, that's probably the only time someone actually interacts with it, not at the core
root file system level.
Exactly.
Like, I have friends who are in computer science, very good at it, but even then, they're
still, like, I don't know what NTFS is, so there's a bit of a gap there.
That sounds like a bit of an education gap, but sure.
You're probably right, but whatever the cause may be, it is still there.
So, when you'll, I guess we can go through the process of using the tool.
So how does it all start?
So you launch it on Windows and then what happens from there?
So the sort of intended way that you'll proceed through it is that you'll download the installer, run that sort of standard Windows installer, and then open up the program, and it will show you a very minimal screen, and that sort of minimalism is intentional.
I actually made the UI design initially to look kind of like the Windows installation screen
just to give people a bit of a sense of like at home that I can trust this program
and to show the most important information like let people know there are risks.
Please still back up your data but not show so much detail that people just their eyes glaze over
and they skip through it all because I think there's it's hard to strike that balance
but I've done my best to do that.
And so then once you've read through all that initial information,
then really, you just press start, and then it runs.
It goes through a couple restarts,
and the like three different sort of stages of execution,
which I can get into later if you're curious about the technical details.
But basically, from a UX perspective, it just runs some stuff,
and then ask you to input a new password,
and then reboots one more time, uninstalles itself,
and then you just have your computer, which you keep using.
So I guess before we can get into how it works on the technical side,
what is some of the stuff that's gone wrong during your development process of this?
Because I'm sure it hasn't been entirely smooth sailing.
I can't imagine there's a lot of documentation on handling this process.
No, there have been too many roadblocks to count,
But some of the bigger ones, let me think here.
Just like weird undocumented behavior with Windows APIs,
like creating extended partitions when they're not supposed to.
Or like also weird undocumented abutu APIs,
like figuring out how their live ISOs work
was not easy just based on the stuff on their website.
But then from a technical side also,
I went through a couple sort of revisions.
of the design process went down some dead ends with like running this in VMs or LBM groups
or like how am I going to get the file system set up?
And so I definitely wasted a lot of time trying approaches that I thought might work but didn't.
And then also learning Rust was probably the last biggest one because I didn't know Rust when I started programming something at Rust.
So now I do.
I always love what I hear from a developer that their first project
There's something vastly more complex than any first project should be.
It's like, oh, yeah, so my first project was writing a kernel in Rust.
Yeah, so my first project was writing a migration tool.
Like, you know, most people are like, yeah, I'm going to write a calculator.
I'm going to do a, I don't know, basic HTTP.
Just like, you know, things that are fairly well understood.
And you're like, nah, that's boring.
Yeah, we're a strange breed.
I guess, but it worked out at the end
and so, I mean, I had done lots of programming
before so it's not like this was my
first ever foray into the world
of computers, but it still
definitely was a learning curve.
So, I guess on the technical
front,
how does something
like this work? Because I know there have been
in the past
there were
Windows-based, I think it was a Windows
based Ubuntu installer. It was
It wasn't a migration tool.
Sorry?
A wubi, I think it was called.
Something like that, yeah.
Yeah.
But it wasn't a migration tool from my understanding.
It was basically, I believe it's set up like a dual boot, if I remember correctly.
Yeah, so basically the way that worked, as I understand it, is that it would allocate like a disk image file on Windows and then boot into that somehow chain loaded from the Windows bootloader and then run Ubuntu off of that.
And so, like, it was native Linux, but it was, like, mapped to Windows file system in a weird way and had some issues that are not present in a normal system.
And so they eventually deprecated that in favor of just install it yourself.
So it was never really a proper installation.
It was always tied to the Windows file system in a weird way.
Exactly, yeah.
So if you had, I've never used this tool.
If you'd gotten rid of the Windows install on that system,
would that have then also broken the Ubuntu install?
It would have, to my understanding, yes.
I've also never used it,
but I did read up on that when I was trying to figure out
how I was going to do things on my end.
So there is some prior literature on doing weird installing Linux from the window side,
just not...
Okay, is there any prior attempts at doing what...
Operase is doing, or is this specific route something relatively new?
I think this doing it this comprehensively is new, but parts of the process have been done before.
Like one project, FerranOS, they have a tool where, like, you, in their live USB,
copy some data automatically over from Windows, and then copy it back once you've actually
installed the system, but still you have to manually go in and do some of those things yourself.
whereas what Oprys does
it does it all
like itself automatically
and so I think on this scale
it's new but I'm definitely standing on the shoulders
of giants and working
based on some things that have already been done
Okay
So on the technical side then
How does any of this work
And I'm sure there's a lot of different
areas to approach this from
I'm sure there's some window stuff that happens
there's some out of like there's some Linux stuff that happens
there's some stuff that somehow bridges the two together
but I have no idea of even where to begin with something like this
so I guess from the start of the process
and we'll work our way to a full installed Linux system
okay uh how much technical knowledge could I assume
on the part of your listeners if there's any word
if there's any phrase we need to explain we'll just pause it there
and explain the term and go forth
Okay, okay, sounds good.
I mean, it's not like that bad.
I think I can make it pretty approachable.
But basically what happens when you start
is that it's just running in Windows
and sort of the key constraint here
is that Windows starts at the beginning of the disk,
the partition there, and you cannot shrink to the left,
but we would like to get Linux at the start of the disk.
You can only shift like NTFS
EXT4, all major file systems, you can grow or shrink them to the right, but never to the left.
And the left is where we would like to put the new Linux partitions.
So how are we going to get around that?
And I do it kind of via an indirect way.
So start by shrinking the Windows partition to the right, and then at the very end of the disk,
just copying over a full Ubuntu live ISO disk image to a new partition there, and then
installing Grub. And then once that's done, I restart into the Linux partition that's at the end of
the disk. And then you have that there. You're no longer in Windows. And so you kind of have more
flexibility to do whatever you want with the NTFS file system now in order to get it out of the way
and get the Linux partition at the start. Are you sort of following so far? Or am I going to
quickly? That's all good. Okay. Perfect. Yeah. And so then the challenge
really how do I get the Windows partition and all its data to move to the right.
And one option is just to like shift it over byte for byte using something like SF
disk.
That's what KDE partition manager does under the hood.
But on real disks, it's like non-incremental and fairly un-resilient against any disk errors.
So that's what I was doing in...
Would it be a slow process as well?
Yes, exactly, because basically you're just like
take the last byte and then move it over
and then take the next last bite and then move it over again
and just keep doing that until you've moved like every bite
of the partition over without even being aware of the file system
or anything like that.
And so it's not the best way to do things by any means.
It is what I was doing in my first demo video, incidentally,
I've gotten a way better approach since then, which I had been needing to do for a while.
You also said it wasn't very resilient.
So if you had, if there was some, like a power outage, would everything just basically be bricked?
Because you'd have bites out of order or bites not aligned.
Yeah, they're all just kind of like strewn across the hard drive in the process of moving.
And the file system is totally corrupted.
There's no log of what's going on.
And so a people's data is something I take very seriously, and any risk of losing that, I do want to minimize.
And so what I've done now is written a custom file system to get around that, which is something I mentioned to you at the start.
And it's not as crazy as it sounds, but basically the premise here is that you can't shrink most mainstream file systems to information.
from the left, but what if you could?
And so I created one which starts at like the like basically
like right before the intermediate Linux partition,
I call it, the one I put right at the end of the disk,
and then it grows from there towards the start of the disk.
And so you kind of have windows here.
I'm very much explaining with my hands here,
so I apologize to any audio listeners.
You have windows on the left and this custom file
system on the right, which I call pay cats.
and then you're shrinking Windows from the right,
and then you're growing K-Kats to the left
towards the start of the disk.
And so it's kind of like you're taking the data out of Windows,
and as that shrinks,
then you're moving this custom file system
and growing it into the space that just got freed.
Okay, so you're...
As you're shrinking the Windows petition,
you're basically, I guess, encroaching,
into that space with your new file system.
Exactly.
And it just behaves, it just behaves like a stack, basically.
So you push files on, one on top of the other, and it's just right to left instead of left to right.
And so that is like sort of incremental.
And so if there were a power outage, like all the files not touched would still be on the
NTFS side, all the files that are moved would be on the K-KATS side, and K-KATS is just
stack backwards, which is why I gave it that name.
Oh, yeah, I didn't catch that. Yeah, that makes sense.
Yeah, so I felt pretty clever when I came up with that one, but...
That's very much a developer name. I appreciate it. Thank you. And yeah, so after it's
moved all that data over, like you've got this file system which has grown from basically
the end of the disk to the start, and you've taken all the relevant files out of the Windows
partition, and so you can just delete the Windows partition then, and there you go.
You have your free space at the start of the disk to install Linux, and then you're not
leaving people with, like, weird empty space at the start, or, like, some strange volume group
that fills it up afterwards, you just have nice clean disk geometry going from the start to the end with one partition.
And then you just reboot into that, pop all the files off the stack, back into Linux, the final Linux,
and then you shrink my file system to the right, you grow Linux to the right as well.
And then, oh, sorry, you shrink it to the left, and then you grow Linux to the right.
And then you just pop all the files back off one by one until you've got them back.
And then it goes through and reinstalls all the programs and creates user accounts based on some, like, data manifests that got generated on the Windows side that encode, like, where are the wallpaper paths, what are the user accounts, what files do we care about, and then it just goes through and uses some KDE or occasionally Kubuntu tools to do those changes.
And then, yeah, after that, it just restarts and is deleted the intermediate stage.
By this point, it's all, like, clean as you'd expect it to be, and then it's done.
That's the end.
So you say files that we care about, so you definitely want you to be skipping your program files and things like that,
stuff that's very Windows relevant, but you want to make sure your, you know, your user files, documents, pictures, things like that, those are being brought over.
Yes, exactly.
And so things like the Windows kernel, we don't need to transfer that over.
For example, nobody needs that anymore.
And so it's best not to waste space by migrating that.
And that also enables us to have fairly low, like, free disk space requirements,
because then it's not like you need to have space to make a full copy of everything.
You just need a little bit of space for this intermediate stage at the end.
and then you're basically just moving files around
so from Windows to K-Kats and then back to Linux the final time
and it's all like kind of just juggling rather than like
rather than cloning so to speak and the free space can basically be guaranteed
by saying okay this is how much space is taken up by stuff on Windows
so obviously you're going to need some
gap there to do that
intermediary stage
how much space
well okay
how much overhead is
the window stuff itself
the stuff that you're not going to bring over
like on a clean windows install
probably
15 to 20 gigabytes
like it's a lot
and obviously if you've used
that window system for a while
you're going to have a bunch of extra stuff
like an extra
you know
Adobe blah blah blah
but whatever nonsense you've got installed
Yeah. And actually before running it, like the whole repartitioning stages, then it runs like the disc cleanup tool and removes like update backups or whatever just to maximize the chance that there will be enough space to do this.
And if there isn't, then it just won't run.
But then after that, what was it going to say?
Yeah, after that, I only have the user home directories migrating right now, and that's something I'd like to change in the future, but for now, quite a bit of space is being saved by that.
So, obviously, if you had a completely full disk, you wouldn't be able to do this intermediary stage.
What sort of space would you need to make that work?
I conservatively have the minimum set to 25 gigabytes right now, but realistically, it's only about 5 gigabytes, because this intermediary stage, it's just like basically the contents of an Ubuntu live ISO that I have taken and applied some customizations to and then packed back down into a compressed file system, and so it really does.
doesn't take up all that much space.
Mm-hmm, mm-hmm.
Okay, so that is getting the files transferred over.
So how do you, how is, how do I say,
the process is getting Linux installed from that point?
Is that just a normal, basically, Linux installation from there?
You're just doing it in an automated way?
Yes, so Ubutu has a,
They are automated installer called Subiquity, and that's Ubiquity for servers.
Ubiquity was their old desktop installer, and so it's just an unattended means of installing Linux on a fresh system.
And on their official live ISOs for Ubuntu desktop, it's meant to be run from like a USB targeting the main drive.
But as it turns out, you can run it from one partition targeting another partition.
and nothing's stopping you.
So that is something which I was very thrilled to discover.
And so it's just like you're running from there
and targeting another part of the disk with the live installer.
And then that runs.
It copies over all the files from the compressed file system
into this final installation.
And then you're done.
I can imagine why I do like that.
Like if you're setting up some, you know, server farm, right?
Like, you're gonna, you're like some, you're using a bunch of virtual machines.
Like, I could very easily see why that's a feature they would include in there,
even if it may not necessarily be the way that most people would be interacting with it.
Even if it's like, yes.
Yeah.
It, anyway, so the, the process sounds quite simple.
But I'm sure it's a lot more complex than it sounded.
Like, you've done a good job at explaining it.
But, thank you.
Like, how long did this...
Well, firstly, how many other things did you try before you got to this idea of using a stack-based file system where you can just transfer things, you know, in and out?
And once you came up with the idea, how long did that take you to get to a point where you were comfortable using it?
So I had the idea for this whole thing May of 2024, so it's been a while.
And so I kind of started casually working on it then really none of the code from that time has survived, which is a blessing for everyone except for like one little utility crate.
And so then I mean, I worked on it off and on a bit, but it was only really like a year ago this time that I kind of got serious about it.
And so first what I tried was like doing the installation of Linux from a,
VM running on Windows with raw disk access to the host hard drive, and that was a terrible
idea on many levels, and so I didn't go down that road any further.
Did it technically work?
I never got it to that point.
Okay.
I saw the light before I invested too much more time in getting that approach to function.
I think it could technically work, don't get me wrong, but whether it should is a question
that's pretty easy to answer.
And the answer is no.
And so, yeah, then after that,
the approach that I tried was just the, like,
sort of brute force taking all the bites
and pushing them over to the side.
And that I did get to work.
That's what you saw in the first video demo,
which many people are convinced
was like a technical miracle,
and it was really like a bunch of hacks
that nobody saw.
And, okay, yeah.
Yeah, and then sort of this system with the stack-based file system, I just implemented this summer.
And so I think that's kind of now the approach that's going to be used going forward.
Like the core structure of the migration isn't going to change that much.
Of course, there's still lots of work left to be done, but the foundation that we have I'm very happy with.
So you've talked about how it's not.
not, is it, okay, is it still not open sourced?
Because I know in that original video, yeah.
Sorry?
It is open source.
It is open sourced.
Mm-hmm.
Yes.
What was your...
Did I send you the link to that?
No.
Oh, sorry, I thought I did in one of my previous emails.
Oh, maybe in emails?
I don't have my emails open right now, though.
Oh, that's fine, that's fine.
If you can just send it on Discord, that would be awesome.
Yeah, I'll do that right now.
Um...
Because in that original video, you were, you said you hadn't open sourced it yet.
I had not at that time, no.
I was still sort of deciding what I wanted to do with it.
A part of me was like, hey, maybe I should sell this.
And then, like, that would be a good alternative to student loans.
But then I wouldn't be open sourcing it and kind of like, you know how everyone feels about that.
That's seen as a betrayal.
and for valid reasons, some invalid reasons, but mostly valid reasons.
And so I was like, no, I wouldn't be okay with doing that.
And so I think if I did commercialize it now, I would just sell the binaries and then have the code be open source
similar to something like CREDA or Arder, but I don't even think I'm going to go down that road.
So now, yeah, it's just on Kodberg, on the link I sent to you, it's under the AGPL3 license.
Mm-hmm.
I can understand why you would consider commercialize.
I know a lot of people, you know, again, I am in this space very deeply.
I understand exactly the kind of people you've run into, but I can totally understand why you'd want to do so, right?
Like that, yeah, like, this is a really cool idea, and if no one else is doing it, like, I get it.
Thank you.
I appreciate your shockingly reasonable take on that.
Yeah, someone's got to, someone's got to be reasonable.
someone's going to keep everyone else in check.
Yeah, exactly.
But anyways, it is open source now,
and I'm happy about that decision.
I think it was the right one.
Are you going to...
I didn't even notice.
There's a bunch of issues already open.
Are those your issues?
Or are they...
Yeah, so I've been tracking issues internally.
I've also got a whole different repository
with feature proposals.
I've just tried to set it up
from the get-go so that it's ready to have more contributors coming in.
Right, right.
Okay.
So you are going to develop it in an open-source way.
It's not just going to be an open-sourced project, like the Nvidia kernel modules, for example,
where the code gets open-sourced, but they're not actually accepting code contributions.
Yeah, no, the plan is to have it open-source, both in terms of code and community contributions.
So when...
Oh, go on.
Oh, sorry, go ahead.
No, I was going to shift to a slight different thing.
I was just going to say, also with respect to the commercialization thing,
one thing that did come into my mind when I was thinking about the idea for this whole thing,
which I think is maybe also important in understanding where it's coming from,
is that it's targeted for Windows 10 computers specifically, not for Windows 11,
with the upcoming end of life of Windows 10 and the more than 200 million computers
that aren't eligible to upgrade,
which is an insane stat.
I thought there are a lot of people
who would like to have an alternative
to buying a completely new computer.
I've spoken to quite a few people
who their reason for coming over to Linux recently
has been the whole Windows 10 thing.
Now, I don't expect there to be...
I know every time this happens,
people say,
oh, this is going to be the...
the day that everyone starts using Linux.
Oh, wow, this is the year of Linux.
If you go back, if you want a fun time,
go look at post during the Windows XP EOL,
and people will talk the exact same way about XP and Linux then
as they do with Windows 10 and Linux now.
People have always thought that the next Windows EOL,
that's going to be the day that people move over.
That's going to be, especially Windows 8, right?
Like when Windows 7 went EOL and then into Windows.
Windows 8, especially then, I do think there's a slow, gradual shift over with people being
more comfortable as things are getting better, as more software is available, especially as more
things done in the browser, right? Like, if all of your computing is done in a Chrome tab,
right, it really doesn't matter what you're on at that point. Yeah, yeah. Like, a phone,
the only reason you don't use a phone is because the screen's small, right? You could use any
computing device.
No, that's absolutely it.
I don't think, I'm not expecting a massive shift, but I do admire the optimism that people
have around it.
Well, I do admire the fact that people are actually trying to not just talk about it,
but actually provide paths, right?
Like, you have the end of 10 campaign where a bunch of distros and desktops are sort of
putting together resources for how to migrate over to Linux in a,
comfortable way, software
that you can use as a replacement if you're using
other things, and then obviously
you have your tool being worked on.
I have some friends in the V-tuber
space who they've put together a guide
on how to do V-tubing
on Linux, how
to get all the software working through wine
and all that stuff. And it's nice to see
that there is
a push to make this happen
even if it's not going to be
you know, 50%
of people move over, 20%
percent of people move over. There's going to be people who see that there is a process now
and there are people there who are, you know, wanting you to do so. Yeah, the community has
really stepped up to open those doors and that's quite inspiring to see. So when you put out
that video on operas, I can't imagine you expected it to get, I'm sure you, you know, someone
would see it. Yeah, but like it got posted around basically everywhere Linux related. I kind of
had you expected the kind of attention it got. Yeah, I was a little bit blown away by that. I'm
not going to lie. Like after I have a Discord history of me saying to my friends, like, it has
1,000 views. What have I done? And then that was just the beginning. And so I was really not
expecting that. And it was really, really cool experience to have very humbling, too.
And so I'm glad that so many people have seen it and that there's so much enthusiasm around it.
And, yeah, it's also a little bit intimidating, like, oh, you know, now all these people are watching me do this,
which is maybe why the next update has taken a while.
It's like, can I live up to that sort of, I don't know, I don't know what to call it, like, maybe like one hit wonder of the previous video sort of thing.
but yeah I think it's like all publicity is good publicity sort of thing so yeah I'm really happy
about that so what sort of response were you getting from people because I haven't I've not read
every single comment on the video but I yeah I did see it seemed like generally positive yeah I've read
I've read most of the comments and they all do seem quite positive uh like a lot of people saying
oh you know I'd I'd use this or I'd like to know how this works or like thanks for making
this sort of thing and so those are all really great to see of course there are also a couple
negative ones i i remember there was there was one that was like just like this is a waste of time
uh you should not have worked on it and i was like okay thank you uh i really appreciate that internet
stranger uh which i'm sure i'm sure you get those sorts of things too as uh as another youtube
content creator so uh really the the most i can do is just laugh that off uh
and then also with the the email address that i put there i don't really know
what I was expecting, but I was not expecting, like, random adult programmers to start sending
me their resumes, like, asking to help out.
It was like, I'm a university student, guys, don't send me a resume.
That's weird.
Well, that's, you know, that's, that's a positive, as annoying as that, oh, not maybe
an annoying, but as weird as that might be, it could certainly be worse, right?
You know, at least it's just resumes.
Exactly.
It was kind of cool being the one receiving the resumes, where I've been.
than applying for internships and sending the note myself.
So that was a funny role reversal.
But, yeah, I got generally very positive responses and a lot of curiosity too.
I think that's maybe even the stronger emotion out of all of them that were there,
just knowing what's next and how it works sort of thing.
Did you have anyone calling it fake?
No, I did not.
Me too, me too, yeah.
I mean, I tried to avoid that by including, like, the video of running it on a physical desktop.
Right, right.
And maybe people actually saw that.
Maybe I just missed the comments or selectively forgot about them.
I don't know, but I'm pretty sure that there wasn't, like, any calling out of it being fake, which, yeah, I was also surprised by.
I think you maybe just missed the threshold for, like, the regular tech people to see it, like the gaming space.
I think you managed to just keep it within that Linux adjacent area.
Because if it went, I think if it got a little bit more attention,
you probably would have started seeing those people.
Probably, yeah.
No, I'm glad that it's getting a lot of positive attention.
I'm glad that people seem interested in wanting to work on it.
Hopefully that means that, you know, once you've put out the next video,
once this comes out and, you know, people know that it's, you know,
the repo is now available, that you get,
people wanting to help out with the project, especially as it comes further and further along.
Exactly. And so, yeah, what was I going to say? I've already gotten quite a few people saying,
like, hey, I'd love to help out with this, and I would love to have people help out with this.
Like, I am not superhuman. I have a lot of commitments, and I'm not the best programmer out there.
Like, I'm decent, but I'm more of a perspiration than an inspiration sort of person.
I just sort of work at it until I find a solution and I may be not as fast as like,
I don't know, Nico Messakis or any of the other rust maintainers who just seem to like
whip out their computers and upend the programming language space in the span of 30 minutes.
But I think having a broader team to help out with that would be fantastic.
And I mean, I myself have actually been considering stepping back from this for the time being,
just because there are a lot of other things in my life
that are starting to take priority more
and so knowing that it would have sort of a safety net
and people to carry it forward
if I were to maybe step back and focus on school
and friendships and volunteering and that sort of thing
that it would not die out without me.
Right. No, that's totally understandable.
I went through a, I went through a sufferer in degree
and yeah
it's hard to focus on doing things outside of that
especially well
it's easy to focus on doing things outside of that
it's hard to do it if you actually want to
make the degree valuable
and I know you're not in software engineering right now
you've shifted over to mechatronics
but I'm sure it's the same way where it's like
you could kind of like
skate through it with like bare minimum
but what are you doing then? Why are you even doing the degree
if you're not trying to make it worth something
and learn something from it.
Exactly, exactly, yeah.
And so, like, of course, I could go all in on operas
and, like, really work on becoming a good maintainer,
a better programmer, that sort of thing,
and really bring it further.
But then at the end of the day,
I have a niche software program
rather than, like, you know, a well-rounded set of interests
and a lot of good memories to look back on.
so I don't know maybe this is getting like a little bit more meta life sort of thing
but I think I'd just like to take a break from sitting in front of a code editor and go outside
so yeah that's usually a good thing yeah I can respect that thank you
can definitely respect that no it's um I like I hope this project like continues going
and I hope this like there's always this problem this problem exists sort of throughout the
entire open source space, where people are doing really cool projects when they're in high
school, when they're in university, and then towards the later years of university, they start
doing internships and full-time positions, and a lot of people end up falling out of the
space, even if they were before quite dedicated to it, working on a lot of code. I've heard
the story countless times. There are the exceptions people that stick around for, you
you know, multiple decades, but I think most people end up, sadly, leaving the space well before that point.
Yeah, I think that's true. And I definitely don't want to give it up entirely. I mean, programming is a huge
part of who I am and what I do, and I do it because I love it. But I also would like to stop
well before the point of like burnout and just not wanting to do it anymore. Like, there was
that story with the KDE developer who just left and he sounded like he was not in a particularly
good place about it. And I would like to, yeah, just maybe stop before I make programming my
entire life and then have it crumble away. But that's not what we're here to talk about. This is a tech
podcast, not like a psychology podcast. I'm happy to go down any weird route. I've had some,
I've had some just random discussions that don't even remotely belong on here before.
Awesome.
I do know a bit about the KDE stuff.
I know people are directly involved in it,
and it's a lot more complex than the guy who retired.
It's just, there's a lot of different interests there that there's some context that have been left out.
It's just a big mess is basically the best way to put it.
Okay, sorry, maybe that was not the best example.
No, no, no, it's totally fine.
I just, for anyone who may have heard about that story,
um, there is, there is a lot more to it than just that singular blog post.
All right
Okay, so one thing we hadn't really talked about is
the distro that you're going to be migrating to
Yes, that is kubuntu
Now in your video, you
basically just said, I don't care what your opinion on, any other
distro is we're going to use kibbuntu because kibbuntu, you know, good choice
But what, like, the, what reason did you go with Kubuntu?
Um, a couple reasons.
One is that Ubuntu is like very widely used, very stable, has good software support.
And if a vendor supports Linux, it's probably Ubuntu.
They're also the most help resources available for it online.
And so I think it's a pretty stable, like not too flashy.
but dependable choice.
And then the Kubuntu part is because KEE plasma,
which is what I'm using right now as well,
is just a more familiar experience for Windows users
than, I don't know, Noam or Hyperland or NERI
or anything stranger than that.
And so there are, of course, other choices.
Oh, yeah, the other major consideration that I had
was secure boot support,
because Ubuntu has a Microsoft signed SHIM bootloader.
for secure boot and so you don't need to disable that and making people having to have to go into
their BIOS or UEFI settings and disable secure boot in order to run this kind of defeats
the purpose of having non-technical software right and so that kind of limits you to Ubuntu
Fedora or maybe OpenSuse based distros and of those all I thought that Kubuntu was the best choice
It's not perfect for sure.
It would be nice to have something with plasma 6,
which won't be available in an LTS release until, like, April next year.
Maybe something atomic would be nice just to stop people from breaking their distros.
Like, there are a lot of different options.
And, like, I do kind of feel bad about telling people, like,
I don't care what you think about my distro choice.
You can do it on your own time.
I mean, like, I'm not saying I don't feel that way.
But it is also valid to bring up gripes that you might have with my choice of distro.
And so in the background, I've actually worked on some improvements to make it easier to court this to other distros.
And hopefully that can be continued in the future by myself and other contributors, making it sort of a completely distro agnostic system where you have like a back end that's specific to all the things for that distro.
but then
like the core application code
is all the same
and so then
you could have people
migrating to
I don't know
Fedora silver blue
if they felt like it
that would be cool
it's also a lot of extra work
it is a lot of extra work
yeah and so it's not something
I think I'm going to work on
because I mean like I said
the grass is greener
on the other side sort of thing
like as soon as we got there
there would be things like
oh you know this distro is bad
because XYZ
we should go back to Kubuntu, the pinnacle of all distros.
And so I don't think it's worth getting caught up in all the flame wars and that sort of thing.
Like just pick one that's functional and dependable and make that the main option,
but allow other people to implement support for it if they really feel like it.
Because when the feedback to do that is that overwhelming,
then, of course, I will listen to it.
I'm not deaf, so even if it's not something I'm the most interested,
in can't be
really claimed to be a good maintainer
if I just ignore what everyone wants and do my own
thing. I think the main
concern with making it distro agnostic
is each distro
is going to have a different install process
and it may not necessarily be as well
documented as what Ubuntu has.
They may not necessarily have a well
defined automated
installer so
you end up putting yourself in a situation
where basically you're just
tracking down or making
installers for these different distros to really make, I would say make the tool more complex
in a way where most people who'd be using it probably aren't really concerned with the results
you get, right? Like if you're, if you're someone who's using a tool like this, you're not the
kind of person who's going to be debating, oh, do I want to use Cabuntu or Fedora KDE or something
else. You're the kind of person who doesn't really know much about distro choices and you're using
this tool to migrate. Exactly. Yeah. And you've really just kind of understood what I've been
getting at with this whole thing. And so it's just like, you know, people have suggested to make a
drop down to pick your distro when you're starting. And like people don't really know or care what
that means. And if they do, then they're not the target audience. And so I,
I think
like I've tried to keep that in mind
and I think most people are aware of that
and there are
yeah I can keep saying the same things forever
but yeah other distros
a possibility Kubuntu still the main one
yeah I think there's a lot of
how would I say it
when you're someone who is very involved in a space
it can be very easy to forget what it's like
for the average person
who's just now
getting involved in it, right?
If you're just starting,
I don't know, a new sport,
if you're just starting to use Linux,
there's going to be a lot of things
that you don't know that you don't know
where someone who is more advanced in that space,
it's sort of like innate knowledge to them,
where they don't even think about the fact
that people who are getting involved in this
aren't going to know what a distro is
or aren't going to know what Wayland and X-11 are
or aren't going to know what different desktop environments are.
It can be very easy to overwhelm some with that information.
And it makes me think of that XKCD with the geologists saying,
like, oh, you know, the average person only knows a couple of silicates
and maybe like an alloy or something like that.
That's not the meme text, but it's just about how experts overestimate
the familiarity of the average person in their field.
And I think that does happen a lot with Linux and kind of the Linux bubble,
just like, oh, you found it?
I think I found it.
Okay, yeah, it's, uh...
Average familiarity, 2501.
Cilocyte chemistry is second nature to us geochemist.
So it's easy to forget
that the average person probably only knows
the formulas for olive wine and one or two
feld spars and quartz, of course, of course.
Even when they're trying to compensate
for experts in anything wildly overestimate
the average person's familiarity with their fill.
Yeah, yeah, yeah, exactly.
So I think people in the sort of Linux bubble, like I called it before,
like just are like lovely humans,
but do not necessarily take the time to look out into the world
and see where everyone else is at.
Yeah, I think if you surround yourself with nothing but experts in a field,
you very quickly forget what the average person is like.
And I've had this discussion with so many people before, not just about distro choices, but any, any little thing on Linux, like, you, if you want someone to actually migrate to this system, you have to meet them where they're at, or at least where they're willing to get to.
Because a lot of people, again, they don't really know, someone might be willing to learn about a system, but if you know nothing about it, you don't even know what you don't know.
know. So you don't even know what there is to learn. And I think having resources in place
where people who aren't necessarily super technically, technically literate, like they
have a deep knowledge of the system, I think having resources there where people can easily
move over, at least to me, isn't it a good thing? I know some people, I know some people don't
like the idea of
you always have people
who are concerned with something becoming too mainstream
and there are certainly
concerns there with Linux where you
have people who
don't understand
what open source is
who don't understand licenses
who don't understand that just because
you can get the software for
free doesn't mean that
these people don't
also want to make money from the
projects as well
I don't know, I've got a lot of thoughts on
I've got a lot of thoughts on this space
Yeah, I've given quite a bit of thought about that
As well, just sort of the dynamics of open source and Linux and how
Like, I don't know, sort of culture wars between all the new user sort of thing
And so maybe Linux isn't perfect, maybe the community isn't perfect
but I still love it and it's the free OS we have even if it's not the ideal one out there
and so I think like whatever we can do to smooth out those issues and help get people using Linux
like not just slapping them on there and saying have fun but like actually setting them up for success
I'd rather have people using Windows than like a completely broken Linux install
so yeah I think just exactly like you were saying
meeting people where they're at
So you built this project with Rust
and this was a fairly new Rust project for you
Why did you decide to go with Rust?
I decided to go with Rust
because
Operes is kind of an interesting mixture
between like operating system stuff, high-level things, and like hideous but unavoidable hacks
or like really other low-level stuff. And so I found Rust to be an excellent language for kind
of spanning all that space and going like, okay, when I need to, I can write my own file system,
but then like I can also do a user interface or something. And it's fast, no memory issues.
Like, please don't ever ask me to write something in C++ because I will not.
And so it's just, it's worked quite well for that.
Whereas something like, I don't know, BAT or PowerShell, you can't make a GUI in that.
You can't write a file system in that, but it's really great for stitching together system tools.
Or Python, like, maybe it'll be like easy to do at a high level.
No worrying about memory issues, but then it's not quite as fast sort of thing.
And so I found Rust to be a really good blend between, like, speed of development and speed of execution and, like, access to the system features that I need.
Yeah, that blend of, I think a lot of people, when they're looking at a project from the outside, they forget that the speed of development is also relatively valuable to people as well.
Like, you could write everything in assembly.
You could do that.
There's nothing stopping you doing that.
However, I have things I want to do in my life.
Exactly, yes.
So all the sort of compiled time contracts that you get in Rust eliminates a whole class of logic errors at runtime
that would really hinder progress here and make it harder, especially starting this out as a solo dev.
I wasn't concerned as much with making the most beautiful code ever,
but I was very concerned with making sure that I could understand it a month later
and iterate quickly, and so I found Rust to be a good fit for that.
It's, like, not the best language.
I'm not saying, like, rewrite the whole kernel in Rust, just parts of it, you know?
But that was a joke for those of us who maybe are less humorous
about rest sort of things.
But yeah, I think it's got really good applications and promise for a lot of a lot of
domains.
So right now you've gone an open source.
Have you considered opening up the ability of people to support the project financially,
whether that be a Patreon or anything like that, or are you not necessarily interested in
going that route?
I am interested in going that route, and I have actually set up a, uh,
LiberiPay for myself, which I was going to advertise in the next video.
And I mean, part of me feels sort of gross about asking for donations, but I have invested, well, a, massive amounts of my time and, B, also, like, money as well in developing this throughout the process.
And so having some sort of return on investment for that, or not even investment, because
I did it because I thought it needed doing, and it was a cool project, not with a huge, like, reward incentive in mind, but it would be nice to get some form of acknowledgement and support, probably financial for the effort that I've put in, because I don't think it's particularly fair when open source devs are just expected to do work for free and implement XYZ feature with a cherry on top by next Monday.
you raise an interesting point there
you said you feel weird about accepting donations
but earlier you talked about
how you were interested in commercializing the project
is there a reason why you feel kind of different
about those two things
I guess
like commercialization
it feels more
sort of within my social norms
to be like okay I'm getting
value out of this project. I'm downloading a build and running it on my computer and saving
myself amount of money for a new computer minus cost of operas. Like that's very easy to quantify,
whereas something like some generous person likes the work that I'm doing and gives me money
out of the goodness of their heart. Like that's maybe for me with my engineer brain like a little
bit harder to wrap my head around. And so I'm not saying it's,
the most logical of stances. I'm not a perfectly consistent person, but I think, yeah, actually,
I'm like, now that you bring it up, it is a little bit ridiculous to say both those things,
but, yeah, I, I've mostly gotten over the fear of asking for donations, I'd say.
No, I understand, I understand why there might be a concern here, because when you commercialize
something, you are asking for money for a thing. When you're donating to something, you're
to something, you are just giving money with, you know, no expectation of anything in return.
Like, this is a, it, it's both receiving money, but I understand why,
especially if you're not someone who's, you know, spent tons and tons of time in the open source space
or around, like, anything like this, like volunteering.
I know you said you've done some before, but if it's something that still feels,
feels kind of new, I can kind of get why it might seem like a different thing.
You're very good at this whole interview thing. I say a bunch of rambling phrases and you just
understand what I mean. So I very much appreciate that. I would hope that I've learned something
after like 300 episodes of this. I know. I think it helps that you're actually good at
explaining also your general positions. I've had a lot of
of people who go on tangents from tangents from tangents and that makes for an interesting
conversation it's just relatively difficult to follow along with fair enough yeah like there
are so many episodes i've done where i don't speak for maybe 20 minutes in a row and that's fine
Because oftentimes when someone, when someone is very invested in the work they're doing,
they can just ramble off things.
Just like, I've had indie game developers on, for example.
And if you're three years into an indie game project and it's the thing you spend,
if you're doing that full time, right, you're really invested into the project.
This isn't something where you're, you're just a number of an offers.
You're doing it because you're super passionate about this project.
So being out of ramble off stuff, it makes sense.
But it does make it hard to chime in sometimes.
Yeah, absolutely.
And I used to have a podcast with a friend, actually,
where we just talk about random topics that we found interesting.
And I'm not going to tell you what the name is
because it doesn't deserve to see the light of the day.
But we definitely did a lot of rambling for 20 minutes
and not talking about anything else.
so I understand what you mean there.
I enjoy the rambling.
The rambling's fun.
So what is, I guess, your background in not just programming, but tech in general,
because you've shifted from software out of that now in university,
but I assume that you probably had some experience before university.
Like, how did you get yourself into this position?
Yes, absolutely. So my first introduction to the Linux world was when I was maybe 10 or 11, and my parents and my aunt decided, hey, we have this oddly stem-motivated child. Let's give him a raspberry pie for his birthday. And so then I got that, and I, you know, got this raspberry pie for Dummies book, who booted that up. And then all this text was coming up on the screen and flashing
through and then eventually it said Raspberry Pi login and I was asking my my family members all
these questions like hey you know what does what does this mean what does that mean what's an
init system and they they didn't know and that kind of spawned a lifelong quest to figure out okay
I'm going to figure out exactly what all this means and so since then I've kind of worked my way
through different Linux distros different programming projects I have a habit of learning
by starting something and then never finishing it.
So my past is littered with the graves of games that I've never finished
or random little programs to solve something that I was wondering about
by questionably optimized means.
And then, like, a lot of that sort of thing,
did some programming in school too, but not really very much.
And then outside of that, I don't have.
have much of a background in tech other than software to be honest like prior to university that
was kind of all i'd done and like during high school i'd worked a couple internships doing like
web development and machine learning development and stuff and so uh those were those were pretty cool
and so i was like hey i'm just going to do this software thing forever uh but then i realized i never had
tried anything different and so now now i'm just seeing if i can branch out a bit and maybe
discover what i whether i have any other interests and i've really been enjoying taking a
broader range of technical courses and now i'm working on uh say another project with some friends
where we're building the weather balloon and we'll just send that up and take some pictures uh
and so like i'm doing PCB design now and i don't know anything about PCB design and it's
awesome I love this so yeah how long have you been doing that for like doing this like
shift into new things about six months I'm only a second year student now and so I did my
first semester last year in software engineering and then after that transferred to
mechatronics and then I'm in my second term of mechatronics third term of
university now and then I have like I said this balloon side quest of materials courses
mechanics courses, circuits courses, and all that sort of thing.
So really aiming for the Jack of All Trade's Master of None category.
The one thing I will say is trying out something new is going to be exciting,
but I don't necessarily know if that means it's something you're more passionate about.
I'm sure when you first started programming, you are super passionate about that as well
because it was something unique.
It was something new to you.
And now that you're trying out this mechatronics route, like, this is new, this is exciting.
So it's going to, like, over time, you're going to work out, is this something I'm actually passionate about?
Or is this something where it was like that honeymoon period where it's this all new exciting stuff?
Is this, is it just that?
Or is it actually something that you want to spend a lot more time on?
That is uncomfortably insightful.
but yes, I think that's basically what's going on,
but I think that trying to just sort of explore options
can't be a bad thing in the long run.
Yeah. Yeah, no, definitely.
I don't want to say I'm old. I'm only 27. I'm not that old.
But I have done a few, you know, I went through a software engineering degree
and then I started making YouTube videos, right?
Like, I, I've, I've done, I've done, I've gone down the dumb route that people have done.
I've done actual real jobs in the past.
But it's, I don't know, I think it's, it's definitely worth trying things out.
And a lot of people, they, they sort of skip that phase.
They fall into the first thing that catches their interest.
And then they realize a year or two later that,
It was something they were only interested in because it was new.
And you're always going to, like that honeymoon period's always going to end.
And you're always going to get to a point where it's not as exciting as it was originally.
Like, that just happens with everything.
But hopefully you can get yourself to a point where even if you're not as excited about it as you were originally,
you still have a passion for what you're doing.
Like, you don't want to get yourself in a position where, you know, you're just a number at an office and that's, like, you have no passion and it's just, I'm doing this because I need to do this.
Exactly, yes.
And even if one finds out that they don't have a passion for something after trying it for a bit, like, at least they can learn a new skill in the process of doing so.
And that's never a bad thing.
Like, I don't know, maybe after university, I'll go decide to do a master's degree in peace and conflict studies.
And then that's not for me.
So I go become a Muay instructor and then figure out that I hate that too.
But, I mean, I've still come out of that with a master's degree and like some kind of black belted moitai.
So that's not a bad thing either.
But I don't think that's going to happen.
You brought up Muay.
Do you practice?
Or is that just a random example?
I have friends who practice, but I have never done it myself.
Okay.
It just seemed like a very, like, of the, of the martial arts you could mention,
it just seemed like a very odd choice to mention, just offhand.
Yeah, you're, you're getting a privilege incited to the weird ways in which my brain works.
Mm-hmm, mm-hmm.
So, what are the sort of long-term,
I know you said you want to take sort of a step back, but long term, where would you like to see this project be at?
I would like to see it be at a point where I am confident that someone downloading it can run it.
If something will not work, it will stop right away, it will not proceed, it will not leave anything broken, and once it has finished, they will be left with a Linux system.
with no degraded functionality compared to their Windows experience.
And so that's very broad, and there's a long way left to go for that.
But some of the more important parts are broadening support for program migration.
So right now, the only programs which it migrates are Chrome and Edge,
because as you said, most things are in the browser,
and those are the most common browsers that are used.
And so already right now, like if people have Google Chrome on their laptop or whatever,
and then they run operies, then they open it back up, and they have their bookmarks,
their browsing history, even like their last session, Restore, everything is still there.
And that was surprisingly easy to do, actually, but I think that covers.
Session Restore just works across operating systems.
I did not know that.
It does, yeah.
It's pretty cool.
So in the video that I'll be putting out tomorrow after,
probably after this podcast episode is released, I will be like sort of subtly flexing the fact that I just change operating systems and then open the browser back up and go to the same web pages that I was using last time when it closed.
So that's pretty nice.
The only thing that doesn't migrate from chromium-based browsers is passwords and stuff because those are in the OS key ring.
And so there's nothing that can be done about that.
but other than that like yeah it's pretty slick uh so i don't know if you said it and i didn't hear you
do extensions migrate over as well i haven't tested that that's a good thing that like that's a good
idea for something to test i would be surprised if they didn't but i can't say for sure but i think
it should because they're just stored in the regular data folders and chromium uses the same
uh like file formats across every operating system
and so I think
I see no reason why they wouldn't
You said that for Chromium
Is the same the case for Firefox?
Firefox is trickier
They do some strange things
with profile checks
to make sure it's the same or whatever
And so I haven't implemented support for it
Which I mean I am a Firefox user
So this is not me saying like
Like oh whatever
I'm just ignoring
a group that I'm not part of.
Like, I am myself a Firefox
user. I think it's, in many ways, a
superior browser, but just most people
are using chromium-based
browsers, and Firefox is
not impossible, but it will be more work, so
I just wanted to get kind of the low-hanging
fruit out of the way first.
And you've talked about wanting to migrate
other applications, so
obviously there are things
like Discord where it's just,
you know, it's just available in Linux.
Do you just want to hand
things where it is
the same like there is just like
there is the software available on both
Windows and Linux and that's what you want
to migrate over do you
you want to provide anything
for software that wouldn't be included
so people know that that's not included
or what do you want to do that? Ideally
yes so I would
like to have
there are kind of two ways that I could go
down this road and I'm not
sure which one is better but I would like
to have a way for people
to just keep using their Windows programs on Linux if there is no native alternative and so I could do it with just putting them into like a wine prefix and then creating desktop entries for all the shortcuts and everything and then for programs that run on wine that would be great people could keep using them but for the the ones that don't like say new versions of Photoshop the other way that that could be done is using a project like Win app
I was literally just going to send you a link to that one.
Okay, cool.
So I am familiar with that, and that would be also kind of like the golden ticket in terms of like getting people to still have their apps and compatibility with those.
But it is, you know, a bit heavier to run, maybe clunkier to set up, that sort of thing.
And so I'm not sure which is the way to do it.
but I'm sure that after discussing it with people wiser than myself
that will be able to come to a conclusion of some sorts
for anyone who hasn't heard of this project
basically what it's doing is running the application in a Docker
or Podman container or inside of a virtual machine
and then just free RDPing into that container
and then just showing it on your Linux system
it's a surprisingly functional hack
and I like it.
Yeah, I was so impressed when I first found out about that.
And theoretically, basically anything works.
It's just running on Windows, right?
Like, all of the Adobe stuff just works.
Like, I know there's going to be things that don't.
I know that a lot of games are not going to work
because of the whole fun anti-cheat stuff.
Like Apex Legends, for example,
specifically checks for running.
inside of a container or a virtual machine.
So that's not going to work whatsoever.
Or basically anything that needs kernel level access is probably,
I don't know.
It'll be a bit iffy because you're still running in that container.
So something...
But I know for a fact that a lot of games are not going to work.
But if you desperately need creative cloud,
supposedly it's been tested and it works.
Which is awesome.
Yeah.
So that would be a really awesome way to just get people to keep using their applications.
And one concern that I do have with that, which is maybe not super obvious, is where does
the Windows image used there actually come from?
Because I could just take it from the Windows that the user already had installed on the
disk, but that's Windows 10, and it's going EOL.
And so can you do an unattended upgrade to Windows 11?
inside the container, I'm not sure. Or, you know, take a fresh Windows 11 image and install it in Win apps and then run it that way. But then do I run into legal trouble if I'm on a mass scale installing unlicensed copies of Windows on people's computers? I don't know. I'm not a lawyer. And so that sort of thing makes me a little bit hesitant. But I'm not too sure.
I'm not a lawyer either
But
I don't know
I really don't know
I think you'd be in a safe position
using the Windows install that was
already on their system
But
I don't know
really how this would
play out
Yeah me neither
So
this is definitely something
that I'm not qualified to talk about
but the good thing about open source
is that there will be people
who know about these sorts of issues coming in
and being able to answer these questions
and saying yeah, okay, this is
how you're supposed to interact
with Windows licenses
to do it in a way that doesn't get your
open source project suit or whatever.
Right, right.
But that would be either way
a problem further down the line
anyway. Yeah, absolutely. But having that sort of catch-all migration for the things not
specifically covered by native versions is definitely a goal. In terms of other goals, there's, I mean,
other stuff like broader hardware support. We only support BIOS systems right now, but
UEFI. Oh, we only support BIOS? Yes. Uh-huh. Not because it's impossible to support
UEFI just because I haven't added it yet and so I think it should be it is more complex mostly just because of the secure boot stuff and so I just need to make sure that I'm installing the sign images from canonical when I install grab that sort of thing and update my my partitioning library to support UEFI disks which it doesn't right now and then take it from there but I don't think it's like
percolian undertaking it's just
like it's not it's non-trivial
but it's definitely
a big thing that would
expand compatibility with a lot of
systems that doesn't exist right now
because I think
post
2013 maybe
somewhere in that range pretty much everything is
UEFI at that point
or at least the main thing
you'd be using there's still
hardware that supports both
but
UFI is basically the standard and has been
for over a decade at this point
yes yes no I am
quite aware of that and so
it's it's been an open
feature proposal on
the code group for a while now
and I was considering adding that
before the next video demo but
I just had to eventually
say at a certain point like okay
enough is enough I could keep piling odd small
improvements forever but
I think it's time to give other people the chance to do the same.
So what about short-term goals?
Like, what are you, what is the next thing on your radar that you want to iron out?
Automated testing.
Okay.
Don't even have to think about that because there's really no means right now of
verifying, like, correctness in execution besides just running it and looking at it
and making sure that it's working as one would expect,
but having some kind of virtual machine-based test suite
or something like what the post-market OS devs are doing
where they just have a bunch of phones wired up to their test harness,
like some kind of electrodes things in a biology lab,
and they're just running tests on those 24-7.
I would really like to have that for operas
and just be able to verify in, like, continuous integration
that everything, there are no regressions being introduced,
everything's still working as expected to give developers
the confidence to move forwards
without causing obscure breakages.
But you talked about how Secure Boot is a current limitation.
What other limitations exist right now?
Um,
like, there are a lot,
it's kind of hard for me to just think of one without like maybe a more more specific thing
to call it to mind. I mean, I guess one thing could be that, oh, it doesn't migrate like network
settings right now. And so if, uh, right, for some, uh, exactly, if you're using Wi-Fi,
then you're in trouble. And I have made an effort to make it so that it will still run in
completely offline situations because many of the people on older Windows 10 computers are also
in areas with highly intermittent or prohibitively expensive internet connections. And so I would
like it to be able to be something that you can just run offline and not have to download a big
image file from if that's something that you literally can't do. But for some programs,
like it's not realistic to store every possible program in the image. And so some of them will
have to be downloaded at runtime.
So yeah, I can't do
network stuff right now.
Usernames that have capital
letters in them don't work.
It's hard-coded with
the reliance on the C-drive.
You're looking at me, like I said, something
that I shouldn't have. No, I'm
looking at you because I'm confused about what you're
saying. What do you
mean, cap? Sorry, can
we just focus more on this one?
I need to know more about this.
I just dropped that bomb and then
moved on, but basically, like, in the, in my testing, Windows has allowed creating
usernames with, like, capital letters in them, not like full names, not like, like, whatever,
first name, space, last name, that's, that's fine. That's just, uh, on Linux, like your
GECOS field or whatever, but, uh, on, on Windows, like the actual, like, I,
identifier for the user like mine would be Technoporg with a capital T capital P for instance
whereas on Linux many programs don't support usernames with capital letters to my knowledge
and so it would have to be like migrated to all lowercase okay okay right why not
so yeah there are all kinds of weird compatibility things that you run across and you're like
No one should ever have had to think about this, but here we are.
Mm-hmm, mm-hmm.
Well, I guess, I guess someone had...
I guess someone was going to, and you're the one who's done so.
I guess so, yes.
So, uh, let me even pull up my issue tracker here.
I've, uh, I've got more than I would like.
There's some security stuff.
It would be nice to maybe verify that a bit more.
Binary signing, that would be nice.
So we don't get like the Windows Smart Screen
warnings and that sort of thing,
but need to get a key for that, which I haven't purchased yet.
So that's where maybe donations would come in.
Lots of testing.
Oh, the bugs list is much shorter
than the improvement proposals list.
Better user interface.
The user interface sucks right now.
I'll be the first to admit that, so it would be nice to improve that.
Develop a user interface, that's what it is.
It's, you made an interface that works, and that's enough.
Exactly, yes.
And I, as a developer, am maybe desensitized to these sorts of issues more than I should be,
because I'm used to just opening something and having it be slightly off,
and I just don't even see it at this point.
I'm blind to it.
Like, my monitor has a weird issue where, like, every 20 minutes or so,
it'll blink off for like three seconds and just go completely black.
And I don't think that's a Linux thing.
I think it's just a thing with the monitor,
but I don't notice it.
Like, I just keep going.
I'd like keep typing.
It'll just go black and I'll keep typing whatever I was typing.
And my friends are like, do you notice when it does that?
And I really don't at this point.
Like, it's just my monitor does this and I live with it.
And I shouldn't.
No, this is just a U issue.
This is not a developer.
No, we can't blame your screen going black for three seconds.
on the...
No.
How do you deal with that?
Okay.
Okay.
I thought it was a developer issue
that we were just used to things
maybe not working as expected,
but apparently that's just a maybe more localized quirk
than it expected.
Okay.
To be fair, my roommate, he,
he had a line,
maybe like a, I don't know,
inch thick,
line of pixels on his screen
that were just
I guess 50% brighter
than everything else
and he never
noticed it
I don't know how
but I pointed it out
yeah I don't see it so maybe
maybe this is normal
maybe
yeah I'm not sure but anyways
the point is
I'm not the best person to ask about
user interfaces and
things that look as they showed
and so hopefully we can get some people
with actual experience coming
in to take a look at that
but yeah also another
big thing for long-term goals
that might be nice to have
which is I mean you're
asking about short-term things but
another long-term thing would be better
enterprise migration support
and that's like kind of a very
large-scale long-term thing
but for systems
or organizations
like governments or companies that heavily use, you know,
Active Directory and OneDrive and all the Microsoft stuff,
it would be nice for them to be able to provide, like,
an enterprise solution to migrate their entire system over to Linux
and keep sort of the same IT management tools,
which, I mean, I will hand it to Microsoft Windows for Enterprise
is arguably better right now than Linux for Enterprise.
Like, it has more tools geared towards that sort of thing.
but to be able to
find alternatives on Linux
and then migrate companies
like in one fell swoop to those
I think would be a really great option to have
or especially with like all the
focus on digital sovereignty and whatnot in Canada
and the EU and maybe Australia too
I don't follow news from your part of the world so much
but I think that's something on a lot of people's minds right now
I think when you start getting to the end
enterprise space, you're like well out of the range of what most open source projects would
be touching. I can see why you would consider going down the route of commercialization if
that's sort of some ideas you've had.
Mm-hmm. Yeah, no, you're, you're probably right there. You're probably right.
No, I think it's cool. Don't get me wrong. I think it's cool. It's just, this is a project where
the scope can
basically creep until the end of time
yes it absolutely is
I
what
if you want to define a
a reasonable stopping point
I guess we kind of touched this before
like
how much would you want a reasonable stopping point to be
Because, again, you can do this project forever, basically.
Yeah, I mean, it's really hard to define one, because part of me is like,
what if we migrate people's printer settings and, like, everything else on top of that?
And there's really, you can go as deep as you want, but I think probably,
that's, like, I've never given it that much thought before, because there's never,
been an end in sight, I'm not going to lie.
Right, it's still so early on that it's hard to think about what that point would be.
Yeah, I think probably like a reasonable end point would be once, I don't have an answer for that.
I'm so sorry, I don't have an answer for that.
I don't know if there is an easily definable endpoint or if it's just something that could keep going forever.
Maybe once the file size gets above a certain limit that I just have to say, okay, that's enough.
Like, we've packed enough stuff into this.
Well, maybe approach this from another side.
Is there anything that you feel like is out of scope of the project?
Yes, absolutely.
So, like, implementing new tools for the Linux desktop to mirror ones that are available on Windows is completely out of scope.
That's not the goal.
The goal is just to migrate people to things that exist already.
And so if people want like an alternative to, I don't know, some Windows tool or setting that already exists,
and they're like, hey, operas, our migration would be better if you had this, then like that's a hard.
No, the rest of the open source community can go out and implement that, but we are strictly on migrating to things that already exist.
Mm-hmm.
I think it's pretty subtle answer, yeah.
Yeah, I think that's, that's kind of the big one.
Like, maybe, I don't know, super niche configuration options that, like, if you're using them, you know what you're doing.
You don't need an automated migration tool anyways.
But I can't think of any off the top of my head.
Exactly, yeah.
Exactly.
Or, like, some strange unconvention.
digital disc layout, that sort of thing. I mean, it would be nice to support multi-hard drive systems, but that is a low priority because it's not as common in sort of the mass market, like personal computers that you'd get.
Right, that hadn't even come as a topic, had it?
I had not.
So the migration is just done on your boot drive then?
exactly yes and as of right now it will actually refuse to run if you have multiple drives
I've tried to be sort of conservative in setting the limits of where it will start and what it
will say like okay this program can't handle this sort of situation yet and so like of course
I'm doing my best to advertise like hey this is very much alpha quality software the year
for the Linux desktop is not coming
that sort of thing
but even so
I would like to
I have safeguards in right now
and one of those is that
if it has more than one hard drive
it will not run right now
because there is no logic in place
for supporting extra drives
right okay okay
if you were
well you said it's low priority
so it's definitely something
you've thought about then
it is yes
how would you approach it
because the drive would
likely be
formatted with
NTFS
festivals on
Windows
so
there are
you can
technically
mount
NTFs
drives on
Linux
it's just
not
optimal
so
what would
you
go about
that route
um
again
as with
anything worth
doing there are
a couple
ways of
doing it
one
interesting
option
would be
something like
the NTFs
to BTRFS
tool which takes an NTFS file system and in place converts it to BTRFS, which is a pretty nifty thing to be able to do.
I didn't know about this. Oh, okay. So someone's already done most of the work then.
Exactly, yeah. And so you could just run that on an NTFS partition and it doesn't even touch the data. It just touches the metadata and converts it to a BTRFS file system, which is really neat. So that would be
probably the easiest option.
I don't know too much about like reliability of that pool,
especially in case of like a power outage or something.
You're probably sensing really recurring themes
and my thoughts on the design requirements of this software,
but I will keep harping on about safety
until the end of my days.
And then another way to do it would just be with my file system,
like push it all over and then bring it back.
and then just use the stack to convert it like that.
That would probably be the easiest option to implement in the short term.
I was just looking at the listed contributors on NTFS to Butterfest,
and he shows up everywhere.
There's a Fedora developer called Neil Gomper.
He's in the contributor list.
There are so many projects that he just randomly has a contribution on.
I've probably seen at a
And these aren't projects that he's made
I've probably seen at minimum
50 different projects
where his name shows up
just in unrelated areas
not 50 within like KD or anything like that
just totally separate projects
That's so interesting
I mean that awesome that he's getting involved
in so many things but
a little
intimidating that he's just that prolific
Yeah he's
He's, uh, I've talked to him many times on the, on the podcast. He's just, he's just one of these people that really likes to help out upstream in projects rather than doing things in downstream. So if there's a solution he comes up with, it makes more sense to just put it into the project itself rather than doing it on Vodora. That makes sense.
So, I think, I feel like we covered most things with the project by this point. Actually, wait, sorry, one thing. You said, you said,
you've, the project is
sort of standing on the shoulders
of giants. It's not doing, it's not
doing stuff just by yourself.
What are some
things you would like to highlight
maybe that we haven't touched on
so far that have actually made this project possible?
Um,
big
uh,
big one is the fact that
uh,
grubb uh,
makes builds for Windows, and so I didn't have to go out and, like, re-implement a bootloader myself or something.
I could just download, like, grub install.exe.
Oh, right, no, I guess the dobo.
Yeah, that makes sense.
Okay, that, yeah.
Yeah, and so that, uh, that was really huge.
Ubuntu subiquity, uh, that's been massive in terms of, uh, making my life easier,
uh, the, uh, Kimeu and virtual box for virtual machines for testing, uh, has been huge.
Yeah, I could keep going on and on, give you an alphabetical list, 3,000 names long.
But, yeah, KDE, also the amount of software that they've made for this incredible desktop environment just really blows my mind when I think about it.
Rust, as a whole, the iced GUI library is a really nice one.
Yeah, all kinds of stuff.
Even, you know, I'll be generous.
Even Microsoft has helped me out by providing some documentation for the APIs that helped me get away from their APIs.
Good guys, Microsoft.
Exactly, yeah.
Microsoft loves open source. That's one of my favorite slides.
Yeah.
So I think we've kind of touched on basically everything.
Unless there's anything that you wanted to specifically mention that we haven't talked.
talked about?
I think...
I think we've been pretty thorough.
Yeah, nothing comes to mind immediately.
When's the video supposed to be out?
Because this will probably be out, I would have met...
Sorry, once my doorbells ring.
Give me a second.
Okay, go ahead.
Perfect time, thank you.
Back in like a minute.
Anything else, anything else.
Sorry, a package showed up.
All good?
saying um actually what was i saying
um sure what was i saying
um what was i saying
um what was i
saying i should remember this
um
um
anything you're asking for there was a kid that i hadn't mentioned
um
when the project
the video is supposed to be out
oh yes uh so my hope is to have it
done tomorrow uh for like
The whole afternoon before this interview, I was just working on, like, recording and editing that.
I have a better microphone now that I did when I made the first video.
So hopefully people will be complaining about that a little bit less.
And then, yeah, hopefully that will be out tomorrow or my tomorrow, maybe your today, who knows.
And then, yeah, after that, I hope there will be more videos.
I'm really enjoying this content creation sort of thing.
and hope to continue with that in the future.
Yeah, what do you plan to do on that front?
Do you just want to do update videos?
Would you want to talk more about how it works?
I mean, I'd like to branch out from just Operees specifically,
and update videos, I think, will become more intermittent.
The, like, the updates won't be groundbreaking anymore.
It'll just be kind of slow and steady progress,
sort of like you'd see in, like, the List Week in Rust newsletter,
That might be a good format for it.
But I'd probably like to continue in doing sort of Linux stuff.
I've been thinking maybe parody songs, but I'm not sure.
We'll see.
Okay, okay.
I will definitely have to check that out if that does happen.
Yeah, obviously that's not something to base my entire internet persona on,
but maybe one or two could be fun.
I have a couple other things cooking, but we'll see.
Awesome. Well, hopefully all that goes well as well.
Thank you. Thank you. Yeah. And actually, unless you were going to ask something else,
one more thing did occur to me while you were getting your package. I did not mention anything
about sort of the gaming side of this migration, which is kind of a big thing for a lot of people.
Like, will I still be able to run my games and everything? And I mean, I brought that up.
but the answer is that I don't have
a lot to be able to say about that.
Like, I've reached out to people at Valve
about, like, hey, would you be interested in collaborating
on implementing a migration for Steam stuff?
And I haven't heard back from anyone,
which is disappointing
because it would be really nice to just have, like,
migration for Steam straight to Proton.
But hopefully that is something
which will happen eventually.
That actually would be kind of neat
Yeah
Like the
Yeah
You can very easily move the
Game files over
But then you've got to put them into wine prefixes individually
And
Yeah
I don't know if there's
Because you can
You can point the Steam client at GameFile
So I don't know if there was a, if there's like any CLI tooling around Steam, because I know there is the CLI for Steam, I don't know if there's a way to generate a proton prefix for the games, sort of automatically.
Yeah, me neither. And getting Steam also to recognize that they are installed as proton games rather than as native games would presumably require some changes to whatever database Steam is using to store its stuff. And so,
Like I said, I haven't taken any time trying to reverse engineer that because that sounds like a whole can of worms.
But it is definitely like a significant chunk of users, I think, would be happy to see that.
I would love to see that.
And so I think Valve would love to see that too.
So hopefully it's something where we can all come together on that in the future.
Yeah, that would be a really, really cool change.
Having it so you can just...
Having it so your, even just your games are there as well.
Like, that's, that's, it's not a, like, it's not a big deal, right?
You can just download the games off of Steam, you've Steam, it's not a, it's not a big deal,
but it would be just that nice, extra little thing where it just feels so smooth.
Yes, absolutely.
And that's really, really what I'm going for here.
And so, yeah, hopefully it happens.
Awesome.
Awesome.
I've had a lot of fun here.
This was a really good episode, I think.
And I hope people, if they didn't know about the project, now do.
And if they did, maybe learn something more about it.
Yeah, thank you.
Thank you for having me.
I really enjoyed being here too.
You've been a great host, and it's been really interesting and somewhat cathartic
and made me think about it a bit too as well.
So, a fantastic experience and would do again.
Awesome.
If you want to check out the project, check out the videos on it, where can they go?
Right now, you can go to my YouTube channel, YouTube.com slash at Technoporg, where I have my introduction video talking about what Operees is, and then as of the release day of this episode, there will be another video talking about sort of all the updates that I've covered in this podcast episode.
Awesome. Awesome. Nothing else you want to mention, nothing else that might have come to mind?
I guess I'll lean a bit into the discomfort that you mentioned earlier this episode
and say that if you would be interested in retroactively
or sort of for the future donating to support this project
I will also be linking a Libera Pay in the next video there
Awesome
Yeah just send me the link to that afterwards and I'll make sure it goes into the description for this
Thank you
Yeah, I'll just, I'll do my outro, and then that should be the end of it.
Sounds good.
Cool.
My main channel is Brodie Robertson.
I do Linux videos there six-ish days a week.
Sometimes I stream.
There will be a cosmic stream coming up at some point, so check that one out.
I've got a gaming channel, Brodion Games.
Right now, I'm playing through Yakuza 6, and also Silk Song.
So that is on Twitch and YouTube, both Brodian games.
The podcast, Tech of a Tee, that is available on YouTube.
Tech of a T. If you're wanting to find
the podcast version, the audio version
that is on Spotify,
every other podcast platform that exists.
There is an RSS feed as well. Just search
Tech of a T and you will find it.
I'll give the final word. How do you want to sign us off?
I like that you're also playing Silk Song.
It's very cool.
The devs are from my state, so I'm absolutely going to play it.
Oh, okay. Nice.
Yeah.
Other than that,
I know,
Be good humans.
Contribute to my project if you know how to code.
Thanks for listening.
Awesome.
