1:26 AM
@PauloCereda Comic sans will be back? :p
2

5 hours later…
6:24 AM
Good Morning. I'm having a problem with installing dvips on linux. Would anyone here be able to help?

7:06 AM
@user308386 few people install dvips on its own rather than just getting it with texlive?

I think we are getting it with texlive
This is a very scuffed situation and I understand if you can't help me but i have a server setup that used to work where the process was

fill template
compile template into .dvi with latex
use dvips to make .ps from dvi
compile .ps into .pdf
And now we had to reinstall the server (It failed completely) and now it's saying it's missing an .out.ps file on the dvi to ps step
I'm about 100 miles out of my depth with this one and I need to get it to work
Under the old installation the whole chain wasn't even generating an .out.ps file, it's saying now it's missing a header file

@user308386 out.ps is created by hyperref for the bookmarks. And if dvips is able to complain about something it is installed, so try to install it again doesn't sound like the right plan to solve your problem.

is there a way to turn that off
our pdfs use no form of bookmarks
some config perhaps?
@UlrikeFischer The reason we had to reinstall the whole server had nothing to do with tex
I'm saying it worked fine under the old setup but when we had to reinstall the box (and livetex with it) it no longer does

if you installed with apt get texlive or similar depending on your linux distro it should just work, you could re-install texlive, but it might be an error in the specific tex document hard to say from the information given. if youdon't need hyperlinking at all in then don't load the hyperref package into your document and latex will not then use any bookmarks or other active pdf features.

@user308386 no, but you asked how to install dvips, but dvips seems to be there. And you should perhaps start to tell the symptoms (the real error messages) instead of diagnosing and suggesting the cure. You obviously have currently no idea what actually fails.

7:19 AM
The symptom is that when the software executes the dvips "{path}" -o "{path} 2>{log path} command the error message in the error message reads like "Couldn't find header file: {a file that does not exist and did not exist on the previous install even under exactly similar conditions}"

@user308386 if I use an nonexisting header with dvips it tells me the name of the missing header file, it doesn't say "{a file that does not exist ...}". Do you really get exactly this message?

the { was a standin for the file name of the file that doesn't exist
The actual exact error message from the log is: dvips: ! Couldn't find header file: Rechnung_272942.out.ps
What I wanted to convey is that Rechnung_272942.out.ps does not exist in the compile directory, and under the previous setup such a file was not generated either and DVIPS obviously did not complain

@user308386 You probably upgraded TeX Live versions when setting up the new installation. Maybe there was a change. If you don't need any of the fancy new things you might try to install the old version of TeX Live you used. They are readily available for installation from the “historic” part of the download section. If the error persists in the old version then probably the setup is faulty and you should check your scripts if the arguments are correct.

A version upgrade could cause this?

@user308386 which texlive version are you using? And what is the main class of your template?

7:28 AM
That'd make sense, the old setup was made in 2018 and the new one yesterday
The "template" is a .tex file that contains a custom set of scripting instructions which we use a php class to fill with data and make into a final .tex file that is then further compiled
I will speak to the system admin and find out which version we were using and which version we are currently using

@user308386 yes, but which document class does the tex file use?

sec

@user308386 Yes, TL upgrades may include major changes, especially with several years in between. 2018 is relatively recent so there shouldn't have been too many changes but that depends. If you installed from distro repos some distros shipped TL2016 in 2018.

is there a way to find your installed texlive version just from the file system?
The old system is shot but we have the data mounted as an extra drive

@TeXnician it don't think that they use a shiny new texlive, there the message would be different.
@user308386 look in any log-file.

7:32 AM
@UlrikeFischer Insider information ;)

This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=latex 2019.6.5) 28 APR 2021 16:15
this is the old one

@user308386 That's pretty interesting. TL2016 with 2019 format. So yes, definitely a few versions and a non-standard setup. Did you have some kind of texmf-local somewhere that you copied to the new setup?

This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2019/dev/Debian) (preloaded format=latex 2021.4.30) 30 APR 2021 03:04
this is the new one
@TeXnician would that be in the etc folder?

@user308386 Not necessarily. But I just noticed that you use the Debian packages (overlooked that piece in the first place). I don't know how these work and especially if they do format updates way beyond the typical releases. Unfortunately, I have no experience with such mixed versions.

@user308386 I assume that you are using a class from the koma bundle which now loads the bookmark package which produce a out.ps, and you system is somehow cleaning that away and then dvips complains. With a newer texlive it wouldn't be a fatal error, but in texlive 2019 it is.
@TeXnician no that is normal, if you rebuilt a format it gets a new date. My texlive 2016 formats have a date from 2020.

7:37 AM
@UlrikeFischer So my first port of call would be to throw texlive 2019 from the server and install 2016 again?

