How to Run Maktaba Shamela on Linux (Fedora KDE)
This is a guide to getting Al-Maktabah Shamela running on Fedora KDE. If you’ve struggled with crashes, weird symbols, or the app simply refusing to open, this is for you.
Running legendary Arabic software like Maktaba Shamela on Linux used to be a nightmare because it relies on very old Windows technologies (Visual Basic 6 and legacy Python). But with a tool called Bottles, we can build a perfect "home" for it.
📋 Phase 1: Pre-Flight Checklist
Before we touch any software, you need three things:
The Shamela Installer: Your
.exeor.zipfile from the official site.The Secret DLLs: Go to a DLL archive site (like dll-files.com) and download:
libcrypto-1_1.dlllibssl-1_1.dll(Note: If they have -64 in the name, just rename them later to exactly the above).
An Internet Connection: Fedora needs to download some "compatibility layers."
📦 Phase 2: Installing the Foundation
We are going to use Bottles, which is the best way to run Windows apps without breaking your Linux system.
Open Discover (the blue shopping bag icon in your KDE menu).
Search for Bottles.
Click Install.
Once installed, open it.
🛠 Phase 3: Building the "Bottle"
Think of a "Bottle" as a mini-Windows computer living inside your Linux.
Click the + (plus) button in Bottles.
Name: Type
Shamela.Environment: Choose Application.
Click Create. Wait for the blue bar to finish. This sets up the folder structure.
💉 Phase 4: Installing Critical Dependencies
This is the step most people forget. Shamela is old school; it needs specific Windows "guts" to breathe.
Click on your new Shamela bottle.
On the left sidebar, click Dependencies.
In the search bar, find and install these (click the download icon next to each):
vb6run: (Visual Basic 6 runtime—mandatory for Shamela).cjkfontsorallfonts: (Crucial for Arabic text support so you don't see squares).vcredist2015: (Common C++ libraries).
📂 Phase 5: The Manual DLL "Hack"
Shamela’s search and database features use Python, which requires OpenSSL files that Wine usually misses.
In Bottles, click Browse Files (bottom of the screen). This opens your virtual Windows drive (
drive_c).Navigate to:
windows\system32.Take your downloaded
libcrypto-1_1.dllandlibssl-1_1.dlland copy-paste them here.Pro Tip: If your files are named
libcrypto-1_1-x64.dll, you must rename them tolibcrypto-1_1.dllor the app won't "see" them.
⚙️ Phase 6: The "Anti-Crash" Settings
Modern Linux uses high-speed graphics drivers (Vulkan) that older Windows apps hate. We need to tell the Bottle to slow down.
In Bottles, go to Settings (left sidebar).
Scroll to Components. Find DXVK and VKD3D—turn them both OFF.
Scroll to Environment Variables. Click the + button.
Value:
dxgi=dClick Add. (This forces the app to use its own simple graphics).
Scroll to Display and turn Virtual Desktop to ON. (This prevents the app from flickering or disappearing when you switch windows).
🚀 Phase 7: Installation & First Launch
Go back to the main Shamela screen in Bottles.
Click Run Executable.
Find your
ShamelaSetup.exeand let it run. Follow the Windows-style installation wizard.Wait! After it's done, Bottles should automatically show Maktaba Shamela in the Programs tab.
Click the Play icon.
❓ FAQ: "What if...?"
Q: Why is the text showing up as gibberish?
A: Go to the Dependencies tab in Bottles and ensure you installed allfonts. Also, make sure your system's "Regional Settings" in Fedora include Arabic support.
Q: It says "Database not found!"
A: Make sure you didn't move the Shamela folder after installing it. If you have the books on an external hard drive, you need to go to Bottles Settings > Drive Drives and add your external drive there.
Q: Can I update Shamela?
A: Yes! Just run the new updater .exe using the Run Executable button inside the same bottle.
Q: Why Bottles instead of just installing Wine?
A: Because if you mess up a setting in Bottles, you just delete the bottle and start over. If you mess up your main Wine installation, it's a headache to clean up. Bottles keeps your Fedora "clean."
For anyone on Fedora KDE struggling with Shamela: The trick isn't just Wine—it's disabling DXVK, overriding the dxgi DLL, and manually dropping OpenSSL 1.1.1 files into System32. Works like a charm!
This tutorial was generated by Gemini after a session of setting up Shamela on my Fedora KDE. I thought the experience could help others that use Linus and would love to use Shamela on it.
To contact me, you can use:
Comments
Post a Comment