COPR is a collection of personal repositories for software
that isn’t carried in Fedora. Some software doesn’t conform to
standards that allow easy packaging. Or it may not meet other Fedora
standards, despite being free and open-source. COPR can offer these
projects outside the Fedora set of packages. Software in COPR isn’t
supported by Fedora infrastructure or signed by the project. However,
it can be a neat way to try new or experimental software.
This article presents a few new and interesting projects in COPR. If
you’re new to using COPR, see the COPR User Documentation
for how to get started.
Dialect
Dialect translates text to foreign languages using Google Translate. It remembers your translation history and supports features such as automatic language detection and text to speech. The user interface is minimalistic and mimics the Google Translate tool itself, so it is really easy to use.
Installation instructions
The repo currently provides Dialect for Fedora 33 and Fedora
Rawhide. To install it, use these commands:
sudo dnf copr enable lyessaadi/dialect sudo dnf install dialect
GitHub CLI
gh is an official GitHub command-line client. It provides fast
access and full control over your project issues, pull requests, and
releases, right in the terminal. Issues (and everything else) can also
be easily viewed in the web browser for a more standard user interface
or sharing with others.
Installation instructions
The repo currently provides gh for Fedora 33 and Fedora
Rawhide. To install it, use these commands:
sudo dnf copr enable jdoss/github-cli sudo dnf install github-cli
Glide
Glide is a minimalistic media player based on GStreamer. It
can play both local and remote files in any multimedia format
supported by GStreamer itself. If you are in need of a multi-platform
media player with a simple user interface, you might want to give Glide a try.
Installation instructions
The repo currently provides Glide for Fedora 32, 33, and
Rawhide. To install it, use these commands:
sudo dnf copr enable atim/glide-rs sudo dnf install glide-rs
Vim ALE
ALE is a plugin for Vim text editor, providing syntax and
semantic error checking. It also brings support for fixing code and
many other IDE-like features such as TAB-completion, jumping to
definitions, finding references, viewing documentation, etc.
Installation instructions
The repo currently provides vim-ale for Fedora 31,
32, 33, and Rawhide, as well as for EPEL8. To install it, use these
commands:
sudo dnf copr enable praiskup/vim-ale sudo dnf install vim-ale
Editors note: Previous COPR articles can be found here.
Lyes Saadi
Ummm… Dialect is now in Fedora 33… Like from today XD… Sorry, for the bad timing 😛 ! I was keeping the COPR until Dialect was in the official repos…
frostyx
A bit of bad timing indeed, but on a positive note, I am really happy that you managed to get the package to the official Fedora repositories.
This is a nice example of how simple it is to build packages in Copr and using it as a test environment and a stepping stone towards moving the package to Fedora itself.
Lyes Saadi
Yeah, sorry again for that bad timing :P.
But yes! COPR is really useful for packagers willing to package something in the official repos. Not all my COPR packages are submitted for Fedora (none of my current repos are for instance… except Dialect), but all my packages which are destined to Fedora go through COPR first to check for eventual problems and to make it available to everyone while waiting for the review process to finish :D.
hammerhead corvette
Is there a flatpak ???
Lyes Saadi
On Flathub, yes !
Would you want me to create a Flatpak for Fedora? I’ve never done it, but I’m not against trying 🙂 !
Anyway, you should still be pretty safe with the RPM since it is official.
Esteban
Why use the gh copr repo instead of the one provided by github? Especially since it seems like the copr repo isn’t staying up-to-date with the official releases?
frostyx
Thank you Esteban,
the last time I checked there still wasn’t any official repo, so personally, I was very happy that this project appeared.
I cannot tell you whether the project is obsolete now or the author improves those RPM packages somehow, we will need to ask the author.
Esteban
Yes, when you install the rpm provided by GitHub it sets up a repo for updates.
Lyes Saadi
Hi! The reason why Joe Doss have a Github Cli COPR repo is because he is trying to get it packaged into the official Fedora repositories ;)! There are several e-mail about that in the devel mailing list.
I guess he is using that repo in order to facilitate the package reviews, and to test those RPM packages and provide them for those who want to test it before it getting approved.
Here is the review request ticket: https://bugzilla.redhat.com/show_bug.cgi?id=1803302 !
Anon Ymous
COPR or any non supported distro is a threat to the integrity and security of your system. Going back a couple articles to the “web of trust” two part series, one can see that there are problems as is- no need to further complicate security with new packaging systems. Moreover, COPR is not future proof. Looking to something like Flatpak that is containerized and more modern is much better for the future. Many things in Linux are outdated because they are based on Unix theory of 1964- literally. COPR is not really a way forward, it seems a huge threat to security and something to avoid. Thank you for the article, you taught me about something I did not know about. Honestly tho, you also provided a warning for people of an outdated security threat.
frostyx
Thank you for sharing your perspective on this. I partially agree with some of your points but IMHO the negatives you described needs to be balanced with the added-value that Copr brings to the table. Then it is up to everyone to decide whether to use Copr in their situation or not.
I am not trying to convince anybody that every package in every Copr repo is perfectly safe, well written, and up-to-date. In fact, you get a warning message every time you want to enable a Copr repository in your system and you need to consciously confirm that.
of the main distribution, and quality may vary.
[...]
and packages are not held to any quality or security level.
You will most likely not install a low-level system package from an unknown Copr project on your server. However, in many cases, you want to install some client tool that you trust (it is a popular project on GitHub or something) and Copr is the only place where it is available as an RPM package. You can ditch the tool altogether but then you might be missing out on something, you can clone it and use it from git repo but I would argue that it brings even more issues, you can package it yourself, but then you are wasting a lot of time for packaging it in the first place but also for maintaining the package for new upstream versions. IMHO the least time-consuming and most comfortable option is to use a package from Copr – and optionally reviewing its spec file if you are really concerned about what it does.
Copr is not a new packaging system for Fedora. It is merely a (third-party) build system. Internally it uses Mock to build the packages – which can be also used locally and which is also internally used by Koji (the official Fedora build system). The configuration might differ in few minor details, but in all of those cases, the output is always the same – an RPM package, which can be installed via standard Fedora package managers (Dnf, rpm). Copr provides those packages within a Dnf/Yum repository, which is also a native thing, so you don’t need anything non-standard to work with them.
Only the future will tell, I don’t want to make any predictions. I would say though, that the growing popularity of Copr shows that it is useful for many use-cases, and for me and many people it makes some everyday tasks easier.
BBBBbbBB
It doesnt matter if you install an rpm for system stuff or some single use thing for cli, like cat with a toaster background.
Any package can compromise the system via postinstall scripts.
frostyx
True, that’s why I deliberately wrote “want to install some client
tool that you trust” and “optionally reviewing its spec file
if you are really concerned about what it does”.
There is no dark magic regarding Copr, you can always see the spec file and
everything it does. In case you are concerned about your security,
you can always do your own review – nobody is trying to force a
black box upon you.
I agree that security shouldn’t be taken lightly but …
… taking it to the opposite extreme, what would you recommend? Not
installing any software ever because it can potentially have bugs?
leslie Satenstein
Hi Matt and authors.
It would be fantastic if the fedoramagazine.org was on youtube. I do know that Fedora has a presence there, but that presence is more about administration than it is about the wonderful packages and how-to’s that will attract and keep Fedora fans.
Anon Ymous
To : frostyx
Thanks for the reply. By “new” i meant in the literal sense, introduction of non officially fedora supported code is “new’, and it was not vetted by Fedora. I really like Fedora, they have an outstanding security record any anything not vetted by the fedora team is both “new” and a security risk. An unnecessary security risk.
Unix practices that can be traced to 1964 are holding Linux (and humanity) back. I believe that things like COPR should be discontinued entirely and replaced with modern approaches such as Flatpak. There is nothing that COPR can do that Flatpak can not do. Have a problem with an app? With COPR it is likely to mess up your file structure, with sandboxed Flatpak you simply remove the container and there is no harm or changes done to your file system.
COPR is the equivalent of batch files in windows. Yes it can be fun to work with and yes it is a tool that can do many things. It is old technology tho, outdated and long ago replaced by far superior, more efficient and safer methods.
Why isn’t COPR supported by Fedora? Fedora is modern, efficient, and has outstanding security practices. COPR is outdated and waste of efficiency and time to tinker with. COPR is not a good fit to the Fedora value system. And sandboxed systems like Flatpak make COPR laughable by comparison. Flatpak is great to use, COPR is a rabbit hole and a time warp that distorts security and growth.
Artem
COPR is a repository of RPM packages. Technically i suppose COPR could be used for distributing Flatpak packages bases on fedora runtimes 1 as well.
tsccof
As frostyx rightly pointed out, COPR isn’t a package management system, it’s a package build system.
COPR isn’t outdated, it stems from this idea: that builds should be reproducible from a fresh and minimal Fedora base system, ensuring packages correctly declare all their build-time dependencies. This provides Fedora users with a way to both improve on Fedora itself (by using these packages as references to get merged into Fedora itself), and also enhances the distribution’s usability, since users create an ecosystem of packages around the distro that aren’t part of the main repositories.
Meanwhile, take a look at this link: http://flatkill.org/
Flatpak isn’t inherently more secure because dependencies are distributed as part of the Flatpaks themselves(this is what makes them portable across distros), and security fixes aren’t being provided as quickly. Also, the sandbox is easily broken since most Flatpak applications aren’t really sandboxed.
BillT
Would be great if the Koha library software was available for fedora. It looks like it is only packaged for Debian and Ubuntu.
Shlomi Fish
dialect tip: you can use ctrl+tab to switch to different GUI widgets in its window. Took me a while to find out.
Julius
“you might want to give Glide a try.”
Well, I did it but on my fresh installed f33 it crashes when loading a mp4 file …
frostyx
Hello Julius,
thank you for the feedback.
It is hard to debug without seeing the traceback. I managed to get
it crashing by accidentally uninstalling
. Maybe you can check if you have all
gstreamer plugins correctly installed. Please see e.g.
https://docs.fedoraproject.org/en-US/quick-docs/assembly_installing-plugins-for-playing-movies-and-music/
It might be worth creating an upstream issue, so this problem gets
either fixed or documented. Please see
https://github.com/philn/glide/issues
Artem
You need to enable 3rd-party repositories to play patented or non-free codecs unfortunately. COPR Glide build already have weak deps for them but this only works if you already enabled such repos. Nothing much more maintainer can’t do there, sorry. Only tip in .spec file.
Also thanks @frostyx a lot for help with debugging this issue.
should been added as hard dep. This already fixed.
Please keep in mind that often COPR packages lack of testing and QA. And in general COPR packages it is somewhat something is better then nothing. In same time don’t take my remarks too literally. IMO it still nice to have opportunity to play with package and easy way to install it.
Al
Do you really want to enable copr.fedorainfracloud.org/lyessaadi/dialect? [y/N]: y
Error: This repository does not have any builds yet so you cannot enable it now.
Artem
Package available in official repos now.
sandip rajbhar
Would be great if the Koha library software was available for fedora. thanks for sharing informative articals.