@UlrikeFischer Oh, sure, but I wonder why the TL2016 seems to have repackaged that often. But I'm pretty unfamiliar with Debian packaging practices so my intuition is probably just not adapted to that.
@user308386 Either that or check your scripts if they throw the file away.

@user308386 No. You should find out why your script loose the out.ps. Or why your template loads hyperref/bookmark if you don't want interactive features. Or you could add an option to the template to suppress the loading of the bookmark package.

I don't really care about anything but getting it at least semi working asap atm
I'll deal with asinine choices later

@user308386 well the fastest would be to adapt the template not to use bookmark. But for this you would have to tell which class it uses and if you can add an option there ...
@TeXnician why repackaged? A simple fmtutil-sys --all would recreate the formats with a new date.

@UlrikeFischer Ah, yes, I'm seemingly a bit confused this morning. Of course, that's a post-installation step.

7:47 AM
@UlrikeFischer It's not just one template, and they're all dynamic
so if I have to commit to editing the templates or the script i'd rather try old version first
that would take most of the weekend probably to edit all the templates

@user308386 did you actually look if every template needs to be adjusted? Or if there exist a master class file? Or are you again deciding about the cure before checking the symptoms?

as far as i know every template has the package info copy pasted from the previous one (I know that's bad practice)
So I'd have to go through them all 1 by 1 and find out which ones have the offending packages in them and then find out what they were used for and throw them out

@user308386 so you are actually guessing. Well it is your call, but I would check the facts first. If there is a master class and it uses a koma class it would take 2 minutes to add the needed line. That's a bit faster than reinstalling a full texlive.

Thank you for your help so far

8:52 AM
@user308386 do you have access to a Linux shell? If so, find . -type f -iname "*.sty" | xargs grep <stuff> will search in all files (in the current folder and all subfolders) with file extension .sty for the expression <stuff> and print the matches.
(a bit easier than opening every file and searching for something "by hand".)

9:40 AM
what's wrong with naming all your commands zzz+ ?
@yannis I gather you didn't find my command naming converntion massively self-documenting:-) — David Carlisle 43 secs ago

@DavidCarlisle or zaligned ;-)

10:09 AM
@UlrikeFischer yes that doesn't always align so I should have left out the aligned part of the name.

@UlrikeFischer is there a list of packages that are part of the KOMA bundle someplace?

10:26 AM
@user308386 if you ask about bookmark: that is not part of it, koma only loads it.

I found out what exactly is causing the issue
Our latex commands are executed with absolute paths for the output and input and log files from the webserver base directory
the .out.ps file is being properly generated, but it can't find it, because of course the execution directory is not the directory it's in
What I don't know is how this worked in the old setup. Is there a config option to disable KOMA entirely from making these header files?

