From Mageia wiki
Jump to: navigation, search
m (.deb packages: link)
m (Wine: name of packages)
 
(148 intermediate revisions by 11 users not shown)
Line 1: Line 1:
 
[[Category:Documentation]]
 
[[Category:Documentation]]
 
[[Category:Howtos]]
 
[[Category:Howtos]]
{{Template:Draft}}
+
[[Category:Installing]]
{{introduction|Mageia have a lot of software readily packaged. However we can not have everything, and not always the latest, or it may even be that you want something old, or more than one version installed at the same time.  Here are some methods that can be used.}}
 
  
= Really not in Mageia ? =
+
{{multi_language_banner|[[Möglichkeiten um Anwendungen zu installieren-de|Deutsch]] ; [[Ways to install programs|English]] ; [[Formas de instalar programas|Español]] ; [[Les méthodes pour installer des programmes-fr|Français]] ; [[Manieren om programma's te installeren-nl|Nederlands]] ;}}
  
First, check if what you are looking for really is not packaged. It can be under another name than you search for, also remember the name of packages is most often all lower-case.  Or you can use another program, i.e depending on what desktop environment you install you have different readers for pdf installed per default, as example Okular for Plasma.
+
{{introduction|Mageia provides a lot of software readily packaged. However, we can not have everything, and not always the latest.
  
If you do not find a program you need, please ask in our forum.
+
It may even be that you want some older version, or more than one version installed at the same time.
  
== The proprietary drivers ==
+
Here are some methods that can be used.}}
  
The proprietary drivers i.e for graphics and wifi are shipped in the non-free media. I.e for Nvidia enable the nonfree and nonfree_update repos, and in MCC when you configure your Nvidia video card you will be asked if you wan to use nouveau or the Nvidia driver.
+
== Really not in Mageia ? ==
  
== Patent encumbered software ==
+
First, check if what you are looking for really is not packaged.  It can be under another name that you search for, also remember the name of packages is most often all lower-case.  Or you can use another program, i.e. depending on what desktop environment you install, you have different readers for pdf installed per default, for example, Okular for Plasma.
 +
 
 +
Here is a list of [[List_of_applications|some of the applications in Mageia]].
 +
 
 +
In the Mageia Software Management graphical application, you can also search by description, see [https://doc.mageia.org/mcc/9/en/content/software-management.html#rpmdrake documentation], item 3: ''Search mode''.  On command line you can use [[URPMI#urpmq|urpmq]] and [[URPMI#urpmf|urpmf]].
 +
 
 +
You can also check using the [https://madb.mageia.org/ Mageia Application Database].
 +
 
 +
To see what program may be of interest, try
 +
* [https://alternativeto.net/ Alternative.to.net]
 +
* [https://wiki.linuxquestions.org/wiki/Linux_software_equivalent_to_Windows_software Linux software equivalent to Windows software]
 +
* [https://www.linuxlinks.com/best-free-open-source-software/ Best free open source software]
 +
* [https://www.libhunt.com/ LibHunt] - "Discover trending open-source projects and their alternatives"
 +
 
 +
If you do not find the application you want in our official repositories, look also in [[#External_repos_with_Mageia_packages|External repos with Mageia packages]], and also check if it is available in one of our supported [[#Universal_package_formats|Universal package formats]].
 +
 
 +
''If you do not find a program you need, please ask in our forum!''
 +
 
 +
In Mageia backport repository you may find programs from next version of Mageia, or upgrades needing special attention. See [[URPMI#urpmi.addmedia|urpmi.addmedia]].
 +
 
 +
You may repackage a program from another Mageia release yourself, see [[#rpm_packages_from_other_Mageia_release|rpm packages from other Mageia release]] below.
 +
 
 +
=== The proprietary drivers ===
 +
 
 +
The proprietary drivers i.e for graphics and wifi are shipped in the non-free media. I.e. for Nvidia enable the nonfree and nonfree_update repos, and in MCC when you configure your Nvidia video card you will be asked if you want to use nouveau or the Nvidia driver.
 +
 
 +
=== Patent encumbered software ===
  
 
A lot of audio and video codecs that are restricted from free use in smaller or larger part of the world, and programs with such built in, are in the tainted repos.   
 
A lot of audio and video codecs that are restricted from free use in smaller or larger part of the world, and programs with such built in, are in the tainted repos.   
  
Optimally you should check if you can leagally use some particular package from there, depending on usage and in which part of the world you are, before installing it.
+
Optimally you should check if you can legally use some particular package from there, depending on usage and in which part of the world you are, before installing it.
  
 
If you want to update everything installed to the versions from the tainted repos: enable both tainted and tainted_updates, on 64-bit systems also the 32-bit versions, and as root issue urpmi --auto-select
 
If you want to update everything installed to the versions from the tainted repos: enable both tainted and tainted_updates, on 64-bit systems also the 32-bit versions, and as root issue urpmi --auto-select
  
== Normal package handling in Mageia ==
+
=== Normal package handling in Mageia ===
  
 
If you do not know the default package management in Mageia, please first see:
 
If you do not know the default package management in Mageia, please first see:
  
[[Install_media_in_Mageia_for_beginners]]
+
[[Install media in Mageia for beginners]]
  
[[Install_and_remove_software_for_beginners]]
+
[[Install and remove software for beginners]]
  
[[Installing_and_removing_software]]
+
[[Installing and removing software]]
  
[[Software_management]]
+
[[Software management]]
  
 
About using the command line see [[URPMI]].
 
About using the command line see [[URPMI]].
  
== More on package management in Mageia 6 ==
+
=== More on package management in Mageia ===
https://wiki.mageia.org/en/Mageia_6_Release_Notes#Package_management
+
 
 +
News from [[Mageia_9_Release_Notes#Package_management|Release notes]].
 +
 
 +
You may use DNF as package manager: see above link and [[Using DNF]]. It will use the same rpm database as urpmi in the background, BUT: they use different methods to track orphans = if you use both you should never use either's functionality to remove orphans, see [[Removing packages]].
 +
 
 +
Mageia may [[Feature:Switch_to_DNF|Switch to DNF]] in future.
 +
 
 +
==== 32 bit repos on 64 bit systems ====
 +
 
 +
Please note that '''on 64-bit systems''', the '''32-bit repositories are configured, but they are not enabled by default'''.
 +
 
 +
They are needed by some packages, such as [[#Steam|Steam]] and [[#Wine|Wine]]. If you want to install such packages that have dependencies on packages from 32-bit repositories, please make sure that you have "Core 32bit Release" and "Core 32bit Updates" enabled. Likewise for some cases the 32 bit Nonfree or Tainted (both in Release and Updates flavours) may be needed.
 +
 
 +
'''Important rules:'''
 +
* Don't enable a 32-bit repository without having the corresponding 64 bit repository enabled because 64-bits libs are preferred (generally) on 64-bit system.
 +
* If once a 32-bit repository is used, keep both its Release and Updates flavour enabled to not potentially hinder updates.
 +
 
 +
== Warnings on non-Mageia packages ==
 +
{{Warning|'''Compatibility.''' When using external sources, please '''tell what external sources you have installed''' anything from '''whenever you report any problem''' on Mageia forum, mail list, bug report or other channels.  Things can otherwise get confusing and unnecessary time consuming for all.  Especially confusing it may be when the packages are named like Mageia packages, i.e containing ".mga7" as part of package name.
 +
 
 +
'''Also note that upgrading Mageia to next version may become problematic.'''
 +
 
 +
Also see [[#Dependencies|Dependencies]] below.}}
 +
{{Warning|'''Security.''' Mageia naturally do not take any responsibility for any external package, be it RPM, AppImage, Flatpak, binary files... You are on your own to decide if you trust the software supplier regarding any security issue, malware etc. This may especially be an issue with closed source code applications. See mitigation tip in [[#Security|Security]] below.}}
 +
== External repos with Mageia packages ==
 +
 
 +
You may find a program you need packaged for Mageia, in a repository by the program creator or an enthusiast or organisation have packaged it and share.
 +
 
 +
=== Mageia enthusiasts ===
 +
* [https://ftp.blogdrake.net/GetRepoDrake/ BlogDrake]
 +
* [https://mageia-gr.org/rpm/ Greek community]
 +
* [https://www.mageialinux-online.org/forum/topic-29345+le-depot-mlo-rouvre.php MLO]
 +
 
 +
=== Other organisations ===
 +
Examples:
 +
* [https://wiki.trinitydesktop.org/Mageia_Trinity_Repository_Installation_Instructions Trinity] desktop for Mageia. Good description there how to use third party repos like this.
 +
* [https://forums.mageia.org/en/viewtopic.php?f=29&t=3101 Google apps repositories] (i.e [[Google_Earth|Earth]], [[Installing_Google_Chrome_in_Mageia|Chrome]], [[Google_talk_video_chat|Talk]])
 +
 
 +
=== Fedora COPR ===
 +
[[Fedora_COPR|Fedora COPR]] is a service provided by Fedora, used by many.
 +
 
 +
Examples:
 +
* [https://copr.fedorainfracloud.org/coprs/remi/qelectrotech/ Development version] of [[QElectroTech]].
  
You may use DNF as package manager: see above link and [https://wiki.mageia.org/en/Using_DNF here.].  It will use the same rpm database as urpmi in the background, BUT: they use different methods to track orphans = if you use both you should never use either's functionality to [[Removing_packages remove orphans]].
+
=== Other repositories ===
 +
Examples:
  
Mageia may switch to use DNF per default in Mageia 7 and onwards.
+
* Opera web browser Mageia compatible RPM in repository at Fedora: [https://rpm.opera.com/manual.html Instructions] using DNF package manager.
  
= Universal package formats =
+
== Universal package formats ==
  
 
There exist several ways to package software to make it easily installable on a lot of Linux distributions.
 
There exist several ways to package software to make it easily installable on a lot of Linux distributions.
  
== Appimage ==
+
=== AppImage ===
https://en.wikipedia.org/wiki/AppImage , https://appimage.org/ Programs can be found at the program authors sites or [https://bintray.com/probono/AppImages at the AppImage developer]
+
 
 +
AppImages are a kind of self-contained archives that can be downloaded and run directly without installation or the need for root rights;  Just download one file, make it executable: {{cmd|chmod a+x FreeCAD*.AppImage}}, and run it: {{cmd|./FreeCAD*}} . ''Given command examples are for when you open a console in the folder where you have downloaded the AppImage, i.e press F4 in Dolphin for the terminal.''
 +
 
 +
More information at https://en.wikipedia.org/wiki/AppImage and https://appimage.org/ .
 +
 
 +
Programs can be found at the program authors sites, collected and structured at https://www.appimagehub.com/ , [https://appimage.github.io/apps/ this list] or a browsing/downloader/updater app [https://github.com/prateekmedia/appimagepool AppImage Pool].
 +
 
 +
Examples: We have FreeCAD (a very capable mechanical CAD in heavy development) and Slic3r (3D printer CAM), but you may be interested in having the development versions to get extra features.  You may still have the Mageia packaged version installed, or more than one version in AppImage format. https://forums.mageia.org/en/viewtopic.php?f=7&t=12200
 +
 
 +
[https://github.com/AppImage/AppImageUpdate {{prog|AppImageUpdate}}] can be run to update some AppImages to latest version. It is itself an AppImage, and can also update itself. As it uses delta updates, the downloads are very small and efficient. '''Note''' that you currently need to [https://github.com/AppImage/AppImageUpdate/issues/182#issuecomment-972461213 make a link to certificates.] Unfortunately many AppImages are not prepared with required information for the updater to work. One good example though is FreeCAD, saving you a lot in download size. To check if an AppImage contain update information, issue {{cmd|./thatprogram.AppImage --appimage-updateinformation}}; no output means no info.
 +
 
 +
{{Note|If the AppImage application does not work because it is missing dependencies, that is a fault in the AppImage, as it is supposed to be self-contained. An incomplete AppImage may work on some distributions, and not on others. So if you see that problem, tell the application AppImage creator so they can fix the AppImage.}}
  
Appimages are kind of self contained archives that can be run directly.
+
=== Flatpak ===
  
Examples: We have FreeCAD (a very capable mechanical CAD in heavy development) and Slic3r (3D printer CAM), but you may be interested in having the development versions to get extra features. You may still have the Mageia packaged version installed, or more than one version in appimage format. https://forums.mageia.org/en/viewtopic.php?f=7&t=12200
+
{{prog|Flatpak}} is an utility for software deployment and package management for Linux.
  
== Flatpak ==
+
With this you can install a vast range of applications more directly from developers, and independent from the rpm package system.
https://en.wikipedia.org/wiki/Flatpak , https://flatpak.org/  Programs can be found at https://flathub.org/ or at the program authors sites.
 
  
Flatpack provides a sandbox environment.  
+
The Flatpak system maintains internal dependencies, installing what extra is needed automatically.
  
Install {{prog|flatpak}} from our repo.  When you start installing programs it will download a lot of dependencies and use quite a lot space in /var/lib/flatpack.
+
Programs are run sandboxed, except for rights asked at install time.
  
Example usage: [https://forums.mageia.org/en/viewtopic.php?f=15&t=11003&p=71011#p70972 How to install Spotify using flatpak].
+
For further reading see our wiki page [[Flatpak]].
  
== Java jar files ==
+
=== Java jar files ===
  
Generally the most versatile, also works on Microsoft and Apple systems.
+
Generally the most versatile also works on Microsoft and Apple systems.
Some may need much dependencies, while some have everything included. Example: FriBok (Swedish invoice and accounting)
+
Some may need many dependencies, while some have everything included. Example: FriBok (Swedish invoice and accounting)
  
 
In general, just start a java program with {{cmd|java -jar thejarfile.jar}}
 
In general, just start a java program with {{cmd|java -jar thejarfile.jar}}
  
Nice to know: the .jar file is an archive that can be opened in i.e Ark, so you can i.e edit internal configuration files (I.e i personalised my invoice formatting).
+
Nice to know: the .jar file is an archive that can be opened in i.e Ark, so you can i.e edit internal configuration files (i.e. I personalized my invoice formatting).
  
= Using foreign rpm directly =
+
== Using foreign rpm directly ==
  
With the normal caveat that it may not find its [[#Dependencies]], there is also the (small) risk that the rpm may perform some pre/post-install scripts that do something you do not want.
+
With the normal caveat that it may not find its [[#Dependencies|dependencies]], there is also the (small) risk that the rpm may perform some pre/post-install scripts that do something you do not want.
  
 
Sometimes you just have to though.  Here is an example [https://forums.mageia.org/en/viewtopic.php?f=24&t=4203&p=72080#p72080 installing a Canon printer driver] using the vendor rpm but without using their install script.
 
Sometimes you just have to though.  Here is an example [https://forums.mageia.org/en/viewtopic.php?f=24&t=4203&p=72080#p72080 installing a Canon printer driver] using the vendor rpm but without using their install script.
  
= Binary files =
+
== Repackaging rpm ==
 +
 
 +
=== rpm packages from other Mageia release ===
 +
 
 +
In Mageia development release "Cauldron", there may exist a newer version you need of a program.  You can then often download that rpm and rebuild it to suit the Mageia release you run, see [[How to do your own backports]].
 +
 
 +
=== Foreign .rpm packages ===
 +
 
 +
An rpm from another distro can often be rebuilt for Mageia. Please refer to [[Packagers RPM tutorial]]. A good source for the best suitable package candidates is Fedora.
 +
 
 +
Also see our forum thread [https://forums.mageia.org/en/viewtopic.php?f=4&t=5530 How to rebuild an src.rpm, using amoebax as example]
 +
 
 +
=== .deb packages ===
 +
 
 +
Programs packaged for Debian/Ubuntu in .deb format can sometimes be converted using the program {{prog|alien}}, which you can install from Mageia repo. ''- But Alien is broken {{Bug|28607}} and not maintained upstream. ''
 +
It seems that the package is not maintained for several years.
 +
 
 +
Alien was once intended as a program that could convert files from various formats to other formats, for example between the rpm format (Mageia, Redhat), dpkg (Debian), slp (Stampede), and tgz (Slackware). If you want to use a package from a Linux distribution other than the one you have installed on your PC, use Alien to convert such a package to your preferred package format. Then you install that converted package.
 +
 
 +
 
 +
Old example: [https://forums.mageia.org/en/viewtopic.php?f=15&t=11003&p=71011#p64907 How to repackage and install Spotify]
 +
 
 +
== Binary files ==
  
 
Some have an installer script.  It may be a good idea to look into the script to see what it does - you may want it in some other way, or not need to run it.
 
Some have an installer script.  It may be a good idea to look into the script to see what it does - you may want it in some other way, or not need to run it.
  
== In user home ==
+
Some programs are just a binary file you set executable permission on, and run.  Other may come as a .sh script with embedded/compressed binary at the end, that it unpacks when you run it.  Other programs may come like a compressed folder tree you unpack where you want it, read any documents like readme and help files you find in it, and run the executable.
  
Some programs are best installed in users /home. Example: Eagle CAD (Proprietary printed cirquit CAD)
+
Like always it is good to start non-Mageia packaged programs the first time from the command line in a terminal so you see any messages, like missing [[#Dependencies|dependencies]].
  
Often you download a package and unpacks it where you want it and run it from there.
+
=== In user home ===
  
== For all users, i.e Acrobat Reader ==
+
Often programs are best installed in users {{folder|/home/username/}}. Example: Eagle CAD (Proprietary printed circuit CAD)
  
These programs should end up in the {{file|/usr/local/}} directory. This directory is intended for non-official packages.
+
=== For all users, i.e Acrobat Reader ===
  
= Compiling the program yourself =
+
These programs should end up in the {{folder|/usr/local/}} directory. This directory is intended for non-official packages.
 +
 
 +
== Compiling the program yourself ==
  
 
The familiar trilogy:
 
The familiar trilogy:
  
<pre>
+
{{pre|<nowiki>./configure
./configure
 
 
make
 
make
make install
+
make install</nowiki>}}
</pre>
 
  
== ... Optionally making an rpm ==
+
=== ... Optionally making an rpm ===
  
 
Instead of that triology above, you can use {{prog|checkinstall}} to generate an rpm:
 
Instead of that triology above, you can use {{prog|checkinstall}} to generate an rpm:
  
<pre>
+
{{pre|<nowiki>./configure
./configure
 
 
make
 
make
checkinstall
+
checkinstall</nowiki>}}
</pre>
 
  
 
You will then get an rpm that can be installed using {{prog|urpmi}}, and can also be uninstalled when you want to.  If the tarball already includes a good spec file, it is even easier:
 
You will then get an rpm that can be installed using {{prog|urpmi}}, and can also be uninstalled when you want to.  If the tarball already includes a good spec file, it is even easier:
Line 116: Line 214:
 
{{cmd|rpmbuild -tb ballname.tar.gz}}
 
{{cmd|rpmbuild -tb ballname.tar.gz}}
  
== Qt programs ==
+
=== Qt programs ===
 +
 
 +
Mageia has the development suite so you may load the source in QtCreator and compile and launch it from there, also for debug, edit, development.
 +
 
 +
Or for just compiling it you can use {{prog|qmake}}, see example for shematic program [[QElectroTech]].
 +
 
 +
== Running MSWindows programs ==
 +
 
 +
=== Wine ===
 +
 
 +
Wine can be used to translate system calls between MSWindows programs and the Linux system.  It works for a lot of programs but not all.  See: [https://www.winehq.org/] and [https://wiki.winehq.org/Main_Page] .
 +
 
 +
For Wine integrated into Steam see [[#Proton|Proton]].
 +
 
 +
Sometimes Wine works, other times it doesn't work. There are several bug-reports still open, see there for workarounds.
 +
 
 +
{{Bug|16273}} : If launching a wine app gives warnings that suitable versions are missing, see this bug.
 +
 
 +
{{bug|28814}} - Wine 32-bit install on 64-bit system doesn't pull mesa 32-bit drivers
 +
 
 +
{{bug|28840}} - wine32 should require libjpeg.so.8
 +
 
 +
{{bug|31989}} - WINE: Problematic WINEPREFIX; and dep version conflicts
  
Mageia have the development suite so you may load it in QtCreator and compile and launch it from there.
 
  
= Repackaging rpm =
+
Install from our repos:
 +
* on a 32 bit Mageia install {{prog|wine}}. For support of 32 bit Microsoft Windows applications {{prog|wine32}} will be installed automatically.
 +
* on a 64 bit Mageia install {{prog|wine64}}. If you need support for 32 bit Microsoft Windows applications you need to install {{prog|wine32}} additionally.
  
== rpm packages from other Mageia release ==
+
{{prog|wine-mono}} and {{prog|mingw64-wine-gecko}} / {{prog|mingw32-wine-gecko}} get installed automatically as additional dependency.
  
In Mageia development release "Cauldron", there may exist a newer version you need of a program.  You can then often download that rpm and rebuild it to suit the Mageia release you run, see [[How_to_do_your_own_backports]].
+
For '''Wine32 and PlayOnLinux''' too, you may need to '''manually install''' {{prog|libmesagl1}} and {{prog|libmesaglu1}} ''{{Bug|28814}}'', and {{prog|libjpeg8}} ''{{Bug|28840}}'' as some programs need them.
  
== Foreign .rpm packages ==
+
{{Note|In order to install wine32 on a 64-bit installation, the Core 32-bit Release and Core 32-bit Updates repositories must be enabled - Please read [[#32_bit_repos_on_64_bit_systems|'''32 bit repos on 64 bit systems.''']]}}
  
An rpm from another distro can often be rebuilt for Mageia. Please refer to [[Packagers RPM tutorial]]. A good source for best suitable package candidates is Fedora.
+
Configure Wine by starting {{prog|winecfg}} and launch programs directly by issuing {{cmd|wine PROGRAM [ARGUMENTS...]}}.
  
== .deb packages ==
+
For more thorough and more automated configuring including help to download libraries and programs: install from our repo and run {{prog|q4wine}}. See  [https://q4wine.brezblock.org.ua home page].
 +
{{prog|q4wine}} also includes the well known Winetricks application.
  
Programs packaged for Debian/Ubuntu/... in .deb format can often be converted using the program {{prog|alien}}, which you can install from Mageia repo.
+
=== PlayOnLinux ===
  
Example: [https://forums.mageia.org/en/viewtopic.php?f=15&t=11003&p=71011#p64907 How to repackage and install Spotify]
+
{{prog|PlayOnLinux}} installs games and programs developed for Microsoft Windows. Since not many games currently work directly under GNU/Linux, PlayOnLinux can be a solution to play Windows games within Linux.
 +
 +
{{Note|PlayOnLinux will install Wine as dependency, and for wine32 on a 64 bit installation, the Core 32bit Release and Core 32bit Updates repositories must be enabled - Please read [[#32_bit_repos_on_64_bit_systems|'''32 bit repos on 64 bit systems.''']]}}
  
= Running MSWindows programs =
+
==== Phoenicis PlayOnLinux ====
  
Wine can be used to translate system calls between MSWindows programs and the Linux system.  It works for a lot of programs but not all. See https://www.winehq.org/.
+
{{prog|Phoenicis PlayOnLinux}} is the successor of PlayOnLinux. See [https://github.com/PhoenicisOrg/phoenicis Phoenicis on github]. Possible to install via [[#Flatpak|Flatpak]].
  
Install {{prog|wine}} from our repos, (wine64 if you run 64 bit Mageia) and q4wine if you want a Qt5 GUI for configuring it.
+
== Running DOS programs ==
  
= Running DOS programs =
+
In our repo you can find dosbox, and dosemu with the graphical extension xdosemu.  There also is an image "dosemu-freedos" of FreeDOS, which is a free/libre alternative to MS DOS, for use with (x)dosemu.  They use certain special features of the Linux kernel and the 80386+ processor.  For more info read the package descriptions and search the net.
  
In our repo you can find dosbox, and dosemu with the graphical extension xdosemu.  There also is an image "dosemu-freedos" of FreeDOS, which is a free/libre alternative to MS DOS, for use with (x)dosemu.
+
== Emulators ==
  
= Emulators =
+
=== Run "anything" for PC by using another OS ===
  
== Run "anything" for PC by using another OS ==
 
 
Emulate one or more other PC simultaneously and install the operating systems you need, and easily stop, start, clone, archive them.
 
Emulate one or more other PC simultaneously and install the operating systems you need, and easily stop, start, clone, archive them.
  
The most desktop friendly is [[VirtualBox]] from our repos.  Using that you can install almost any PC operating system in a virtual PC, so you can install DOS, Windows XP, ...
+
Using virtualised PC hardware [[#Virtualised_hardware|(see below)]], you can install almost any PC operating systems in one or more virtual PC - you can install DOS, Windows XP, 7, 10... or other Linux.
  
== Emulate non-PC computers ==
+
=== Emulate non-PC computers ===
  
 
Fancy old games?  We have some emulators for DOS and various game consoles and old home computers, for which you can find games and other software on the internet or you maybe have them.  Search for packages containing "emulator" in all packages summaries.
 
Fancy old games?  We have some emulators for DOS and various game consoles and old home computers, for which you can find games and other software on the internet or you maybe have them.  Search for packages containing "emulator" in all packages summaries.
  
= Game environments (and some apps too) =
+
== Game environments (and some apps too) ==
 +
 
 +
Also see [[Use_Mageia_to_play_Windows_Games|Use Mageia to play Windows Games]].
 +
 
 +
=== Steam ===
 +
 
 +
You can install {{prog|Steam}} from our repo, and it provides an environment which can download and run games, and other software.  A lot of software is available for more than one operating system.  See [https://support.steampowered.com/kb_article.php?ref=8495-OKZC-0159 here] for Linux apps.
 +
 
 +
{{Note|To install Steam you first need to enable 32 bit repositories - Please read [[#32_bit_repos_on_64_bit_systems|'''32 bit repos on 64 bit systems.''']]}}
 +
 
 +
Some games may need you to select [[Setup_the_graphical_server#Forcing_icd|Nvidia or Intel icd]].
 +
 
 +
==== Proton ====
 +
 
 +
[https://en.wikipedia.org/wiki/Proton_(software) Proton] is a port by Valve of [[#Wine|Wine]]. Proton is integrated into Steam as one of several compatibility layers [https://www.gamingonlinux.com/steamplay/ Steam Play] You can use Proton to '''play games made for MS Windows''' on Linux systems. [https://www.gamingonlinux.com/articles/14552 How-to guide]. Unofficial game compatibility database: [https://www.protondb.com/ ProtonDB]
 +
 
 +
=== Lutris ===
 +
 
 +
We also have [https://lutris.net/ Lutris] packaged, that installs and launches games from many platforms and eras. ''"Lutris is a video game preservation platform aiming to keep your video game collection up and running for the years to come." "We provide emulators, compatibility layers and game engine re-implementations"''.
 +
 
 +
Note that it depends on Wine to be installed, as it use its dependencies and drivers, although it use an own game optimised wine version to run the games.
 +
 
 +
If you have Hybrid Graphics (dual GPU), see paragraph [[Mageia-prime_for_Optimus#Lutris_configuration|Lutris configuration]].
 +
 
 +
=== Flashpoint ===
 +
 
 +
[[Flashpoint]] (not packaged) supports games and animations created for a variety of web plugins and standards - not just Flash.
 +
 
 +
=== Heroic Game Launcher ===
 +
 
 +
To install Heroic Game Launcher, download the .rpm file directly from the official Heroic Games Launcher website
 +
[https://heroicgameslauncher.com/downloads] (select "Other" to download the .rpm)
 +
 
 +
Then use "Install software" (right-click on the downloaded .rpm) or install via terminal:
 +
<pre>rpm -i --nodeps heroic-2.9.2.x86_64.rpm</pre>
 +
 
 +
 
 +
Each time there is a new Heroic version available you need to uninstall the old version and install the new one manually:
  
== Steam ==
+
<pre>urpme heroic-2.9.2.x86_64
You can install steam from our repo, and it provides an environment which can download and run games, and other software. Some software is available for more than OS. [https://steamdb.info/linux/ Here] is a list of apps for Linux.
+
rpm -i --nodeps heroic-2.10.0.x86_64.rpm</pre>
  
= Common issues =
+
Deinstallation can also be done via MCC.
  
== Dependencies ==
+
== Common issues ==
  
Often foreign .rpm, converted .deb, binaries, .jar files, and some universal packages are dependant on one or more libraries.  Usually Mageia have them all, but under different names.
+
=== Dependencies ===
  
Try launching the program in a text terminal (i.e in konsole in Plasma), and it will often tell you what file it can not find.  Then you can use {{prog|urpmf}} or {{prog|diskdrake}} to search for it in a Mageia package and install that.  If we have it in another place or slightly different version, you may be successful with symlinking or copying.
+
Often foreign .rpm, converted .deb, binaries, .jar files, and some universal packages are dependant on one or more libraries.  Usually, Mageia has them all, but under different names.
 +
 
 +
Try launching the program in a text terminal (i.e in konsole in Plasma), and it will often tell you what file it can not find.  Then you can use {{prog|urpmf}} or {{prog|rpmdrake}} to search for it in a Mageia package and install that.  If we have it in another place or slightly different version, you may be successful with symlinking or copying.
  
 
One common difference is that on Mageia the 64 bit libs are named lib64* but the rpm may need/look for the lib without the name "64".
 
One common difference is that on Mageia the 64 bit libs are named lib64* but the rpm may need/look for the lib without the name "64".
 +
 +
=== Security ===
 +
 +
o Flatpack provides a kind of sandboxing in itself.
 +
 +
o [https://firejail.wordpress.com/ '''Firejail'''] provides sandboxing for many programs, and is [https://firejail.wordpress.com/documentation-2/appimage-support/ '''good for AppImage'''] programs too. You need packages {{prog|firejail}} and also {{prog|firetools}} for configuring.  '''Basic simple usage: prefix your program with "firejail".''' Using firetools: launch {{cmd|firetools}} and you see a pane with default quickstart links, and at top left two configuration links.  Also see [https://iwf1.com/firejail-is-an-amazing-linux-tool-that-helps-you-bolster-security here.]
 +
 +
o Systems run under emulators like VirtualBox only share folders that you configure for sharing and can be read-only.
 +
 +
== Containers ==
 +
 +
Containers offer an environment as close as possible as the one you'd get from a VM (Virtual Machine / vitualised hardware) but without the overhead that comes with running a separate kernel and simulating all the hardware.
 +
For more information see Wikipedia on [https://en.wikipedia.org/wiki/OS-level_virtualization OS-level virtualization].
 +
A good to the point introduction by RedHat is [https://developers.redhat.com/blog/2018/02/22/container-terminology-practical-introduction# here].
 +
 +
In Mageia repos you find [https://linuxcontainers.org/ lxc], [https://www.docker.com/ Docker] [https://en.wikipedia.org/wiki/Docker_(software) (Wikipedia)] and [https://podman.io/ Podman].  Some general [[Virtualisation#Managers|Virtualisation Managers]] handle containers too.
 +
 +
Docker use a client-server architecture, while Podman use a daemonless architecture.
 +
 +
== Virtualised hardware ==
 +
 +
For hardware virtualisation (Virtual Machine, VM - more or less emulate a computer and install OS on it) see our [[Virtualisation]] page. - VirtualBox, QEMU, KVM, Virt-Manager, Xen, are all packaged and VMware can be installed.
 +
 +
== Cloud server ==
 +
 +
On Mageia you can install [[Nextcloud]] server which in turn can run a lot of plugin web applications like shared calendar, OnlyOffice, etc.
 +
 +
Nextcloud runs under the internet server Apache or Nginx.  The server can run other things too, like [[Urpmi-proxy]].
 +
 +
== Even more ways... ==
 +
 +
''Just short mentions, not to elaborate on here:''
 +
 +
* There exist great plugins/add-ons for web browsers (i.e [https://addons.mozilla.org Firefox]) and other programs, macros for some programs, ...
 +
 +
* [https://pypi.org/project/pip/ Python pip], the package installer for Python.
 +
 +
* You can execute command line scripts and the sort in various languages...

Latest revision as of 01:36, 10 March 2024


Drakconf multiflag.png
Other languages
Deutsch ; English ; Español ; Français ; Nederlands ;
Synopsis:
Mageia provides a lot of software readily packaged. However, we can not have everything, and not always the latest.

It may even be that you want some older version, or more than one version installed at the same time.

Here are some methods that can be used.

Really not in Mageia ?

First, check if what you are looking for really is not packaged. It can be under another name that you search for, also remember the name of packages is most often all lower-case. Or you can use another program, i.e. depending on what desktop environment you install, you have different readers for pdf installed per default, for example, Okular for Plasma.

Here is a list of some of the applications in Mageia.

In the Mageia Software Management graphical application, you can also search by description, see documentation, item 3: Search mode. On command line you can use urpmq and urpmf.

You can also check using the Mageia Application Database.

To see what program may be of interest, try

If you do not find the application you want in our official repositories, look also in External repos with Mageia packages, and also check if it is available in one of our supported Universal package formats.

If you do not find a program you need, please ask in our forum!

In Mageia backport repository you may find programs from next version of Mageia, or upgrades needing special attention. See urpmi.addmedia.

You may repackage a program from another Mageia release yourself, see rpm packages from other Mageia release below.

The proprietary drivers

The proprietary drivers i.e for graphics and wifi are shipped in the non-free media. I.e. for Nvidia enable the nonfree and nonfree_update repos, and in MCC when you configure your Nvidia video card you will be asked if you want to use nouveau or the Nvidia driver.

Patent encumbered software

A lot of audio and video codecs that are restricted from free use in smaller or larger part of the world, and programs with such built in, are in the tainted repos.

Optimally you should check if you can legally use some particular package from there, depending on usage and in which part of the world you are, before installing it.

If you want to update everything installed to the versions from the tainted repos: enable both tainted and tainted_updates, on 64-bit systems also the 32-bit versions, and as root issue urpmi --auto-select

Normal package handling in Mageia

If you do not know the default package management in Mageia, please first see:

Install media in Mageia for beginners

Install and remove software for beginners

Installing and removing software

Software management

About using the command line see URPMI.

More on package management in Mageia

News from Release notes.

You may use DNF as package manager: see above link and Using DNF. It will use the same rpm database as urpmi in the background, BUT: they use different methods to track orphans = if you use both you should never use either's functionality to remove orphans, see Removing packages.

Mageia may Switch to DNF in future.

32 bit repos on 64 bit systems

Please note that on 64-bit systems, the 32-bit repositories are configured, but they are not enabled by default.

They are needed by some packages, such as Steam and Wine. If you want to install such packages that have dependencies on packages from 32-bit repositories, please make sure that you have "Core 32bit Release" and "Core 32bit Updates" enabled. Likewise for some cases the 32 bit Nonfree or Tainted (both in Release and Updates flavours) may be needed.

Important rules:

  • Don't enable a 32-bit repository without having the corresponding 64 bit repository enabled because 64-bits libs are preferred (generally) on 64-bit system.
  • If once a 32-bit repository is used, keep both its Release and Updates flavour enabled to not potentially hinder updates.

Warnings on non-Mageia packages

Warning!
Compatibility. When using external sources, please tell what external sources you have installed anything from whenever you report any problem on Mageia forum, mail list, bug report or other channels. Things can otherwise get confusing and unnecessary time consuming for all. Especially confusing it may be when the packages are named like Mageia packages, i.e containing ".mga7" as part of package name.

Also note that upgrading Mageia to next version may become problematic.

Also see Dependencies below.

Warning!
Security. Mageia naturally do not take any responsibility for any external package, be it RPM, AppImage, Flatpak, binary files... You are on your own to decide if you trust the software supplier regarding any security issue, malware etc. This may especially be an issue with closed source code applications. See mitigation tip in Security below.

External repos with Mageia packages

You may find a program you need packaged for Mageia, in a repository by the program creator or an enthusiast or organisation have packaged it and share.

Mageia enthusiasts

Other organisations

Examples:

Fedora COPR

Fedora COPR is a service provided by Fedora, used by many.

Examples:

Other repositories

Examples:

  • Opera web browser Mageia compatible RPM in repository at Fedora: Instructions using DNF package manager.

Universal package formats

There exist several ways to package software to make it easily installable on a lot of Linux distributions.

AppImage

AppImages are a kind of self-contained archives that can be downloaded and run directly without installation or the need for root rights; Just download one file, make it executable: chmod a+x FreeCAD*.AppImage, and run it: ./FreeCAD* . Given command examples are for when you open a console in the folder where you have downloaded the AppImage, i.e press F4 in Dolphin for the terminal.

More information at https://en.wikipedia.org/wiki/AppImage and https://appimage.org/ .

Programs can be found at the program authors sites, collected and structured at https://www.appimagehub.com/ , this list or a browsing/downloader/updater app AppImage Pool.

Examples: We have FreeCAD (a very capable mechanical CAD in heavy development) and Slic3r (3D printer CAM), but you may be interested in having the development versions to get extra features. You may still have the Mageia packaged version installed, or more than one version in AppImage format. https://forums.mageia.org/en/viewtopic.php?f=7&t=12200

AppImageUpdate can be run to update some AppImages to latest version. It is itself an AppImage, and can also update itself. As it uses delta updates, the downloads are very small and efficient. Note that you currently need to make a link to certificates. Unfortunately many AppImages are not prepared with required information for the updater to work. One good example though is FreeCAD, saving you a lot in download size. To check if an AppImage contain update information, issue ./thatprogram.AppImage --appimage-updateinformation; no output means no info.

Note:
If the AppImage application does not work because it is missing dependencies, that is a fault in the AppImage, as it is supposed to be self-contained. An incomplete AppImage may work on some distributions, and not on others. So if you see that problem, tell the application AppImage creator so they can fix the AppImage.

Flatpak

Flatpak is an utility for software deployment and package management for Linux.

With this you can install a vast range of applications more directly from developers, and independent from the rpm package system.

The Flatpak system maintains internal dependencies, installing what extra is needed automatically.

Programs are run sandboxed, except for rights asked at install time.

For further reading see our wiki page Flatpak.

Java jar files

Generally the most versatile also works on Microsoft and Apple systems. Some may need many dependencies, while some have everything included. Example: FriBok (Swedish invoice and accounting)

In general, just start a java program with java -jar thejarfile.jar

Nice to know: the .jar file is an archive that can be opened in i.e Ark, so you can i.e edit internal configuration files (i.e. I personalized my invoice formatting).

Using foreign rpm directly

With the normal caveat that it may not find its dependencies, there is also the (small) risk that the rpm may perform some pre/post-install scripts that do something you do not want.

Sometimes you just have to though. Here is an example installing a Canon printer driver using the vendor rpm but without using their install script.

Repackaging rpm

rpm packages from other Mageia release

In Mageia development release "Cauldron", there may exist a newer version you need of a program. You can then often download that rpm and rebuild it to suit the Mageia release you run, see How to do your own backports.

Foreign .rpm packages

An rpm from another distro can often be rebuilt for Mageia. Please refer to Packagers RPM tutorial. A good source for the best suitable package candidates is Fedora.

Also see our forum thread How to rebuild an src.rpm, using amoebax as example

.deb packages

Programs packaged for Debian/Ubuntu in .deb format can sometimes be converted using the program alien, which you can install from Mageia repo. - But Alien is broken mga#28607 and not maintained upstream. It seems that the package is not maintained for several years.

Alien was once intended as a program that could convert files from various formats to other formats, for example between the rpm format (Mageia, Redhat), dpkg (Debian), slp (Stampede), and tgz (Slackware). If you want to use a package from a Linux distribution other than the one you have installed on your PC, use Alien to convert such a package to your preferred package format. Then you install that converted package.


Old example: How to repackage and install Spotify

Binary files

Some have an installer script. It may be a good idea to look into the script to see what it does - you may want it in some other way, or not need to run it.

Some programs are just a binary file you set executable permission on, and run. Other may come as a .sh script with embedded/compressed binary at the end, that it unpacks when you run it. Other programs may come like a compressed folder tree you unpack where you want it, read any documents like readme and help files you find in it, and run the executable.

Like always it is good to start non-Mageia packaged programs the first time from the command line in a terminal so you see any messages, like missing dependencies.

In user home

Often programs are best installed in users /home/username/. Example: Eagle CAD (Proprietary printed circuit CAD)

For all users, i.e Acrobat Reader

These programs should end up in the /usr/local/ directory. This directory is intended for non-official packages.

Compiling the program yourself

The familiar trilogy:

./configure make make install

... Optionally making an rpm

Instead of that triology above, you can use checkinstall to generate an rpm:

./configure make checkinstall

You will then get an rpm that can be installed using urpmi, and can also be uninstalled when you want to. If the tarball already includes a good spec file, it is even easier:

rpmbuild -tb ballname.tar.gz

Qt programs

Mageia has the development suite so you may load the source in QtCreator and compile and launch it from there, also for debug, edit, development.

Or for just compiling it you can use qmake, see example for shematic program QElectroTech.

Running MSWindows programs

Wine

Wine can be used to translate system calls between MSWindows programs and the Linux system. It works for a lot of programs but not all. See: [1] and [2] .

For Wine integrated into Steam see Proton.

Sometimes Wine works, other times it doesn't work. There are several bug-reports still open, see there for workarounds.

mga#16273 : If launching a wine app gives warnings that suitable versions are missing, see this bug.

mga#28814 - Wine 32-bit install on 64-bit system doesn't pull mesa 32-bit drivers

mga#28840 - wine32 should require libjpeg.so.8

mga#31989 - WINE: Problematic WINEPREFIX; and dep version conflicts


Install from our repos:

  • on a 32 bit Mageia install wine. For support of 32 bit Microsoft Windows applications wine32 will be installed automatically.
  • on a 64 bit Mageia install wine64. If you need support for 32 bit Microsoft Windows applications you need to install wine32 additionally.

wine-mono and mingw64-wine-gecko / mingw32-wine-gecko get installed automatically as additional dependency.

For Wine32 and PlayOnLinux too, you may need to manually install libmesagl1 and libmesaglu1 mga#28814, and libjpeg8 mga#28840 as some programs need them.

Note:
In order to install wine32 on a 64-bit installation, the Core 32-bit Release and Core 32-bit Updates repositories must be enabled - Please read 32 bit repos on 64 bit systems.

Configure Wine by starting winecfg and launch programs directly by issuing wine PROGRAM [ARGUMENTS...].

For more thorough and more automated configuring including help to download libraries and programs: install from our repo and run q4wine. See home page. q4wine also includes the well known Winetricks application.

PlayOnLinux

PlayOnLinux installs games and programs developed for Microsoft Windows. Since not many games currently work directly under GNU/Linux, PlayOnLinux can be a solution to play Windows games within Linux.

Note:
PlayOnLinux will install Wine as dependency, and for wine32 on a 64 bit installation, the Core 32bit Release and Core 32bit Updates repositories must be enabled - Please read 32 bit repos on 64 bit systems.

Phoenicis PlayOnLinux

Phoenicis PlayOnLinux is the successor of PlayOnLinux. See Phoenicis on github. Possible to install via Flatpak.

Running DOS programs

In our repo you can find dosbox, and dosemu with the graphical extension xdosemu. There also is an image "dosemu-freedos" of FreeDOS, which is a free/libre alternative to MS DOS, for use with (x)dosemu. They use certain special features of the Linux kernel and the 80386+ processor. For more info read the package descriptions and search the net.

Emulators

Run "anything" for PC by using another OS

Emulate one or more other PC simultaneously and install the operating systems you need, and easily stop, start, clone, archive them.

Using virtualised PC hardware (see below), you can install almost any PC operating systems in one or more virtual PC - you can install DOS, Windows XP, 7, 10... or other Linux.

Emulate non-PC computers

Fancy old games? We have some emulators for DOS and various game consoles and old home computers, for which you can find games and other software on the internet or you maybe have them. Search for packages containing "emulator" in all packages summaries.

Game environments (and some apps too)

Also see Use Mageia to play Windows Games.

Steam

You can install Steam from our repo, and it provides an environment which can download and run games, and other software. A lot of software is available for more than one operating system. See here for Linux apps.

Note:
To install Steam you first need to enable 32 bit repositories - Please read 32 bit repos on 64 bit systems.

Some games may need you to select Nvidia or Intel icd.

Proton

Proton is a port by Valve of Wine. Proton is integrated into Steam as one of several compatibility layers Steam Play You can use Proton to play games made for MS Windows on Linux systems. How-to guide. Unofficial game compatibility database: ProtonDB

Lutris

We also have Lutris packaged, that installs and launches games from many platforms and eras. "Lutris is a video game preservation platform aiming to keep your video game collection up and running for the years to come." "We provide emulators, compatibility layers and game engine re-implementations".

Note that it depends on Wine to be installed, as it use its dependencies and drivers, although it use an own game optimised wine version to run the games.

If you have Hybrid Graphics (dual GPU), see paragraph Lutris configuration.

Flashpoint

Flashpoint (not packaged) supports games and animations created for a variety of web plugins and standards - not just Flash.

Heroic Game Launcher

To install Heroic Game Launcher, download the .rpm file directly from the official Heroic Games Launcher website [3] (select "Other" to download the .rpm)

Then use "Install software" (right-click on the downloaded .rpm) or install via terminal:

rpm -i --nodeps heroic-2.9.2.x86_64.rpm


Each time there is a new Heroic version available you need to uninstall the old version and install the new one manually:

urpme heroic-2.9.2.x86_64
rpm -i --nodeps heroic-2.10.0.x86_64.rpm

Deinstallation can also be done via MCC.

Common issues

Dependencies

Often foreign .rpm, converted .deb, binaries, .jar files, and some universal packages are dependant on one or more libraries. Usually, Mageia has them all, but under different names.

Try launching the program in a text terminal (i.e in konsole in Plasma), and it will often tell you what file it can not find. Then you can use urpmf or rpmdrake to search for it in a Mageia package and install that. If we have it in another place or slightly different version, you may be successful with symlinking or copying.

One common difference is that on Mageia the 64 bit libs are named lib64* but the rpm may need/look for the lib without the name "64".

Security

o Flatpack provides a kind of sandboxing in itself.

o Firejail provides sandboxing for many programs, and is good for AppImage programs too. You need packages firejail and also firetools for configuring. Basic simple usage: prefix your program with "firejail". Using firetools: launch firetools and you see a pane with default quickstart links, and at top left two configuration links. Also see here.

o Systems run under emulators like VirtualBox only share folders that you configure for sharing and can be read-only.

Containers

Containers offer an environment as close as possible as the one you'd get from a VM (Virtual Machine / vitualised hardware) but without the overhead that comes with running a separate kernel and simulating all the hardware. For more information see Wikipedia on OS-level virtualization. A good to the point introduction by RedHat is here.

In Mageia repos you find lxc, Docker (Wikipedia) and Podman. Some general Virtualisation Managers handle containers too.

Docker use a client-server architecture, while Podman use a daemonless architecture.

Virtualised hardware

For hardware virtualisation (Virtual Machine, VM - more or less emulate a computer and install OS on it) see our Virtualisation page. - VirtualBox, QEMU, KVM, Virt-Manager, Xen, are all packaged and VMware can be installed.

Cloud server

On Mageia you can install Nextcloud server which in turn can run a lot of plugin web applications like shared calendar, OnlyOffice, etc.

Nextcloud runs under the internet server Apache or Nginx. The server can run other things too, like Urpmi-proxy.

Even more ways...

Just short mentions, not to elaborate on here:

  • There exist great plugins/add-ons for web browsers (i.e Firefox) and other programs, macros for some programs, ...
  • You can execute command line scripts and the sort in various languages...