I checked to ensure python 2.7 is installed. It's currently /usr/bin/python. I also confirmed that libpython2.7.so.1.0 exists via ldconfig -p. I know it's working because the MRC python script is
working fine.
you using the 2.7.15 version?
Hi All,
I'm running A43 on Debian Stretch 9.11 x64. For some reason, I've been unable to get any .mpy scripts to run at all. The inter BBS oneliner
you using the 2.7.15 version?
I tried 2.7.13 that comes with Debian, and compiled both 2.7.15 and
2.7.16 - always getting the same behaviour.
I tried 2.7.13 that comes with Debian, and compiled both 2.7.15
and 2.7.16 - always getting the same behaviour.
I think you broke debian. In fact, I'm sure of it.
If you install a
package, you shouldn't also go compile and manually install a newer version of it.
you using the 2.7.15 version?I tried 2.7.13 that comes with Debian, and compiled both 2.7.15 and
2.7.16 - always getting the same behaviour.
But I still can't get the python demo script to work either that ships with mystic. It just returns me to the demo menu with no output that I
can see.
I tried 2.7.13 that comes with Debian, and compiled both 2.7.15
and 2.7.16 - always getting the same behaviour.
I think you broke debian. In fact, I'm sure of it.
Why?
I;m on windows at the moment but moving to Debian (slowly) so when I am
up and running I'll be able to test to see if this is an issue for me also. Under windows I think things are fine.
I think you broke debian. In fact, I'm sure of it. If you install a package, you shouldn't also go compile and manually install a newer version of it. Debian is one of those distros where you should stick to what's in the apt repos 99.999% of the time, with rare exceptions.
Any chance you can blow away your OS and start from scratch? Back up the BBS and rebuild your OS?
A compiled Python installs to /usr/local by default. You always can
remove those files. Nothing should be broke and no reason to resintall Debian.
oh i did not know there was a .16. thought they were stopping there. gonna have to upgrade.
have you checked the mystic wiki?
heh...lemonlime broke the Google :)
A compiled Python installs to /usr/local by default. You always
can remove those files. Nothing should be broke and no reason to
resintall Debian.
I was wondering about this as well as python 2.7 doesn't provision a
'make uninstall' option. Is it enough to just remove the python files
from /usr/local?
A compiled Python installs to /usr/local by default. You always can
remove those files. Nothing should be broke and no reason to resintall Debian.
I found this today: https://help.ubuntu.com/community/CheckInstall "CheckInstall keeps track of all files installed by a 'make install' or equivalent, creates a Slackware, RPM, or Debian package with those
files, and adds it to the installed packages database, allowing for easy package removal or distribution."
Debian's python creates some folders in /usr/local too. So maybe keepA compiled Python installs to /usr/local by default. You always
can remove those files. Nothing should be broke and no reason to
resintall Debian.
this (or (re)install Python after the removal)
Still no luck, unfortunately. I ruined several test VMs compining and tinkering with python. Is there anyone out there running .mpy python scripts on an x64 Linux or raspberry pi platform? Just curious if anyone has got this to work on any modern distro?
yeah...I'm using ubuntu 18.04 and having no issues. Also tested in arch about a month ago.
Thanks Ryan - Did you have to do anything special to get it going or did the built-in python 2.7 work fine?
Built-in python works fine. Are any error messages being spit out? What
is your OS bitrate (32/64 bit), mystic bitrate, and python bitrate?
Any errors at all? It should work OOTB.
2019.11.10 14:32:28 MYSTIC 001 An error has occured: Corrupted memory (216) 2019.11.10 14:54:02 MYSTIC 001 An error has occured: Corrupted memory (216)
2019.11.10 14:32:28 MYSTIC 001 An error has occured: Corrupted memory (216) 2019.11.10 14:54:02 MYSTIC 001 An error has occured: Corrupted memory (216)
No idea how to troubleshoot this. Any suggestions?
Go to: http://wiki.mysticbbs.com/doku.php?id=python_install
And look in the Troubleshooting section.
You will most likely need to recompile Python yourself using the instructions from the Wiki. Many Linux distributions ship with a
version of Python that is compiled with the shared option disabled.
This means that any application that tries to emebedd Python will fail,
so it has to be recompiled.
You will most likely need to recompile Python yourself using the instructions from the Wiki. Many Linux distributions ship with a
version of Python that is compiled with the shared option disabled.
This means that any application that tries to emebedd Python will fail,
so it has to be recompiled.
I've been using Debian for years and didn't want to move to Ubutnu, but since I don't use a GUI and am CLI only they are very similar. Pleased
so far!
Hmm this fills me with a bit of fear and dread given I am down the track of trying to migrate to a Debian box. Thanks for the info..
Hmm this fills me with a bit of fear and dread given I am down the
of trying to migrate to a Debian box. Thanks for the info..
It doesn't sound very user friendly does it?
I don't know anything about python but I wonder if the scripts can be changed to work with the current version of python being deployed?
I've been using Debian for years and didn't want to move to Ubutnu, but since I don't use a GUI and am CLI only they are very similar. Pleased
so far!
I don't know anything about python but I wonder if the scripts can
be changed to work with the current version of python being
deployed?
I don't think it's the scripts, but rather that gOOrOO has to pick a version of python to compile mystic against, and given the nature of
Linux distributions that does not necessarily match the one packaged
for your system.
Hmm this fills me with a bit of fear and dread given I am down the
track of trying to migrate to a Debian box. Thanks for the info..
It doesn't sound very user friendly does it?
I don't know anything about python but I wonder if the scripts can be changed to work with the current version of python being deployed?
Well, I had no luck with Debian so wound up migrating my BBS over to Ubuntu Server 18.04 LTS. It didn't have Python 2.7 installed by
default, so I was able to compile Python 2.7.16 from scratch as
described in the wiki. Python scripts have been working great.
One thing that caught me was the new /usr/local/bin installation
location instead of /usr/bin.
Some .py scripts (like MRC for example)
reference #!/usr/bin/python at the top. Simple to correct. I may try
to create a sym link in /usr/bin but was simple to just modify the
script.
Seriously, I thought the version you compile against is libpython 2.7
and it should make no difference if you have libpython 2.7.13 or
2.7.16 installed.
Seriously, I thought the version you compile against is libpython
2.7 and it should make no difference if you have libpython 2.7.13
or 2.7.16 installed.
You would think so, but apparently it doesn't.
I just downloaded mystic 64bit linux and tried it on Debian 9 (Stretch) and 10 (Buster). The Python demo worked on both. I only had to install libpython2.7
Debian 9: libpython 2.7.13
Debian 10: libpython 2.7.16
The idea that you need to compile Python, because the version in the distribution does not support X or is the wrong version is nothing more than a urban myth (IMHO).
[1]import sysconfig
sysconfig.get_config_vars('Py_ENABLE_SHARED')
Have you tried to install libpython2.7 in Ubuntu, just in case it works out of the box ...?
Well, I don't know what I was doing wrong in Debian 9, but I just installed libpython2.7 in Buster and it's working perfectly out of the box! I have a feeling all my tinkering messed up my old system. No compiling was required.
I was meaning to use Debian 10 eventually anyhow, so this will just accelerate my plans. Thanks again, Oli! I was over-thinking this way too much :)
Well, looks like I responded too quickly. Yes, the built-in testpython script works great, but I'm getting the 216 corrupted memory errors
again any time I try to run the inter-bbs oneliner script as well as
the inter-bbs last caller script. I'm not sure what about these
scripts mystic's embedded python doesn't like.
Of course I only realized this once I migrated the BBS over to the
Debian 10 VM! Oh well. This didn't happen with the Ubuntu 18.04
machine with compiled 2.7.16. I'm going to spin up another test buster
VM and tinker with it.
Well, looks like I responded too quickly. Yes, the built-in
testpython script works great, but I'm getting the 216 corrupted
memory errors again any time I try to run the inter-bbs oneliner
script as well as the inter-bbs last caller script. I'm not sure
what about these scripts mystic's embedded python doesn't like.
Where do I find these inter-bbs scripts?
I can reproduce this with Debian 10 and the msgread.mpy script, which works in Ubuntu 18.04 with libpython2.7 from the repository.
I can reproduce this with Debian 10 and the msgread.mpy script,
which works in Ubuntu 18.04 with libpython2.7 from the
repository.
Good to know! thanks for trying it out. I may try to do some more
thorough testing with both Ubuntu 18.04 and Debian 10 later today.
Well, looks like I responded too quickly. Yes, the built-in testpython script works great, but I'm getting the 216
corrupted memory errors again any time I try to run the
inter-bbs oneliner script as well as the inter-bbs last caller
script. I'm not sure what about these scripts mystic's embedded
python doesn't like.
Where do I find these inter-bbs scripts?
Python 2.7 is included in _every_ Linux distribution and will be for a long time.
The one for Mystic was written by xqtr from Another Droid BBS. You could grab those from his BBS, it's an interbbs one liner.
I was going to point you to a copy I have here but my stuff is a bit of a mess currently and I can't find it. ;)
Well, I don't know what I was doing wrong in Debian 9, but I just installed libpython2.7 in Buster and it's working perfectly out of the box! I have a feeling all my tinkering messed up my old system. No compiling was required.
Okay, I did some tests with different Debian, Ubuntu and Python versions (from the distribution and sources). It seems it only works with the
exact Python version 2.7.15. This is the version that is shipped with Ubuntu 18.04. Debian 10 has Python 2.7.16, which didn't work, but 2.7.15 from the sources does.
The dependency on a specific patch-level version is unusual.
I knew it! You broke debian! Haha. I've done it a million times. Fortunately linux makes things easy to back up and restore.
Okay, I did some tests with different Debian, Ubuntu and Python
versions (from the distribution and sources). It seems it only
works with the exact Python version 2.7.15. This is the version
that is shipped with Ubuntu 18.04. Debian 10 has Python 2.7.16,
which didn't work, but 2.7.15 from the sources does.
The dependency on a specific patch-level version is unusual.
Very strange indeed. I actually got 2.7.16 to work at one point on
Ubuntu 18.04 when compiled from source per g00r00's wiki instructions. That Ubuntu Server 18.04 install did not include 2.7.x out of the box, only python3.x.
Did you remove python 2.7.16 before compiling 2.7.15 from source on
the Debian 10 test that you did? If so, how did you strip it out?
Thanks again for all your help with this! Really appreciate the time
you put in testing!
I knew it! You broke debian! Haha. I've done it a million times. Fortunately linux makes things easy to back up and restore.
LOL - yeah, it was inevitable I think :)
Thankfully Mystic is super easy to backup and restore.
I'm glad to see You again. May I kindly ask You what would You suggest when it's impossible by default to connect via ssh client to Mysic BBS ssh? I heard from friend of mine (I don't have a Mac) he couldn't connect that way. Any hint on what to try?
I'm glad to see You again. May I kindly ask You what would You suggest when it's impossible by default to connect via ssh client to Mysic BBS ssh? I heard from friend of mine (I don't have a Mac) he couldn't connect that way. Any hint on what to try?
Not to derail, but I've since switched to Ubuntu for my servers. A lot of people may head-scratch at this...but it turns out the debian "release when ready" methodology means things can become pretty stale on the current stable branch, which also makes version-to-version upgrades
scary since so many things will make so many large horizontal jumps. Ubuntu LTS-to-LTS migrations are a bit less scary and all I incur in the mean time is more potential daily update maintenance. To me, this is an easier pill to swallow :)
Well, looks like I responded too quickly. Yes, the built-in testpython script works great, but I'm getting the 216 corrupted memory errors
again any time I try to run the inter-bbs oneliner script as well as the inter-bbs last caller script. I'm not sure what about these scripts mystic's embedded python doesn't like.
This is the error I always got with the same scripts. It crashes on the msg_seek call here, but something seems to happen during the msg_open
call immediately preceding that to trigger the issue because if I try to exit the script after the open but before the seek it will still result
in a 216. I'm running on an unusual setup that's a bit of a test bed for aggressive security measures so I'd just attributed it to that and I'm surprised to see people on regular distributions running into what looks like the same thing.
I recall upgrading ibol03 to 04 shortly after it was released and running into a problem, probably this same issue.
IIRC and it was a while ago I went back to ibol03 and that worked.
I recall upgrading ibol03 to 04 shortly after it was released and
running into a problem, probably this same issue.
IIRC and it was a while ago I went back to ibol03 and that
worked.
I've tried older versions of ibol but they do the same thing at the
same function call. It even affects the msgread python test script
that's bundled with Mystic.
Oli wrote to Static <=-
\__/ \__/ \__/ \__/ \__/
(oo) (o-) (@@) (xx) (--)
//||\\ //||\\ //||\\ //||\\ //||\\
bug bug bug/w dead bug
winking hangover bug sleeping
This is the error I always got with the same scripts. It crashes on the msg_seek call here, but something seems to happen during the msg_open
call immediately preceding that to trigger the issue because if I try to exit the script after the open but before the seek it will still result
in a 216. I'm running on an unusual setup that's a bit of a test bed for aggressive security measures so I'd just attributed it to that and I'm surprised to see people on regular distributions running into what looks like the same thing.
dependent on specific python builds etc. It doesn't appear to be due to the "enable shared" compiling option as was originally suspected.
Not having that enabled is probably a common source of problems, but in this case it's something different. Running 2.7.16 here with
enable-shared right now. It had the same behavior on 2.7.13 prior to
this as well.
I've tried older versions of ibol but they do the same thing at the same function call. It even affects the msgread python test script that's bundled with Mystic.
Does this issue also affect windows or is it a problem on linux only?
I didn't even realize anyone else was affected in this particular manner. No idea about the impact on Windows but I'd guess not since most users
are going to be using the exact same set of binaries and consequently those would be the most tested.
Nice to see you active again. Welcome back, trust things are going well for you.
I tried out Ubuntu Server 18.04 instead, which has Python 3.x out of the box, but not 2.7. I compiled 2.7.16 per the wiki instruxtions and ran ldconfig. Lo and behold, it worked perfectly! I was able to run the interbbs oneliner script without issue.
I may do some more testing with Debian, and will report back if I have
any luck.
I don't know anything about python but I wonder if the scripts can be changed to work with the current version of python being deployed?
Seriously, I thought the version you compile against is libpython 2.7
and it should make no difference if you have libpython 2.7.13 or 2.7.16 installed.
I don't know anything about python but I wonder if the scripts can be changed to work with the current version of python being deployed?
Python 3 is an entirely different language than Python 2, its not compatible.
I haven't tested all possible combinations yesterday. Today I tried
Python 2.7.16 compiled from source on Ubuntu 18.04 and indeed it works fine. But it gets even funnier: on Ubuntu 19.04 I had no success at all with any version. Something else is going on. Maybe it is related to the gcc version or to some library that is used by Python. I have no idea.
Thanks for the additional info - good to know at what point it's
crashing out. It has now been solid for me on Ubuntu Server 18.04 with
the packaged version of python 2.7.15. I wonder if there is the
potential for g00r00 to implement a fix for this to make is less
dependent on specific python builds etc. It doesn't appear to be due to the "enable shared" compiling option as was originally suspected.
Yep, agreed. Seems Debian and Ubuntu 18.04 have enable-shared on by default in their packaged based python implementations anyhow.
Seriously, I thought the version you compile against is libpython
2.7 and it should make no difference if you have libpython 2.7.13
or 2.7.16 installed.
This is true. Any 2.7 version released in the last X (X being a long
time that I am unsure of exactly without researching) should work
fine.
The issue only is that the operating systems that come with 2.7 by
default seem to often compile it with the ability to embed it
disabled. This makes it not worth no only with Mythic, but lots of
other applications that use a Python subsystem. I don't know why the operating systems do this, I've seen plenty of people complaining
about it over the years.
Yep, agreed. Seems Debian and Ubuntu 18.04 have enable-shared on
by default in their packaged based python implementations anyhow.
From my experience this is not true. The defaults were absolutely not compiled that way, at least not at the time I had tested (which was
the final 18 LTS).
I have sent my comments to Avon who I think will share them with you but
I am never far away and can give comments or help with testing / discovering if that would help in any way.
I haven't tested all possible combinations yesterday. Today I
tried Python 2.7.16 compiled from source on Ubuntu 18.04 and
indeed it works fine. But it gets even funnier: on Ubuntu 19.04 I
had no success at all with any version. Something else is going
on. Maybe it is related to the gcc version or to some library
that is used by Python. I have no idea.
Did you read the wiki on mysticbbs.com by chance? Its not just the enabled_shared option its also the character encoding that may
different from system to system. I wonder if that could be factor in
any of this?
Things have been pretty hectic for me lately but I am still very slowly working on things. I've been meaning to dial out for a while now I just never seem to get around to having a big enough window of time that I
feel should be spent trying to catch up on 6 months of messages :)
I am sure he will pass them along! I haven't had time to get my BBS
back up and see where I am with that, so Avon may be waiting for me to
get more organized to share what he has collected, assuming he has collected things :)
On 10-25-19 20:54, g00r00 wrote to Avon <=-
Nice to see you active again. Welcome back, trust things are going well for you.
Things have been pretty hectic for me lately but I am still very slowly working on things. I've been meaning to dial out for a while now I
just never seem to get around to having a big enough window of time
that I feel should be spent trying to catch up on 6 months of messages
:)
I am sure he will pass them along! I haven't had time to get my BBS
As the wiki notes, there are two issues (that I found anyway) that can cause issues one is the shared option and the other is the codepage the RTL is compiled using or something like that, it has to match the operating system.
Its also possible there is a bug of course, but I have very much
struggled to find issues with the actual Mystic functions. In theory if it works in Windows it should work in Linux assuming whatever environmental requirements are met.
From my experience this is not true. The defaults were absolutely not compiled that way, at least not at the time I had tested (which was the final 18 LTS).
[1]import sysconfig
sysconfig.get_config_vars('Py_ENABLE_SHARED')
problemsFrom my experience this is not true. The defaults were absolutely not
compiled that way, at least not at the time I had tested (which was the
final 18 LTS).
Interesting - I wonder if this is because I'm using Amazon EC2 AMIs instead of the usual ISO based images. Here is the output from my BBS VM with the OOTB version of 2.7.15:
Python 2.7.15+ (default, Oct 7 2019, 17:39:04)
[GCC 7.4.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
[1]import sysconfig
sysconfig.get_config_vars('Py_ENABLE_SHARED')
I'll see if I can check this with Debian 9/10, which was giving the
earlier as well.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 412 |
Nodes: | 16 (2 / 14) |
Uptime: | 112:59:47 |
Calls: | 8,597 |
Calls today: | 10 |
Files: | 13,229 |
Messages: | 5,935,655 |