@user308386 well you were simply lucky that nothing in your template needed input files (or perhaps you were only lucky that nobody remarked that input files were not found and so some things didn't work.)

well
we have input files in our template but they're set manually and there the directories are correct

@user308386 it is not KOMA! is it bookmark. And I already told you: tell me which class you are concretly using and if you can adapt the line that loads it.
@user308386 do you also move the aux-file?

\documentclass[10pt]{article}
\usepackage{scrlayer-scrpage}
The way this works is our php script fills the template, resolves all the \input commands (so I guess it's doing a first pass?) and then copies all that into a temp directory
everything that gets put out by tex is in that directory

10:33 AM
@user308386 that wouldn't load bookmark, it doesn't use a koma class, you must have something else in your template.

dvips "/var/www/html/webdb/tmp/tmp_JOlGlC/Projekt.dvi" -o "/var /www/html/webdb/tmp/tmp_JOlGlC/Projekt_compiled.ps" -h "/var/www/html/webdb/tmp/ tmp_JOlGlC/Projekt.out.ps" 2>/var/www/html/webdb/tmp/tmp_JOlGlC/log05.log
thats the command that gets executed by the server

@user308386 well why are you explicitly loading a file that you don't have?

the -h part I added manually, it doesn't work with and without
and we have that file

@user308386 well the -h part is completly wrong, so remove it.

10:35 AM
@user308386 i thought you said the error was a missing out file (but I haven't followed all the above I just came back and saw latest posts)

this is how the directory looks
dvips "/var/www/html/webdb/tmp/tmp_JOlGlC/Projekt.dvi" -o "/var /www/html/webdb/tmp/tmp_JOlGlC/Projekt_compiled.ps" 2>/var/www/html/webdb/tmp/tmp_JOlGlC/log05.log

This is the command that gets executed prior to my change with same result
dvips: ! Couldn't find header file: Projekt.out.ps
this is the error message
If there is a way to manually explicitly specify this header file in the command I can also do that
Thats what my attempt with -h was

@user308386 show the complete tex-file so that we can stop to guess around and simply look why it requires out.ps and how to avoid it. And stop trying to solve a problem you don't understand. You only break more stuff by adding requests for headers you don't have.

I'll have to redact the company data out of the full file, but i'll do it
sec

@user308386 why can't you simply switch into the directory and call dvips Projekt.dvi then it would probably find the out.ps without problems?

because all of our absolute refs to pictures etc are written with the other execution directory in mind
I will do that if I don't find another way, but it'll take a while
I'll also have to rewrite code that automatically generates these paths for some documents when I do that

10:44 AM
@UlrikeFischer I was just going to say that:-)

tbh
I got thrown into this as in "you maintain this now" I didn't set this up when I first got it I only made templates and bodged it until it worked, so as you can all see i'm severely out of my depth trying to resolve this

@DavidCarlisle how do one add this path to texinputs on linux?
@user308386 on windows I can get this working by adding the path to texinputs, so something like set TEXINPUTS=Tests/;, the linux syntax is a bit different so you will have to look it up or wait until David tells me what it is. And now I have to make lunch.

@UlrikeFischer export TEXINPUTS=whatever:\$TEXINPUTS assuming a bash like shell

11:17 AM
@UlrikeFischer basically the same but with : not ;

12:14 PM
I found the package that was causing it
It's hyperref
I'm currently throwing it out of the various templates - we're only using it to add metadata to the PDFs and make some clickable website links. I'll deal with getting it to work again later
Sorry for not responding people are on my behind to get this working again asap

12:27 PM
@user308386 no, it is not hyperref. I would know if if would write this file, I maintain hyperref. And you are again making your much more work than needed by jumping at some conclusion.

It literally works once I throw out hyperref
Like I comment out hyperref and the parts that use \href and \hypersetup and it compiles fine, and no longer produces this file

12:50 PM
@user308386 yes but hyperref is not causing it. Something in your code detects hyperref and then loads bookmark. E.g. the koma classes do this. The real fix would be to find this code and change it. Btw: if you only print the PDF the metadata don't matter and you can simply remove hyperref, but if you sent the PDF to customers, good metadata can be important, the customer perhaps use them to classify the PDF.

5 hours later…
6:01 PM
Is anyone here a member of the LaTeX 3 development team? I believe I've found an error in the L3 interfaces manual--or at least a confusing example.
For \cs_generate_variant, the example given is \cs_generate_variant:Nn \foo:Nn { c }, i.e. one argument specifier for a two-argument function.

@COTO That's correct. You don't have to specify all the arguments when generating a variant, because if the other arguments don't need to be processed, you don't need to act on them (makes things a tiny bit faster).
@COTO For example, in the kernel we have \cs_generate_variant:Nn \tl_set:Nn { c }, because it c-expands the first argument and leaves the second one untouched

Ah. I see. Carry on, citizens. :)

@PhelypeOleinik I was just looking in interface3 to see if we actually say that anywhere, i thought we did but couldn't see it just now:-)

@DavidCarlisle quack

@PauloCereda 晩ごはん

6:12 PM
@DavidCarlisle oh no

@DavidCarlisle I kind of remember reading it there. 50% sure :)

oh that reminds me I have an LL issue to answer
@PhelypeOleinik don't tell me you reverse engineered an answer from knowing how the code works. Terrible. I always read the documentation.
3

@DavidCarlisle ooh

@DavidCarlisle Hold on, let me bookmark that sentence for... reasons

@PhelypeOleinik ooh

6:29 PM
@PhelypeOleinik I can't find it either.

@UlrikeFischer @JosephWright might know, he (re)wrote most of that I guess.

@DavidCarlisle did you see that I reused your trick to test if one is in the tabularx test phase? tex.stackexchange.com/a/595141/2388

6:45 PM
Me again. Is anything special required to use \seq_map_indexed_function:NN? I'm getting "Undefined control sequence. \seq_map_indexed_function:NN" errors on compile, even though all the other \seq_ functions are working fine.

@COTO Are you using up-to-date expl3? Matching docs and code?

I'll check. One moment.

7:00 PM
Sunofagun. It WAS an out-of-date package. It must be a really new feature, because my MikTeX installation was from 2020. Sorry for being "that guy". And thanks.

7:49 PM
@UlrikeFischer I'm sure it's a documented feature not a trick. Really I should never have let ltablex get such a hold, it breaks so much stuff. \pagebreak works in longtable:-)

@COTO oh, thanks for being a good guy :-) no worries

@DavidCarlisle I know that it works in longtable -- that's the first thing I tried, so one can blame you only for tabularx ;-)

8:32 PM
@UlrikeFischer \pagebreak works as desined in tabularx :-)

8:48 PM
k
kkkkkk

@DavidCarlisle is your keyboard broken? can't you find the z?

@UlrikeFischer yes apparently but it came back