如何创建一个简单的桌面环境?

发布于 2024-09-28 13:41:37 字数 550 浏览 8 评论 0原文

我想知道如何为 Linux,特别是 Ubuntu/Kubuntu 创建一个简单的桌面环境,例如 KDE、Gnome 和 LXDE,但我不知道如何开始以及它有多复杂。

我想创建一个简单、高效、轻量级的桌面,并重现 KDE、Gnome 和 Windows XP 的一些优秀功能。我不想重新发明轮子,我想设计图形界面和主对话框。

我可以将 C++ 与 Qt 一起使用,或者也可以与 X11 调用一起使用。像 TWM 这样的简单桌面将是第一步,然后我可以添加任务栏、开始菜单、新功能并尝试新想法。

谢谢。

编辑

我已经安装了icewm,我认为这是我需要开始的。在登录屏幕上,我可以选择使用 KDE(桌面环境)还是icewm(窗口管理器)。我不明白窗口管理器实际上是什么。

我已经下载了icewm源代码,但我很困惑。有一些概念我必须理解,例如,加载桌面时登录屏幕后会发生什么,窗口如何工作,等等。

编辑2

我想我需要一个很好的教程。我必须了解窗口管理器或桌面环境的工作原理。有一些概念我必须知道。

I want to know how to create a simple desktop environment, such as KDE, Gnome and LXDE, for Linux, or specifically, Ubuntu/Kubuntu, but I do not know how to begin and how complex it is.

I want to create a simple, efficient and lightweight desktop and to reproduce some good features from KDE, Gnome and Windows XP. I do not want to reinvent the wheel, I want to design the graphical interface and main dialogs.

I could use C++ with Qt, or maybe with X11 calls. A simple desktop like TWM would be the first step, then I could add taskbar, start menu, new features and play with new ideas.

Thanks.

Edit

I have installed icewm and I think it is what I need to begin. On the login screen, I can choose if I use KDE (desktop environment) or icewm (window manager). I do not understand what a window manager actually is.

I have downloaded icewm source code and I am confused. There are some concepts that I have to understand, such as, what happens after the login screen when the desktop is loaded, how a window works, etc.

Edit 2

I think I need a good tutorial. I have to understand how a Window Manager or Desktop Environment work. There are some concepts that I have to know.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

○愚か者の日 2024-10-05 13:41:37

这不是简单的壮举,但绝不是不可能的。

其他人已经做到了,有大量的 DE 或 WM,所以没有理由你,有耐心,技巧和大量的咖啡不能'不要做一些伟大的事情。

学习DE 和 WM 之间的区别

测试不同的 DE 和 WM,也许有人可以正是您想要它做什么

制作您自己的自定义 DE

以下指南可帮助您开始创建您的自己定制的 DE

完成所有这些之后,您应该能够更好地弄清楚您真正想要做什么。

分叉一个项目并开始。

This is no simple feat but by no means impossible.

Other people have done it, there are plenty of DE or WM out there so there is no reason that you, with patient, skill and lots coffee couldn't do something great.

Learn the difference between DE and WM.

Test different DE and WM, maybe one does exactly what you want it to do?

Make your own custom DE

Here is a guide to get you started creating your own custom DE

After doing all this you should be better equipped to figure out what you actually want to do.

Fork a project and get started.

囚你心 2024-10-05 13:41:37

这些都是开源项目,所以我建议您使用一个更简单的窗口管理器并翻阅其源代码。不过,我应该警告你:这种项目不适合胆小的人,而且你的小玩具项目成为主流桌面的可能性很低,所以不要想象它不仅仅是一个学习锻炼(如果它确实变得更多,你会感到惊喜)。

从战略上讲,最好的选择是分叉现有的 WM,而不是尝试从头开始构建一个全新的 WM。

最后一点:Qt 是一个 C++ 窗口框架,位于窗口管理器之上。它本身并不是一个窗口管理器,如 Gnome/TWM/etc。是。而且,正如 @ptomato 正确指出的那样,Gnome 实际上是一个桌面环境,它本身位于窗口管理器之上,窗口管理器是可选择的,但默认为 Mutter。

These are all open source projects, so I suggest you grab one of the simpler window managers and rummage around in its source code. I should warn you, though: this kind of project is not for the faint-hearted, and the likelihood of your little toy project becoming a mainstream desktop is low, so don't go into this imagining it's going to be anything more than a learning exercise (and if it does become something more, you'll be pleasantly surprised).

Strategically, your best bet is to fork an existing WM, rather than trying to build a brand new one from scratch.

One final point: Qt is a windowing framework for C++ that sits on top of a window manager. It isn't a window manager, per se, like Gnome/TWM/etc. are. And, as @ptomato rightly points out, Gnome is actually a desktop environment that itself sits on top of a window manager, which is selectable, but defaults to Mutter.

别念他 2024-10-05 13:41:37

我将使用 X 调用并学习如何启动到 CLI(命令行界面)。引导到 CLI 允许您在窗口管理器/桌面环境之间切换。然后我会设计一个窗口管理器。最后以桌面环境结束。

它从帧缓冲区开始。这就是 80 年代图形的工作原理。

然后你就有了 X 窗口系统。但是,这不会同时显示多个窗口。一次只有一个。

窗口管理器是控制窗口位置的程序。这允许多个 X 窗口占据一个屏幕。

然后在此基础上构建桌面环境,添加任务栏、开始菜单和桌面图标等内容。

I would use X calls and learn how to boot to a CLI (command line interface). Booting to a CLI allows you to switch between window managers / desktop environments. Then I would design a window manager. And finally finish off with a desktop environment.

It starts with frame buffers. These are how 80's graphics worked.

Then you have the X window system. This however doesn't show you multiple windows at once. Only one at a time.

A window manager is the program that controls where your windows go. This allows for multiple X windows to take up one screen.

A desktop environment then builds on that to add things like a task bar, start menu and desktop icons.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文