unRAID 6 NerdPack - CLI tools (iftop, iotop, screen, kbd, etc.)


jonp

Recommended Posts

Hi,

 

i am trying to play around with acd_cli on unraid, I have it running in a docker, but you can't export fuse mounts so I want to try it on the host system, I have sorted most of the dependencies, but having issues with python3 and sqlite3. Sqlite3 is installed as it is part of the unraid build now, but python3 (and 3.5) some seem to have it.

 

In python2

Python 2.7.12 (default, Sep  6 2016, 18:21:48)

[GCC 5.4.0] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import sqlite3

>>> sqlite3.sqlite_version

'3.13.0'

>>> exit()

 

In python3.5 or 3

Python 3.5.1 (default, May 19 2016, 21:40:34)

[GCC 5.3.0] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>> import sqlite3

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

  File "/usr/lib64/python3.5/sqlite3/__init__.py", line 23, in <module>

    from sqlite3.dbapi2 import *

  File "/usr/lib64/python3.5/sqlite3/dbapi2.py", line 27, in <module>

    from _sqlite3 import *

ImportError: No module named '_sqlite3'

 

I have googled but can't find a solution, any idea on how to get a python3.5 working with sqlite3?

 

Thanks,

Wob

Link to comment

Were you using my version of python3? If so have you tried another available version. I compiled it myself because available versions were not compiled with openssl so calling https urls would not work.

 

When compiling for unRAID you have to install many packages even if they are included in unpaid since the headers are stripped out. I know I didn't install sqlite3 when I compiled my version so maybe that's a problem. I could try it again. I also read you may have to specifically configure with sqlite when compiling.

 

Also I don't believe there's a pysqlite3 for python 3, so don't waste time with pip since it will only install for python 2 or looking for a package.

 

Let me know if you try another python 3 package and it works. I can try and recompile mine.

Link to comment

Hi dmacias,

 

