Eltrac

極客死亡計劃

不尊重文字的独立博主,胡言乱语的小说家,兴趣使然的神秘学研究者,爱走弯路的半吊子程序员,不务正业的学生,品味小众的游戏爱好者,需要靠早晨一杯咖啡维持生命体征的废物。
twitter

Manjaro Desktop Experimentation

My undergraduate advisor, at the beginning of our freshman year before classes officially started, sent us a twenty-page Word document, requiring us to install a dual system of Windows and Manjaro within two weeks according to the document's guidance, because our programming assignments needed to be written, debugged, and run on a Linux system.

I have never liked accepting tasks given to me without thinking, so when faced with this somewhat unreasonable request and a customized system file of over thirty GB, I was quite resistant.

That day, I attempted two self-assured solutions: Arch Linux's WSL (Windows Subsystem for Linux) and installing Manjaro on a virtual machine. Except for a few classmates with a decent foundation, many other university students who were new to computers were troubled by the task of installing the system for several weeks, while I was still enjoying various video games in my comfort zone on Windows 11.

At this point in the story, you might expect a plot where a newly liberated college student goes their own way, only to be knocked down by the harsh reality and begins to regret not waking up sooner.

Well, perhaps you don't, and I don't regret my own decision either. The dual system installation approach is indeed not very smart; it is not only troublesome but also has very few practical applications, and can only be considered a solution that works for most people. But when I pulled out my second laptop, how would you respond?

Indifferent Reception#

I have a Dell Inspiron laptop that accompanied me throughout high school, which was honorably retired after my graduation because I got a better-performing gaming laptop. So this laptop had been idle for several months, but now it finally had a purpose. I decided to install the Manjaro system on this seldom-used computer to meet the assignment's requirements.

Since I planned to completely abandon the old Windows system and install a standalone Manjaro system, but the document provided by my advisor only gave instructions for a dual system, which involved various complex partitions, most of the content was not very useful to me. So I first created a boot disk for the system installation according to the document; I had to download the KDE version of the system image from the Manjaro official website, then use Ventoy and a USB drive to create the boot disk. After the system was installed, I would restore the more than thirty GB system snapshot shared by my advisor in the group onto the newly installed system to save the trouble of installing software myself.

However, I quickly ruined my only USB drive. Perhaps there was an error during the operation or some perplexing issue; while following the tutorial to use Ventoy to create the boot disk, the software popped up an error that was not mentioned in the document, and then I found that I could not access the USB drive in Windows. After formatting the USB drive and resetting the partition, fortunately, there was no important data on it. But during the second attempt, the same error occurred again, and it was the same for the third and fourth attempts. In the end, I gave up and borrowed a boot disk that my roommate had already created.

Later, I used the USB drive that I had formatted several times as usual, only to find file corruption during several file transfers. It wasn't until a presentation day when I discovered that the PPT I had prepared could not be opened that I realized this USB drive was no longer usable. I still haven't figured out what went wrong.

Since the Manjaro installation program has a graphical interface, it can be automatically installed with just a few simple configurations. I planned to directly wipe the original Windows system, and Manjaro also provided an option to overwrite the original system during installation, but I encountered errors every time I tried, indicating that it could not be installed properly. I have forgotten the specific details because it has been too long, but I remember being puzzled and stressed by this error, and finally found the answer in the document provided by my advisor—Well, it was because I didn't change the BIOS settings.

After searching for a long time in an all-English interface where I couldn't control with the mouse, I finally found the correct settings. After that, the installation went smoothly without any errors, only to find that the more than thirty GB system snapshot provided by my advisor was structured for a dual system. This meant that essentially, I had to completely restore the file partitions from his computer onto my machine and recover all the files from his system onto my computer. Since I did not install a dual system, I could not use this snapshot.

However, the system was installed, and I could install the software myself.

Pacman Cheers#

