• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

Dash Platform compatible with older Ubuntu server versions ?

qwizzie

Well-known member
I am currently still on Ubuntu 18.04.6 LTS, where Sentinel is already not supported, due to low Python version (running command
'venv/bin/python bin/sentinel.py' gives warning 'Python 2.7 is not supported', so i guess i have Python 2.7). This does not form a problem currently with running a masternode, as Sentinel does not seem to be a requirement these days to successfully run a masternode.

I am wondering if Dash Platform or the tool that installs Dash Platform, have a minimal Ubuntu version requirement or a specific Python version requirement ?

Also i am wondering if i do upgrade from 18.04.6 LTS to 20.04.5 LTS (as 18.04.6 LTS nears End of Life this year anyways and upgrading to 20.04.5 LTS should get me a higher Python version that supports Sentinel again), whether my currently set systemd proces for running dashd as a system process needs to be setup again ?

Whether in fact everything needs to be setup again in 20.04.5 LTS ? Systemd for running dashd as a system service, firewall, swapfile, crontab, sentinel/python, etc/rc.local (which i use as workaround in 18.04.6 LTS, to register my additional ip addresses).

At last i would like to know if there is a way to get to a higher Python version from within Ubuntu 18.04.6 LTS. If that is possible, then to which Python version should i update in time, to avoid future problems with Dash Platform or its installer ? Or to simply get Sentinel compatible again with my current Ubuntu system ?

And why do we still use Sentinel these days anyways, when masternodes seem to function fine without it on older Ubuntu systems that no longer support it ? (i suspect those are Ubuntu v14, v16, v18)
 
Last edited:
You can (and should) install python3 on ubuntu18. Dash Core should still support ubuntu 18. I can't think of any reason why it wouldn't. To fix the sentinel issue, you'd need to install python3. (apt install python3)
 
You can (and should) install python3 on ubuntu18. Dash Core should still support ubuntu 18. I can't think of any reason why it wouldn't. To fix the sentinel issue, you'd need to install python3. (apt install python3)
Seems like i am already on python 3 with Ubuntu 18.04.6 LTS, but i keep getting the message 'Python 2.7 is not supported' when i issue command 'venv/bin/python bin/sentinel.py' (together with some failures trying to install the dependences / venv/bin/pip install -r requirements.txt)

This is what i see when i do apt install python3 through root :

Knipsel.JPG


This is what i see when i install as an user with sudo rights :

cd ~/.dashcore
git clone https://github.com/dashpay/sentinel.git
cd sentinel
virtualenv venv
venv/bin/pip install -r requirements.txt

Knipsel.JPG


When i do the last command

venv/bin/python bin/sentinel.py --> Python 2.7 is not supported

At this point i assume Sentinel is not active ? Masternode has no problem functioning with this error......

Edit : replaced deprecation screenshot after deleting sentinel directory and doing above commands without sudo (which is the correct way).
 
Last edited:
Try `venv/bin/python3 bin/sentinel.py`

venv/bin/python3 bin/sentinel.py gives me :

-bash: venv/bin/python3: No such file or directory

I remember getting the same yellow depracation warning about Python 2.7 in the past, was never a big deal (i considered it a FYI).
Only now there is also an actual red error message and a conflict with the requirements.txt (line 2)

Masternode itself just operates fine, no unexpected downtime.
 
Last edited:
Ignore sentinel for now, I also don't run it, but when you go to form your hypernode - 4k, create a new Ubuntu server, it will need to be more powerful, moar RAM and cores and use the Dash Masternode Zeus to configure all the things. Right now, it is still too early to be thinking about running Hypernodes.
 
Ignore sentinel for now, I also don't run it, but when you go to form your hypernode - 4k, create a new Ubuntu server, it will need to be more powerful, moar RAM and cores and use the Dash Masternode Zeus to configure all the things. Right now, it is still too early to be thinking about running Hypernodes.

