This is essentially a follow-up to earlier questions concerning the procedure for installing vanilla TeX Live from upstream on a GNU/Linux system.
Part of that process involves the installation of a dummy package, which satisfies the distro's package manager that relevant dependencies are installed when installing programmes which require a TeX installation (e.g. TeX editors, frontends and associated software).
In Arch Linux, this is unproblematic and Debian derivatives seem reasonably pliant also.
However, Fedora is altogether more trouble. Moreover, with the release of Fedora 28, the annoyances have mushroomed into all-out warfare. I am battling dnf in a life-and-death struggle entirely of another's making. The packaging is not just exponentially worse. It is ??!! Bonkers. Aggressive. Intrusive. Insidious. Violent. Rude. Insane. Batty. Bananas. Hideous. Eruptive. Disruptive. It is Extreme Packaging taken to its Irrational Logical Conclusion. It is a reductio ad absurdum of distros' TeX Live packaging. It is, in a word, Nuts.
Fedora is, moreover, spectacularly unsympathetic to upstream installations. What's wrong with our packages, they ask? The packager worked hard to package the entire TeX Live tree!
The answer to which is: nothing is wrong with them. But this is my machine and I demand the freedom to run the software I want on it. If that means abandoning Fedora, so be it. But this would seem antithetical to the spirit, though not the technical lettering, of the commitments to software freedom which Fedora itself espouses.
Moreover, I like Fedora and I'm hoping that I do not have to leave Fedora in order to exercise freedoms Fedora otherwheres supports.
Originally, it was not hard to build a dummy package to satisfy Fedora. Things got trickier in Fedora 24 and trickier still in Fedora 26 and 27, but the problem was not entirely unmanageable.
Today, however, I updated from Fedora 26 to Fedora 28 and, lo and behold, the damn thing pulled in piles and piles of texlive- packages. There are so many matching packages in Fedora's repos that dnf reports finding none if you search just for texlive or even something like texlive-d*. Apparently, it can't cope with that many results, so concludes there are none whatsoever.
I ended up hacking together a .spec file to convince dnf to let me remove the unwanted packages, but posting it here goes over SE's character limit, so I've put it at https://pastebin.com/QXFjqW9C instead. The file has 11593 lines, 23249 words and 347644 characters.
This is, clearly, insane. Moreover, the file will need to be continually updated each time Fedora's packager gets a new package from TeX Live. That is, constantly. This is because it seems that some of Fedora's packages include direct dependencies on the lowest level of packaging, so upgrading a system with Kile installed, for example, pulled in specific LaTeX packages - not just some meta package or package group, as I'd have expected.
However, I cannot find a way to avoid this difficulty. A dummy package like this is, I think, the right way to do this, but I can't make it work.
So I've also edited /etc/dnf.conf:
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
excludepkgs=texlive-a*,texlive-b*,texlive-c*,texlive-e*,texlive-f*,texlive-g*,texlive-h*,texlive-i*,texlive-j*,texlive-k*,texlive-l*,texlive-m*,texlive-n*,texlive-o*,texlive-p*,texlive-q*,texlive-r*,texlive-s*,texlive-t*,texlive-u*,texlive-v*,texlive-w*,texlive-x*,texlive-y*,texlive-z*,texlive-0*,texlive-1*,texlive-2*,texlive-3*,texlive-4*,texlive-5*,texlive-6*,texlive-7*,texlive-8*,texlive-9*,texlive-da*,texlive-db*,texlive-dc*,texlive-dd*,texlive-de*,texlive-df*,texlive-dg*,texlive-dh*,texlive-di*,texlive-dj*,texlive-dk*,texlive-dl*,texlive-dm*,texlive-dn*,texlive-do*,texlive-dp*,texlive-dq*,texlive-dr*,texlive-ds*,texlive-dt*,texlive-dv*,texlive-dw*,texlive-dx*,texlive-dy*,texlive-dz*,texlive-d0*,texlive-d1*,texlive-d2*,texlive-d3*,texlive-d4*,texlive-d5*,texlive-d6*,texlive-d7*,texlive-d8*,texlive-d9*,texlive-dua*,texlive-dub*,texlive-duc*,texlive-dud*,texlive-due*,texlive-duf*,texlive-dug*,texlive-duh*,texlive-dui*,texlive-duj*,texlive-duk*,texlive-dul*,texlive-dun*,texlive-duo*,texlive-dup*,texlive-duq*,texlive-dur*,texlive-dus*,texlive-dut*,texlive-duu*,texlive-duv*,texlive-duw*,texlive-dux*,texlive-duy*,texlive-duz*,texlive-du0*,texlive-du1*,texlive-du2*,texlive-du3*,texlive-du4*,texlive-du5*,texlive-du6*,texlive-du7*,texlive-du8*,texlive-du9*,texlive-duma*,texlive-dumb*,texlive-dumc*,texlive-dumd*,texlive-dume*,texlive-dumf*,texlive-dumg*,texlive-dumh*,texlive-dumi*,texlive-dumj*,texlive-dumk*,texlive-duml*,texlive-dumn*,texlive-dumo*,texlive-dump*,texlive-dumq*,texlive-dumr*,texlive-dums*,texlive-dumt*,texlive-dumu*,texlive-dumv*,texlive-dumw*,texlive-dumx*,texlive-dumy*,texlive-dumz*,texlive-dum0*,texlive-dum1*,texlive-dum2*,texlive-dum3*,texlive-dum4*,texlive-dum5*,texlive-dum6*,texlive-dum7*,texlive-dum8*,texlive-dum9*,texlive-dumma*,texlive-dummb*,texlive-dummc*,texlive-dummd*,texlive-dumme*,texlive-dummf*,texlive-dummg*,texlive-dummh*,texlive-dummi*,texlive-dummj*,texlive-dummk*,texlive-dumml*,texlive-dummm*,texlive-dummn*,texlive-dummo*,texlive-dummp*,texlive-dummq*,texlive-dummr*,texlive-dumms*,texlive-dummt*,texlive-dummu*,texlive-dummv*,texlive-dummw*,texlive-dummx*,texlive-dummz*,texlive-dumm0*,texlive-dumm1*,texlive-dumm2*,texlive-dumm3*,texlive-dumm4*,texlive-dumm5*,texlive-dumm6*,texlive-dumm7*,texlive-dumm8*,texlive-dumm9*,texlive-dummya*,texlive-dummyb*,texlive-dummyc*,texlive-dummyd*,texlive-dummye*,texlive-dummyf*,texlive-dummyg*,texlive-dummyh*,texlive-dummyi*,texlive-dummyj*,texlive-dummyk*,texlive-dummyl*,texlive-dummym*,texlive-dummyn*,texlive-dummyo*,texlive-dummyp*,texlive-dummyq*,texlive-dummyr*,texlive-dummys*,texlive-dummyt*,texlive-dummyu*,texlive-dummyv*,texlive-dummyw*,texlive-dummyx*,texlive-dummyy*,texlive-dummyz*,texlive-dummy0*,texlive-dummy1*,texlive-dummy2*,texlive-dummy3*,texlive-dummy4*,texlive-dummy5*,texlive-dummy6*,texlive-dummy7*,texlive-dummy8*,texlive-dummy9*
Still pretty mad, but a bit less insane and - possibly - slightly more robust than the dummy package. But I'm not sure how wise the approach is or how safe.
dnf now tells me that no texlive* packages are found either installed or in the repository, though a search for texlive-dummy-cfr nonetheless finds my attempt to produce a dummy.
I'd rather not shackle dnf like this: I want to stop it installing stuff - not finding it. But only sledge hammers appear to be provided. On the bright side, most of the time dnf doesn't acknowledge the existence of any texlive packages anyway, so I guess not much is lost for practical purposes.
However, not even all this has eradicated the contamination of the texlive- packages entirely. Although the tree is empty, /usr/share/texmf is a pretty full hierarchy of empty directories. dnf tells me this is provided by texlive-base, which is not installed. So I can't even kill the thing completely with both the insane .spec and the mad dnf sledge hammer.
It is difficult to believe that there is not a cleaner, more elegant way to install Kile than one of these kludges, without abandoning Fedora.
What is the best, most elegant and robust solution on Fedora?
Note: in case it is not obvious, installing Fedora's packages is not an option. Getting rid of Fedora is an option, but that is my strategy of last resort.
.specfile is ridiculous, about 10 times the size of yours. (BTW: I do enjoy your writing style, but I can understand if people feel it is a bit too much.) – moewe May 05 '18 at 06:39sudo dnf copr enable fatka/texlive-dummysudo dnf install texlive-dummyworks for my....Fedora 28 update from 27.... – Pablo González L Jun 02 '18 at 04:24texlive-dummywas gone from the repos. So... I think that is problematic. – henry Jul 08 '18 at 12:23texlive-dummywas never in the repos and I don't see how it could be. At any rate, I don't believe I ever used it. As far as I can tell, I've always usedtexlive-dummy-cfri.e. rolled my own. Very easy. In contrast, writing your own.specis fraught with difficulties. – cfr Jul 08 '18 at 20:52