The software ecosystem of Arch Linux is considered quite good among various Linux distributions, and many people choose Manjaro because it is based on Arch. Although most desktop applications in China only provide the more common .deb packages for domestic systems like Deepin and Kylin, due to the existence of AUR (Arch User's Repository), Arch users can publish software packages suitable for Arch distributions in publicly accessible repositories, and AUR can be accessed directly using the command-line tool yay.

This means that if a software package is not included in the Arch official repositories accessible by pacman, users can still install community-maintained packages through AUR.

For Arch users, using yay to access the Arch official repositories and install software from AUR is the best choice, but at that time, I was new to the Linux software ecosystem and knew nothing, which led to a very chaotic method of installing software, which can be described as follows:

  1. Search in the software manager provided by Manjaro, and if available, install the package from there;
  2. Try to search for the package using sudo pacman -S package_name;
  3. If the software provides an AppImage, use AppImage Launcher to install it;
  4. Directly download the .deb package from the official website and forcefully install it on Manjaro (Do not do this, as it may damage the package dependencies!);
  5. Use flatpak and flathub to install packages.

Since I had not discovered the useful tool yay before, and even after finding it, I wouldn't check AUR for packages, I was quite miserable when I first started using Manjaro. It took me two days to install QQ, WSL, and some cat software.

However, I learned to be smarter afterward; before installing software, I would first search on AUR to see if there were directly available packages. If not, I could also download the deb package and then use the tool debtap to convert it into a package suitable for Arch.

It is hard to believe that the biggest hurdle I encountered while installing software on Manjaro was—WeChat. The official Linux version of WeChat seems to have not been maintained for a long time and does not have an Arch package; there are many third-party WeChat clients on AUR, but many are outdated. Although they work, they never have the comfort of native software; I also tried using Wine to install the Windows version of WeChat on Linux, but Wine could not display Chinese correctly.

To this day, I have only installed QQ on this computer and have not found a suitable WeChat client.

Your Next MacBook#

One of the most fascinating aspects of the Linux desktop environment is its high degree of customization. I spent some fragmented time tweaking the KDE desktop, and now my Manjaro looks like this.

image

To achieve this effect, I used the KDE/Plasma global theme WhiteSur, which provides a Mac OS-like style, window styles, etc. At the same time, I also used Latte Dock to replace the original dock, beautifying it with the Latte theme provided by the WhiteSur author.

Of course, if it were just beautification, it wouldn't dare to be called a "MacBook." The MacBook is regarded by many as a productivity tool and an efficiency tool, not just a laptop.

Productivity is not determined by the machine itself, but by the software and its users. Since we are talking about software, we cannot ignore the software ecosystem. The software ecosystem of Mac OS goes without saying; finding alternatives for most efficiency tools in MacOS within Arch indeed requires a bit more effort.

Do More with Your Keyboard#

Alfred is an application launcher on Mac OS that can be summoned with a shortcut key, allowing you to type the name of the application (most of the time, just the first one or two letters of the application's name) to launch it. During this process, your hands do not need to leave the keyboard, and you do not need to search for the application you want among the desktop and dock icons with the mouse, saving time switching input devices and locating icons. There are many similar applications on Linux, and I ultimately chose Ulauncher.

image

The reason I chose to install an additional application launcher instead of using the KDE desktop's built-in start menu (which can be summoned with the WIN key from the original Windows system) is that Ulauncher provides a more fuzzy search method, making it easier for me to find the application I want to open. At the same time, I can also use it as a quick search entry; if the characters I input do not match any application's name, Ulauncher will display options to search for that keyword on Google / Stack Overflow / Wikipedia.

With the support of Ulauncher, combined with Alt + Tab for quickly switching between already opened windows, I can move freely between various applications. Moreover, I want to emphasize again that to complete these operations, your hands do not need to leave the keyboard at all.

The Renaissance of Editors#

I uninstalled the text editor that came with Manjaro because it was not very useful, so I, unfamiliar with the Linux software ecosystem, installed Sublime Text as my main editor aside from coding. However, after using it for a while, I found that I was not accustomed to this editor for several reasons:

  1. If used for coding, it provides too few features compared to the more extensible VS Code;
  2. If used purely for editing text and some configuration files, some of its features seem a bit redundant;
  3. I do not like its interface; the default tab indentation is too short.

So I began searching for a truly simple and easy-to-use editor. Coincidentally, I read on a minority site that Owen, the author of "Immersive Translation," has been using Neovim as his main editor. I had always heard that Vim is extremely efficient as an editor, and Neovim, as a more modern continuation of Vim, must be impressive, so I decided to give it a try.

However, when I saw the cumbersome configuration files of Vim and Neovim, I immediately felt a strong aversion—I do not like software that requires spending a lot of time on configuration. So I tried the out-of-the-box Helix, which claims to be a "post-modern" editor that requires minimal configuration and operates similarly to Vim.

When I started using Helix, I realized that for a pure text editor, a graphical interface can be completely discarded. Helix, driven by the terminal, can perform the necessary functions of a text editor such as searching, replacing, and switching files, while also implementing window splitting, multi-line text selection, syntax checking for various languages, and code highlighting. Overall, the initial experience was very comfortable.

However, I soon discovered a project called NvChad, which is a configuration file and plugin set for Neovim. This means that using NvChad allows Neovim to be ready to use out of the box. This perfectly solves the problem of Helix lacking a plugin system and having poor extensibility. Neovim configured through NvChad has features like file directory trees, Git integration, syntax checking, support for various linters, and the ability to open multiple files in tabs, making it a tool that can replace VS Code and many IDEs.

image

So I quickly abandoned Helix and VS Code and began using Neovim as my main editor. After all, it starts quickly in the terminal and can handle any editing task, whether it's a simple configuration file modification or developing an entire project, and you can enjoy the native Vim editing mode.

If it weren't for the fact that I had already purchased a software serial number for Typora, I would even consider using Neovim to replace all my text editors. However, thinking about it, that would be a bit too radical; visual editors like Typora can help writers focus on the text itself better than pure text editors like Neovim.

Real Productivity Tools#

Perhaps influenced by those around me, I also began to pay attention to efficiency and knowledge management. Speaking of productivity tools and knowledge management, it is hard not to think of Notion and its excellent database system. Although I mentioned in My Thoughts Flow Like a River that I do not like Notion's model because I feel it is not suitable for personal knowledge management, its product positioning is indeed not primarily focused on knowledge management but rather as a tool to enhance team collaboration efficiency, and I have recently experienced its power in this regard.

The databases and various views of Notion are well-known topics; rather than writing a product manual, it is better to discuss real and useful cases.

I serve as a moderator on the Backrooms Chinese Wiki. Although the various tasks within the site are not difficult, they are indeed numerous and varied. The only commonly used communication channel among the more than ten site managers is a "single-threaded communication" QQ group. Single-threaded means that even if there are several matters that need to be discussed and handled at the moment, they can only be addressed one by one in a queue. However, single-threaded communication is not the biggest problem; the biggest issue is that many matters that need to be addressed flow away with this linear stream—the better situation is that a matter has been finalized, but the staff who did not check the messages at that time are unaware of this decision and continue to handle things in the old way; the worse situation is that some matters are quickly forgotten because they have not been discussed to a conclusion, ultimately leading to nothing.

One recent day, I suddenly remembered Notion, a tool that had been elevated to the altar and then gradually faded from view. I had a rough idea, introduced it to others in the group, and then got to work.

image

After inviting others into the workspace, they could view and edit the pages together. This way, tasks can be categorized into to-do items, ongoing items, completed items, and items archived due to being too old, allowing everyone to know what needs to be done and what has been finalized. Since the site's management staff are all volunteers, there may be times when they cannot participate in work for personal reasons; when they return to site affairs, they only need to check the Notion workspace's Kanban to get a general idea of what has happened recently.

Each task is marked with a "responsible person" and "priority," so everyone knows which matters are more important and which tasks have no one responsible for them, allowing them to prioritize completing important tasks that are unassigned. If you click into each task's individual page, you can see the task's "tags," which indicate what aspect the task belongs to; it could be a technical issue, a policy revision issue, or a community-related matter. At this point, staff can choose whether to take on this task based on their authority; if they do take it on, they can continue reading to reference the detailed instructions left by the person who wrote the task.

Additionally, since most discussions among site staff occur in the QQ group, which is single-threaded, establishing a "proposal area" can help everyone clarify which matters have not been discussed to conclusion, while also facilitating the proposal of new ideas. An even more important role is to allow everyone to calm down and organize their thoughts, writing them into coherent text to share with others, thereby improving efficiency.

Although the free version of Notion does not allow assigning "member" permission groups to collaborators (meaning everyone who joins the workspace has the highest permissions, and someone unfamiliar with Notion may leave a tricky mess due to misoperations), the improvement in efficiency is significant.

I seem to have digressed, but I must mention Notion because I want to introduce the productivity tools I currently have installed on Manjaro, which form a very good division of labor.

  • Obsidian, as a bi-directional note-taking software, serves as my "second brain," storing all my systematic knowledge and notes;
  • Flomo, as a card-style note-taking software, stores my fragmented, unprocessed ideas;
  • Notion, as a productivity tool, is used for team collaboration and task assignment;
  • X-Mind, as a mind mapping software, is used to clarify thoughts before doing tasks (currently, I am trying to use the lighter and more feature-rich "Mubu" to replace the somewhat bloated X-Mind);
  • TickTick, as a planning tool, is used to plan my personal short-term and long-term tasks, and its built-in schedule and Pomodoro timer functions are also very useful.

If any device is to be called a "productivity tool," for me, at least three of the above tools must be present.


Postscript#

Because my main laptop, Shadow Elf, suffered a black screen, I could not continue using a Windows system computer before sending it for repair and before it was returned. Thus, this lightweight laptop, which I had not used much since setting up the system a few months before school started, was called into action and became my main device recently. Hence, this record of my adventures.

Additionally, here are some thoughts I had while writing this article:

  • The first subheading "Indifferent Reception" pays tribute to the name of a level in the adventure mode of "Don't Starve."
  • The second subheading "Pacman Cheers" contains two elements: Pacman (the character, also the name of the package manager that comes with Arch Linux) and Yay (the tool used to install AUR packages, full name Yet another Yogurt, which is spelled the same as the English onomatopoeia for cheering). Please, come up with a better pun.

By the way, today is an important day:

On February 14, 1946, the world's first computer, ENIAC, was born at the University of Pennsylvania in the United States.

Please be informed.

TL;DR#

  1. Installed the Manjaro system on an idle computer due to professional needs;
  2. Explored the software ecosystem of Arch Linux;
  3. Beautified the KDE/Plasma desktop environment to mimic Mac OS;
  4. Searched for efficiency tools and productivity software.

Cover image source: Christin Hume on Unsplash

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.