For now i just want to know why i can't get sentinel running on Ubuntu 18.04.6 LTS with Python 3 already installed and on latest version (3.6.7-1).
I know my masternodes don't need it and can operate without it just fine, but its bugging me for awhile now. I think this Python problem emerged somewhere in 2022. Not just for me, but for other users as well (i seem to recall some were on older Ubuntu systems then mine)

And i worry this problem could unexpectedly manifest itself with Dash Platform and / or its installer tool. I rather deal with this Python problem now (possibly by upgrading to Ubuntu 20.04.5 LTS or trying to fix this within Ubuntu 18.04.6 LTS), then having to deal with it around Platform launch time. Unless Dash Platform and / or its installer tool do not use Sentinel ?
 
Last edited:
For now i just want to know why i can't get sentinel running on Ubuntu 18.04.6 LTS with Python 3 already installed and on latest version (3.6.7-1).
I know my masternodes don't need it and can operate without it just fine, but its bugging me for awhile now. I think this Python problem emerged somewhere in 2022. Not just for me, but for other users as well (i seem to recall some were on older Ubuntu systems then mine)

And i worry this problem could unexpectedly manifest itself with Dash Platform and / or its installer tool. I rather deal with this Python problem now (possibly by upgrading to Ubuntu 20.04.5 LTS or trying to fix this within Ubuntu 18.04.6 LTS), then having to deal with it around Platform launch time. Unless Dash Platform and / or its installer tool do not use Sentinel ?
Hey friend. you need to first install the python3 binary in your virtualenv. that is why you are getting the

Code:
-bash: venv/bin/python3: No such file or directory

in your virtualenvironment you have set up for this project. the requirements are in the requirements.txt. python2.7 will there somewhere in the virtealenv directory/ probably in the /bin or /modules or wherever the requirements.txt dependancies are unpacked by pip.

so what you did by this command :

Code:
apt install python3

is install python3 systemwide. . the default place is in /usr/bin/ --> /usr/bin/python3

so that is why you are getting the error

-bash: venv/bin/python3: No such file or directory

since you installed your python3 systemwide and in /usr/bin . not in your virtualenvironment /venv/bin/.
you can go to the directory venv/bin and do the command LS to verify if python3 is there.
when it is installed there you can try calling sentinel again with that binary : venv/bin/python3 bin/sentinel.py

To keep things more separated you it is better to install python3 into your venv.
you have to pip3 install python3 i think while your VENV is active.
if you want i can further help you on discord.
I am in dash discord please find my nickname Zephira#1261, ping me in dash discord general.
Discord dash general invite link : https://discord.gg/CpvZscfS
I can take some time to help you trouble shoot and assist. I'm available tomorrow (going to bed now) live in western europe. so in a good 10 hours I'm back.
 
Last edited:
Hey friend. you need to first install the python3 binary in your virtualenv. that is why you are getting the

Code:
-bash: venv/bin/python3: No such file or directory

in your virtualenvironment you have set up for this project. the requirements are in the requirements.txt. python2.7 will there somewhere in the virtealenv directory/ probably in the /bin or /modules or wherever the requirements.txt dependancies are unpacked by pip.

so what you did by this command :

Code:
apt install python3

is install python3 systemwide. . the default place is in /usr/bin/ --> /usr/bin/python3

so that is why you are getting the error

-bash: venv/bin/python3: No such file or directory

since you installed your python3 systemwide and in /usr/bin . not in your virtualenvironment /venv/bin/.
you can go to the directory venv/bin and do the command LS to verify if python3 is there.
when it is installed there you can try calling sentinel again with that binary : venv/bin/python3 bin/sentinel.py

To keep things more separated you it is better to install python3 into your venv.
you have to pip3 install python3 i think while your VENV is active.
if you want i can further help you on discord.
I am in dash discord please find my nickname Zephira#1261, ping me in dash discord general.
Discord dash general invite link : https://discord.gg/CpvZscfS
I can take some time to help you trouble shoot and assist. I'm available tomorrow (going to bed now) live in western europe. so in a good 10 hours I'm back.


