[mythtv-users] Hey, there's a new Steppes v34.2 - ha, nope, fooled you.
David Hampton
mythtv at love2code.net
Tue Feb 18 15:38:10 UTC 2025
On Tue, 2025-02-18 at 08:37 +0000, Paul Gardiner wrote:
>
> On 14/02/2025 22:38, David Hampton wrote:
> > On Fri, 2025-02-14 at 19:39 +0000, Paul Gardiner wrote:
> > > On 14/02/2025 17:33, David Hampton via mythtv-users wrote:
> > > > On Fri, 2025-02-14 at 16:55 +0000, Paul Gardiner wrote:
> > > > > For a week or two, whenever I start my frontend, I see a
> > > > > dialog
> > > > > box
> > > > > telling me that Steppes v34.2 is available. I go to the theme
> > > > > chooser,
> > > > > and it's not there. Any ideas?
> > > >
> > > > What version of MythTV?
> > >
> > > It's a very recent 34-fixes with an extra commit released from my
> > > fork.
> > > The frontend shows the version as some sort of combination of my
> > > tag
> > > and
> > > the sha. Could the version name be the problem?
> > >
> > > > I download the theme archive from here:
> > > >
> > > > http://themes.mythtv.org/themes/repository/trunk/themes.zip
> > > >
> > > > Unzipping it and looking at the file
> > > > trunk/Steppes/themeinfo.xml,
> > > > it
> > > > says its for Steppes version 34.2. I'm assuming your system
> > > > gets
> > > > this
> > > > far, as it tells you there is a new version. The themeinfo.xml
> > > > file
> > > > lists the download url for this version of Steppes as:
> > > >
> > > >
> > > > http://ftp.osuosl.org/pub/mythtv/themes/trunk/Steppes-34.2_trunk.zip
> > > >
> > > > I can download that file.
> > > >
> > > > I have noticed that the list of available themes isn't always
> > > > alphabetized. For example, my test system is currently listing
> > > > all
> > > > of
> > > > the downloaded themes at the top, and then listing all the
> > > > available
> > > > themes below that. I see "Arclight 28.3" as the first item in
> > > > the
> > > > list, and "Arclight 34.1" as the eighth item in the list.
> > > > Perhaps
> > > > Steppes 34.2 is near the bottom of your available themes list?
> > >
> > > Mine do look to be in alphabetical order, with Steppes 34.2 not
> > > listed.
> > > I'm not sure how far through the process it's getting. I don't
> > > know
> > > where to look for those downloaded files.
> >
> > For version 34, you should be pulling this version of the zip:
> >
> > http://themes.mythtv.org/themes/repository/34/themes.zip
> >
> > And looking here:
> >
> > 34/Steppes/themeinfo.xml
> >
> > That file says the current version is 34.1, and the url provided is
> > downloadable.
> >
> > The question is: why is your frontend looking at the trunk version
> > of
> > themes.zip when it starts up instead of the v34 version. When you
> > go
> > into the theme chooser it does appear to correctly be using the v34
> > version of themes.zip. I don't remember how these files are
> > downloaded
> > and cached, but you could try removing the "themes" and
> > "tmp/remotethemes" directories from ~/.mythtv and see if that
> > helps.
>
> I emptied the .mythtv directory entirely, let it repopulate and
> reselected Steppes, but the dialog box informing me of 34.2 is back.
> Strangely, it's not every time I start the front end. It seems to be
> once a day. I looked in tmp/themes.zip and there's no mention of 34.2
> there. It is a bit of a mystery.
Its a bug, and I'm surprised it took this long to surface. The problem
is that the backend service that periodically downloads themes chooses
"trunk" if the source path (aka branch) doesn't start with "fixes/".
The frontend, however, only chooses "trunk" if the source version
contains "-pre". My libmythbase/version.h file looks like this:
static constexpr const char* MYTH_SOURCE_VERSION \
{ "v34.0-38-gac34c663b2-dirty" };
static constexpr const char* MYTH_SOURCE_PATH \
{ "fixes-34" };
So based on the above, the backend chooses "trunk" because "fixes-"
doesn't match "fixes/", and the frontend chooses not trunk because
there's no "-pre" in the version.
As an aside: in the "not trunk" case, both frontend and backend do the
same thing and use a combination of MYTH_BINARY_VERSION and
MYTH_SOURCE_VERSION to get the decide which version of the themes.zip
file to retrieve.
I think this code should be cleaned up. Using three different strings
to figure out the right version of the themes file to retrieve doesn't
make a lot of sense, nor does duplicating that code in two different
places. I think this decision could be consolidated into a single
function and keyed off MYTH_SOURCE_VERSION.
David
More information about the mythtv-users
mailing list