Hi Csaba,
My two cents on the subject is that any solution seems
better than a
fork.
Nitpick: tw-e1abis-mgw is not a fork of osmo-mgw in the proper sense
of that word, as it is not a case of taking some arbitrary point in
osmo-mgw evolution and then evolving from there in a different
direction. Instead tw-e1abis-mgw is a written-from-scratch piece of
new software that has only a few very superficial bits taken from
osmo-mgw. Even MGCP parsing is all new and original in this MGW!
But I get your point: what you really meant, I assume, is that any
solution integrated into Osmocom mainline in some way would be better
than one that exists strictly externally to Osmocom - did I capture
your meaning?
In this sense probably option 2. seems an easy way out
of this for now.
So you are advocating for my proposal of creating osmo-e1-mgw (or some
other name to the same effect) as an import of tw-e1abis-mgw code into
osmo-mgw.git repo, living in mainline Osmocom land but still compiling
into a separate binary (and having mostly separate source) from regular
osmo-mgw?
In any case, before that idea will become possible, some essential
library patches would need to be merged first:
https://gerrit.osmocom.org/c/libosmocore/+/41211
https://gerrit.osmocom.org/c/libosmo-abis/+/41208
https://gerrit.osmocom.org/c/libosmo-abis/+/41209
https://gerrit.osmocom.org/c/libosmo-abis/+/41210
Furthermore, the linked libosmo-abis patches are a blocker not only
for the far-out idea of importing tw-e1abis-mgw into Osmocom mainline,
but for further development of this MGW in itself. I was planning to
work on adding AMR support, which will require developing some new
library functions layered on top of trau_frame, but right now I am
pausing this work while the fate of libosmo-abis patches is in limbo -
it is unclear to me whether I can stay with libosmo-abis version of
the necessary trau_frame layer, or if I need to switch to my own
libtwtrau clone thereof. Obviously the latter option would work
against the idea of mainlining the new MGW - but if I can't get the
necessary patches into libosmo-abis, then what other option do I have...
I am also a bit concerned about some statements our fearless leader
Harald has been making lately about the state of 2G. There seems to
be a sentiment that 2G networks are on their way out not only in the
evil and morally corrupt (rotten to the core) commercial for-profit
world (this part is a given, not doubting external facts), but also in
the FOSS world of Osmocom - and I fiercely object to the latter part.
I understand that aside from me, all other major developers of Osmocom
do their work in the context of a commercial services company. As a
thoroughly non-profit person who has never had any success to speak of
in for-profit world, I do not claim to even begin to understand the
business situation of any Osmocom-related commercial entities, whether
Sysmocom or any others (are there any others left?) - but I am more
concerned with Osmocom as a FOSS project. Obviously it is not my place
to tell others what they should spend their volunteer time on, just
like no one else can tell me what to do with mine - but I can't help
to see a pattern forming. If customer-funded work on Osmocom 2G is
drying up for unavoidable outside-world reasons that none of us have
any power to change, and if none of the traditional "German core"
developers of Osmocom are interested in working intensely on 2G on a
purely non-profit basis, that leaves Just Me as the sole developer who
remains devoted to 2G beyond all measure and beyond all bounds.
I don't mind being the world's only remaining 2G developer - sure, it
is a horribly lonely position to be in, but I don't have any power to
change other people's minds: if no one else is interested in 2G, if
the rest of the world including Osmocom leaders feel that 2G is past
tense, then I don't have a mind control ray to make them change.
But there is one big problem: the rule that every patch must be
approved by two reviewers before merging still stands! Yet if no one
else has any interest in 2G, if all other developers with code review
voting powers are employed by Sysmocom and are kept very busy with
whatever non-2G work you guys are doing these days - well, you see the
problem, don't you? The sole non-profit 2G developer being gated by
reviewers who no longer have time budget allocation for 2G...
Therefore, if forking is to be avoided, then I kindly ask those with
code review powers to devote some time to reviewing my 2G-specific
patches to Osmocom components and libraries, even if your commercial
business no longer involves 2G. I understand that non-profit spending
of time on 2G code reviews will have to be limited - but a clear
statement along the lines of "patch submitters can expect a review
within X days", or even "within X weeks" would go a long way, much
better than the blind uncertainty I am facing now.
M~