I just installed from (http://slackonly.com/pub/packages/14.1-x86_64/python/python3/python3-3.5.1-x86_64-1_slack.txz) and it works, so it does appear to be linked to your version, I did read somewhere that you need sqlite3 installed when you build so I think you are correct in you description.

 

Yeah, no pysqlite3, I did search for that for some time.

 

Another question for you, I am looking to install encfs, there is an old plugin but nothing for 6, I am not at all familiar with how to create a plugin, so just trying to work out best how I go about it. I found all the txz files required, I see the following options;

 

  • See if you can add them to the NerdPack
  • Create a user script and use the user script plugin to run it
  • Work out how to create a plug in for it

 

The first option is obvious the easiest for me, is that something you are willing to add to this pack?

 

These are the packages i used.

http://ftp.slackware.org.uk/salix/x86_64/14.1/salix/ap/encfs-1.7.4-x86_64-4gv.txz

 

Then the dependancies.

http://ftp.slackware.org.uk/slackware/slackware64-14.1/slackware64/l/boost-1.54.0-x86_64-3.txz

http://ftp.slackware.org.uk/salix/x86_64/14.1/salix/l/rlog-1.4-x86_64-1pw.txz

http://ftp.slackware.org.uk/slackware/slackware64-14.1/slackware64/a/slocate-3.1-x86_64-4.txz

 

I'll need to do some script work to get acd_cli installed at start up as it has a couple of dependencies and needs to be installed via pip3.

 

With relation to plugin creation, can you point me at a starting point if I want to tackle that?

 

Thanks,

Wob

Link to comment

I might have called encfs too early, seems I have an issue with 1.7.4, need to get to a newer version.

 

OK, I installed

http://download.salixos.org/x86_64/14.2/salix/ap/encfs-1.8.1-x86_64-1gv.txz

 

and had to upgrade boost to

http://slackware.cs.utah.edu/pub/slackware/slackware64-14.2/slackware64/l/boost-1.59.0-x86_64-1.txz

 

Now have a working install of encfs and acd_cli... just need to work out how to get it all reinstall and map after a reboot.

Link to comment

This would be outside of the scope of this plugin. This is more for single packages (even though a couple require each other). What your doing would be more suited for its own plugin. I will recompile my python 3 though.

 

A good starting point for creating a plugin I think would be one of my smaller plugins. One I wrote for Quassel notifications seems appropriate, since it's the one I needed python 3 for.

https://github.com/dmacias72/unRAID-plugins/tree/master/source/qnotify

https://github.com/dmacias72/unRAID-plugins/blob/master/plugins/qnotify.plg

Basically the source is just a file structure for creating a slackware package which can be installed/upgraded with upgradepkg --install-new

So the emttp settings page, rc scripts and file permissions are all installed with the package. The plg file installs all the dependencies and the plugin package and executes install and remove scripts. You can pm me or create a separate thread and I can help out as much as I can.

Link to comment

Just did and same, still have "Please wait, retrieving plugin information ..."

 

root@Tower:/boot/config/plugins/NerdPack# ls -lah *
-rwxrwxrwx 1 root root   67 Sep 29 21:34 NerdPack-2016.09.18-x86_64-1.md5*
-rwxrwxrwx 1 root root  13K Sep 29 21:34 NerdPack-2016.09.18-x86_64-1.txz*
-rwxrwxrwx 1 root root    1 Sep 29 21:34 NerdPack.cfg*

packages:
total 24K
drwxrwxrwx 3 root root 4.0K Sep 29 21:34 ./
drwxrwxrwx 3 root root 4.0K Sep 29 21:34 ../
drwxrwxrwx 2 root root 4.0K Sep 29 21:34 6.2/
-rwxrwxrwx 1 root root 9.8K Sep 29 21:34 packages-desc*
root@Tower:/boot/config/plugins/NerdPack# ls -lah */*
-rwxrwxrwx 1 root root 9.8K Sep 29 21:34 packages/packages-desc*

packages/6.2:
total 8.0K
drwxrwxrwx 2 root root 4.0K Sep 29 21:34 ./
drwxrwxrwx 3 root root 4.0K Sep 29 21:34 ../

Link to comment

Do you get data from cURL ?

 

root@Tower:/boot/config/plugins/NerdPack/packages/6.2# curl https://github.com/dmacias72/unRAID-plugins/blob/master/packages/6.2/screen-4.4.0-x86_64-1.txz
curl: symbol lookup error: /usr/lib64/libcurl.so.4: undefined symbol: SSL_CTX_set_alpn_protos
root@Tower:/boot/config/plugins/NerdPack/packages/6.2# curl --version
curl 7.50.1 (x86_64-pc-linux-gnu) libcurl/7.50.1 OpenSSL/1.0.1c zlib/1.2.8 libidn/1.33 libssh2/1.7.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets
curl: symbol lookup error: /usr/lib64/libcurl.so.4: undefined symbol: SSL_COMP_free_compression_methods

Link to comment

Do you get data from cURL ?

 

root@Tower:/boot/config/plugins/NerdPack/packages/6.2# curl https://github.com/dmacias72/unRAID-plugins/blob/master/packages/6.2/screen-4.4.0-x86_64-1.txz
curl: symbol lookup error: /usr/lib64/libcurl.so.4: undefined symbol: SSL_CTX_set_alpn_protos
root@Tower:/boot/config/plugins/NerdPack/packages/6.2# curl --version
curl 7.50.1 (x86_64-pc-linux-gnu) libcurl/7.50.1 OpenSSL/1.0.1c zlib/1.2.8 libidn/1.33 libssh2/1.7.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets
curl: symbol lookup error: /usr/lib64/libcurl.so.4: undefined symbol: SSL_COMP_free_compression_methods

 

Yes it uses curl and github api to get packages.json and to download the packages. Something is installing OpenSSL 1.0.1c, unRAID 6.2 is 1.0.2h

 

Link to comment

Do you get data from cURL ?

 

root@Tower:/boot/config/plugins/NerdPack/packages/6.2# curl https://github.com/dmacias72/unRAID-plugins/blob/master/packages/6.2/screen-4.4.0-x86_64-1.txz
curl: symbol lookup error: /usr/lib64/libcurl.so.4: undefined symbol: SSL_CTX_set_alpn_protos
root@Tower:/boot/config/plugins/NerdPack/packages/6.2# curl --version
curl 7.50.1 (x86_64-pc-linux-gnu) libcurl/7.50.1 OpenSSL/1.0.1c zlib/1.2.8 libidn/1.33 libssh2/1.7.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets
curl: symbol lookup error: /usr/lib64/libcurl.so.4: undefined symbol: SSL_COMP_free_compression_methods

Just run upgradepkg on this and you won't have to reboot

http://slackware.cs.utah.edu/pub/slackware/slackware64-14.2/slackware64/n/openssl-1.0.2h-x86_64-1.txz

Link to comment

Defect Report

 

6.3.0-RC1

 

When entering in to NerdPack settings (with the array stopped), the plugin just sits there forever on retrieving plugin information

 

Additionally, the syslog shows that inotify tools has been installed, but inotifywait does not exist within /usr/bin/ (and inotifywait doesn't work from the command line either)

Oct  5 17:56:46 Server_A nerdpack: Installing inotify-tools-3.14 package...
Oct  5 17:56:46 Server_A root: 
Oct  5 17:56:46 Server_A root: Installing inotify-tools-3.14 package... 

Link to comment

Defect Report

 

6.3.0-RC1

 

When entering in to NerdPack settings (with the array stopped), the plugin just sits there forever on retrieving plugin information

 

Additionally, the syslog shows that inotify tools has been installed, but inotifywait does not exist within /usr/bin/ (and inotifywait doesn't work from the command line either)

Oct  5 17:56:46 Server_A nerdpack: Installing inotify-tools-3.14 package...
Oct  5 17:56:46 Server_A root: 
Oct  5 17:56:46 Server_A root: Installing inotify-tools-3.14 package... 

I'll have to add support for 6.3 version. Maybe should have based it on slackware 14.1 vs 14.2 instead of 6.1 & 6.2

Link to comment

Defect Report

 

6.3.0-RC1

 

When entering in to NerdPack settings (with the array stopped), the plugin just sits there forever on retrieving plugin information

 

Additionally, the syslog shows that inotify tools has been installed, but inotifywait does not exist within /usr/bin/ (and inotifywait doesn't work from the command line either)

Oct  5 17:56:46 Server_A nerdpack: Installing inotify-tools-3.14 package...
Oct  5 17:56:46 Server_A root: 
Oct  5 17:56:46 Server_A root: Installing inotify-tools-3.14 package... 

I'll have to add support for 6.3 version. Maybe should have based it on slackware 14.1 vs 14.2 instead of 6.1 & 6.2

Fair enough.  But why does it sit forever on Retrieving Plugin Information?
Link to comment

It uses curl to retrieve packages and info using github api based on unRAID version. There's no 6.3 repo. It'll probably work if I copied the 6.2  packages to a 6.3 folder in github. I'll have to look through the code.

ok...  First time I've had an issue with NerdPack, so treat me like a noob on my questions    ;)  In the meantime, I have no choice but to downgrade unRaid (wife is actually watching TV for a change, so I have a small window to develop some things  ;D )
Link to comment
  • Squid unpinned this topic

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.