qwizzie is well aware of Dash Discord, he prefers the using this Forum.
 
For now i just want to know why i can't get sentinel running on Ubuntu 18.04.6 LTS with Python 3 already installed and on latest version (3.6.7-1).
I know my masternodes don't need it and can operate without it just fine, but its bugging me for awhile now. I think this Python problem emerged somewhere in 2022. Not just for me, but for other users as well (i seem to recall some were on older Ubuntu systems then mine)

And i worry this problem could unexpectedly manifest itself with Dash Platform and / or its installer tool. I rather deal with this Python problem now (possibly by upgrading to Ubuntu 20.04.5 LTS or trying to fix this within Ubuntu 18.04.6 LTS), then having to deal with it around Platform launch time. Unless Dash Platform and / or its installer tool do not use Sentinel ?


Currently, the best way to install sentinel is to copy/pasta this.


Code:
cat > /tmp/sentinel.patch <<"EOF"
--- sentinel-orig/lib/init.py   2022-08-19 11:27:40.593795243 +0000
+++ sentinel/lib/init.py    2022-08-19 11:28:15.321761009 +0000
@@ -104,9 +104,10 @@
         print("DashCore must be installed and configured, including JSONRPC access in dash.conf")
         sys.exit(1)

-    # deprecation warning
-    if not has_required_env_vars() and has_dash_conf():
-        print("deprecation warning: JSONRPC credentials should now be set using environment variables. Using dash.conf will be deprecated in the near future.")
+# Deprecate this deprecation warning.
+#    # deprecation warning
+#    if not has_required_env_vars() and has_dash_conf():
+#        print("deprecation warning: JSONRPC credentials should now be set using environment variables. Using dash.conf will be deprecated in the near future.")


 main()
EOF

The above creates a patch file that prevents a certain nag in the sentinel from triggering.

Code:
git clone https://github.com/dashpay/sentinel
cd ~/sentinel 
# Apply the above patch
patch -Np1 -i /tmp/sentinel.patch
virtualenv -p $(which python3) venv
venv/bin/pip install -r requirements.txt 
venv/bin/py.test test
venv/bin/python bin/sentinel.py && echo "Sentinel installed successfully!"
 
Currently, the best way to install sentinel is to copy/pasta this.


Code:
cat > /tmp/sentinel.patch <<"EOF"
--- sentinel-orig/lib/init.py   2022-08-19 11:27:40.593795243 +0000
+++ sentinel/lib/init.py    2022-08-19 11:28:15.321761009 +0000
@@ -104,9 +104,10 @@
         print("DashCore must be installed and configured, including JSONRPC access in dash.conf")
         sys.exit(1)

-    # deprecation warning
-    if not has_required_env_vars() and has_dash_conf():
-        print("deprecation warning: JSONRPC credentials should now be set using environment variables. Using dash.conf will be deprecated in the near future.")
+# Deprecate this deprecation warning.
+#    # deprecation warning
+#    if not has_required_env_vars() and has_dash_conf():
+#        print("deprecation warning: JSONRPC credentials should now be set using environment variables. Using dash.conf will be deprecated in the near future.")


main()
EOF

The above creates a patch file that prevents a certain nag in the sentinel from triggering.

Code:
git clone https://github.com/dashpay/sentinel
cd ~/sentinel
# Apply the above patch
patch -Np1 -i /tmp/sentinel.patch
virtualenv -p $(which python3) venv
venv/bin/pip install -r requirements.txt
venv/bin/py.test test
venv/bin/python bin/sentinel.py && echo "Sentinel installed successfully!"

That works perfectly, thank you.

@Pasta
It does make me wonder if the official instructions (https://docs.dash.org/en/stable/docs/user/masternodes/setup.html) need to be adjusted from having to issue 'virtualenv venv' from within sentinel folder, to issue 'virtualenv -p $(which python3) venv' from within sentinel folder. To avoid problems with the next step for certain users using certain Ubuntu systems (the next step being 'venv/bin/pip install -r requirements.txt').
 
Last edited:
Back
Top