Originally created by: xho... (code.google.com)@gmail.com
Originally owned by: dgazi... (code.google.com)@gmail.com
I would like to add support for ipkg optware. It allows to install various
set of packages suitable for snake-os. Installed packages are stored on
connected usb devices so they don't require any additional space on limited
flash memory.
I've attached patch which adds ipkg-cl (58 KB) binary (and removes rsync
due to firmware size limitation).
It requires to create .optware directory in /usb/sda1. This is location of
all installed packages using ipkg-cl tool. During image creation there is
also made a symbolic link in /opt to /usb/sda1/.optware.
Patch also contains init.d script ipkg which set PATH and LD_LIBRARY_PATH
in /etc/profile (if not already included) and also try to start services
from /opt/etc/init.d.
There is also /etc/ipkg.conf file which contains destination and source.
Source is not yet valid because we don't have packages build for snake os
stored on any location yet.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: xho... (code.google.com)@gmail.com
I forgot to mention that I also added rc.local script which is executed after device
boots. It may be removed from this patch. It allows to run user commands after each
device start.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: dgazi... (code.google.com)@gmail.com
(No comment was entered for this change.)
Labels: -Type-Defect -Priority-Medium Type-Enhancement Priority-High
Owner: dgazineu
Status: Accepted
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: dwmcqu... (code.google.com)@gmail.com
Has this been rolled into mainline? I'd think this makes a candidate to replace transmission (and then make transmission available as a package).
Any thoughts?
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: dwmcqu... (code.google.com)@gmail.com
I have opkg in the 1.3.2 branch of svn right now. I'll roll your init files in and then we just need to figure out where to store the packages.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: ulrich.i... (code.google.com)@gmail.com
It would be nice to get optware packages working an snakeos. It will be much easier to install software even for people with no idea of chroot environments.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: stefansc...@googlemail.com
I just committed (among other things) the ability to set the opkg partition. It's done using bind mounts. When opkg is enabled /opt contains a "view" of /usb/<selected partition>/.optware/ where the packages are actually installed. The bind mount and required directories will be automatically created when the selected partition is mounted.
The partition can be selected under system->opkg in the browser interface, where opkg can also be turned on and off.
Packages can install init files under /opt/init.d/ (maybe this should be /opt/etc/init.d dunno). When the partition is mounted the start function of every file that is executable will be called. When unmounted the stop function. Services can this way be turned on/off with a chmod +x/-x <servicefile>"
Packages can be installed from the shell with "opkg-cl install". A demo package is attached. Instructions for creating packages are here: http://inportb.com/2010/10/19/making-an-opkg-package/
I don't have a proper usb disk to test it with right now, but it's working fine with the card reader in my ritmo.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: gori.men... (code.google.com)@gmail.com
Hi, this is my first post. I made some test and i find with url this http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable/, where i download some packages. But install one for one is too slowly ¿How I can set source for packages?
PD:Sorry for my english XD
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: shevele...@mail.ru
With minor changes in config files and some scripts it is possible to use with SnakeOS V1.3.2-20111019 software from Optware repository (stable and unstable: I use the last one)
http://ipkg.nslu2-inux.org/feeds/optware/gumstix1151/cross/
I installed some packages using command prompt (via PyTTY).
I don't test most of them, but looks like mc, transmittion and some other works well... pyLoad v0.4.3 works well too, except:
1. captcha recognition absent becouse of absence optional tesseract-ocr package for gumstix in optware repo: all other dependencies of this version of pyLoad resolved successfully (python 2.5, py-curl, py-django, libcurl e.t.c.);
2. support of national symbols in FTP downloads (looks like because of python ascii-unicode conversion problem in a corresponded pyLoad's plugin).
Now I try force to work pyLoad v0.4.8 (it can be installed, but built-in web-server won't work properly)...
I am novice in the Linux, but if the community would be interested, later I can post here (or somewhere else) description of my steps.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: stefansc...@googlemail.com
Oh.. those really work, except that everything ends up in /opt/opt/. Do you change the dest directory in opkg.conf and set LD_LIBRARY_PATH?
I'm tempted to change the destination to / for the next release, but that would break existing packages (they expect to be installed into /opt/). I guess updating the few packages that we have wouldn't be a big issue.
The idea behind installing into /opt/ was to make it harder for some bad package to mess up the system. But this breaks most foreign packages.
I've been trying to package up pyload and its dependencies myself. What problems do you have with the web server? My biggest issue is that I run out of memory when copying a largish file off the device through the web interface and that pyload is bit of memory hog in general. I was using python 2.7 but maybe older versions would be a bit lighter.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: shevele...@mail.ru
I apologize for the delay in response...
Yes, the file /etc/opkg/opkg.conf has been modified:
#================opkg.conf===============
#destination of install
dest root /
#source of packages
src/gz optware_unst http://ipkg.nslu2-linux.org/feeds/optware/gumstix1151/cross/unstable
#download cache directory (to make sure that opkg upgrade
#does not break system because of an unstable connection)
option cache /opt/cache
#==============================
Variable PATH in /etc/profile was changed from
PATH=/usr/bin:/usr/sbin:/bin:/sbin
to
PATH=/opt/bin:/usr/bin:/usr/sbin:/bin:/sbin
(don't know if it good practice?) because each execution of some scripts (for example, /usr/share/snake/automount or /usr/share/snake/setprinter) resets PATH to default value.
As for LD_LIBRARY_PATH - simple adding it to /etc/profile like this:
LD_LIBRARY_PATH=/opt/lib
has no effect: it should be additionally exported later from command line or elsewhere... may be since the uClibc comes with the firmware is not configured with LDSO_RUNPATH
(look at http://snake-os.googlecode.com/svn/branches/1.3.2/tools/arm-uclibc-3.4.6/include/bits/uClibc_config.h)--) I don't now if it should be fixed in future release...
Besides listed, I copied the file update-alternatives (can be obtained from http://snake-os.googlecode.com/svn/trunk/apps/opkg/utils/) to /opt/bin/
-it is necessary for normal installation (executing postinstall scripts) of some packages (e.g. bzip2).
After Updating the list of available packages:
#opkg-cl update -t /opt/tmp
I installed pyLoad from ipk-file: all dependencies resolved automatically (exept tesseract as I wrote before). The only point why I installed it via command prompt was a temporary directory definition with option "-t /opt/tmp", else wget unable to download packages due to free space absence.
As for the idea behind installing into /opt/...I wrote before, I'm novice in Linux (so forgive me please if I ask stupid questions)... but is it possible to use the list of allowed architectures ("arch" options) in opkg.conf in order to source packages from a foreign, but compatible (and only compatible) target?
Now about pyLoad.
Copying large file off the device through the web interface is not recommended due to high CPU load, that stated on the "Downloads" tab of pyLoad's web-interface (at least in version 0.4.3), so that is not a big issue.
As for my experience, I use autoinstalled Python 2.5.5 (python25_2.5.5-2_arm.ipk) from Optware's unstable for gumstix1151 (Python 2.6 in same repository is unusable due to absence there py26-curl).
Error obtained after start pyLoadCore (python2.5: can't resolve symbol 'dbm_firstkey') resolved by renaming /opt/lib/python2.5/lib-dynload/dbm.so to xdbm.so.
After that:
1. old versions of pyLoad (older 0.4.5) with Django-based web-interface works well except ascii encode error for downloads from FTP-hosts with national (in my case- cyrillic) symbols in URL.
2. new versions of pyLoad (and 0.4.8 too) with built-in interface won't work properly since I can't add downloads by pressing "Add" button at "Queue" or "Collector" tabs.
P.S. I beg your pardon for my english...
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: stefansc...@googlemail.com
This feed also works, the packages are bit more up to date:
http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable/
I think /etc/init.d/opkg would be a good place to define the variables if you want the startup scripts to work. /etc/profile will only affect login shell (e.g. via ssh).
LDSO_RUNPATH enables the ability to hardcode library paths in binaries (ld's -rpath option).
Our uclibc supports adding search paths via /etc/ld.so.conf, but that requires the ldconfig program which isn't in the system. I guess it could be added to the optware installation.
I was wondering already where update-alternatives comes from, thanks!
Adding "option tmp_dir /opt/tmp/" to opkg.conf also works for the temp directory.
I'm no opkg expert either. Seems like the arch is usually set to "arm" which isn't of much use for determining if a package will work.
On the mailinglist it was suggested to link /opt/ to /opt/opt/ to make these packages play well with ours.
ln -s /opt /opt/opt
or
mkdir /opt/opt; mount --bind /opt/ /opt/opt
It's a kludge but it works for now.
For some reason pyload doesn't run with the python from that feed anymore. I had it running once.. not sure what broke.
I'll see if I can package up my python build (or at least the modules needed for pyload).
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: shevele...@mail.ru
Thank you very much for a good news!
The feed you found is perfect! It's really up-to-date and looks like have everyting for full-functional pyLoad installation (and not only)! Binaries there compiled against uClibc too, since used "/lib/ld-uClibc.so.0" as interpreter... BTW, for early check if some packages compatible with our box the 7-Zip can be used (look how in attached file- I use 9.17 beta under WindowsXP)- hope that helps somebody in future...
I found some info at http://forum.pyload.org/viewtopic.php?f=9&t=958 : as I understand, pyLoad's built-in web-interface problem exist due to MS Internet Explorer older 9.0 incompatible with MooTools, used in pyLoad's 0.4.5-0.4.8 Java scripting. After using Google Chrome I found web-interface and other parts of installed http://download.pyload.org/pyload-v0.4.8-noarch.ipk working great 8-)! The issue persist in IE7 and IE8 with properly installed latest Java; is IE9 really free from that I'm not checking yet.
Little bit later I'm gonna reinstall all packages from new feed and report the result.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: shevele...@mail.ru
Here is the report I've been promised.
Using a "new" packages feed (dns323 optware) I've tried:
1. to update packages with "opkg-cl upgrade" from unstable;
2. to completely reinstall all packages from "new" unstable;
3. to install packages from "new" stable after overall NS-K330 reset (with firmware reflashing).
In all cases installation finished without errors, but python 2.5 won't work (look at the pyload's run errors in attached log.txt). That can happend due to misconfiguration of python while compiling or (most likely) because of CPU different in our box and in dns323.
At now I have software, installed in a next sequence (with opkg configured to use optware gumstix1151 unstable feed):
1. tesseract-ocr and tesseract-ocr-lang-eng v2.03 from dns323 unstable (manual install)
2. pyLoad v0.4.8 installed out of http://download.pyload.org/pyload-v0.4.8-noarch.ipk (manual install)
3. transmission 2.42 from dns323 unstable (manual install)
where "manual install" means installing via command line manually downloaded to the box packages with dependencies, autoresolved using gumstix1151 unstable feed.
Installed from ipk-file pyLoad v0.4.8 still have some issues with web-interface (even in Google Chrome), that's why later I replace it manually to "current default" pyLoad [rcd0ebebcc700] obtained from https://bitbucket.org/spoob/pyload/get/default.tar.gz.
Transmission and pyLoad works great, except captcha recognition- I'm gona deal with int now...
In summary I would note: using of traditional for optionware approaches is highly wanted in the next SnakeOS release. In future it will enable us to collaborate with optionware's society in packages development.
P.S. I beg your pardon for my english again...
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: stefansc...@googlemail.com
Yeah, I'm getting the same thing with the dns323 packages now. Python must have been picking up the *.pyc files from the previous install when it initially worked.
Since the optware repo already holds packages for all kinds of platforms, they might be open to host packages for ours too. I'll have to look into how those feeds are managed.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: mkhom...@googlemail.com
Tested it out, runs really great.
Installed mc, nano, python27. No problems yet.
a simple install script could be usefull :-)
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: mkhom...@googlemail.com
I want to write a simple installer script and that is what runs for me:
SSH to snake
1. rm /etc/opkg/opkg.conf
2. echo "
#================opkg.conf===============
#destination of install
dest root /
#source of packages
src/gz optware_unst http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable/
#download cache directory (to make sure that opkg upgrade
#does notbreak system because of an unstable connection) option
cache /opt/cache
#============================== ">> /etc/opkg/opkg.conf
3. save config
4. reboot
5. activate opkg service on sda1
connect via ssh
6. PATH=/opt/bin:/usr/bin:/usr/sbin:/bin:/sbin
7. export PATH
8. LD_LIBRARY_PATH=/opt/lib
9. export LD_LIBRARY_PATH
10.mkdir /opt/tmp
11.opkg-cl update -t /opt/tmp
12.opkg-cl install python27 -t /opt/tmp
13.python !!! Now I had python shell.
how to make hanges autorun and path variable persistent?
whats about the PATH variable?
are there better ways or errors?
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: alez... (code.google.com)@gmail.com
I have been trying to get Ipkg opt ware support still I get many errors:
# opkg-cl install mt-daapd
Installing mt-daapd (0.2.4.2-2) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable//mt-daapd_0.2.4.2-2_arm.ipk.
Installing gdbm (1.8.3-4) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable//gdbm_1.8.3-4_arm.ipk.
Installing libid3tag (0.15.1b-1) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable//libid3tag_0.15.1b-1_arm.ipk.
Installing zlib (1.2.5-1) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable//zlib_1.2.5-1_arm.ipk.
Configuring gdbm.
Configuring zlib.
Configuring libid3tag.
Configuring mt-daapd.
To complete this installation, make any necessary changes
to the config file in /opt/etc/mt-daapd/mt-daapd.conf, and
start the daemon by running /opt/etc/init.d/S60mt-daapd
Collected errors:
* opkg_conf_parse_file: /etc/opkg/opkg.conf:9: Ignoring invalid line: `cache /opt/cache '
* extract_archive: Cannot create symlink from ./opt/lib/libgdbm.so to 'libgdbm.so.3.0.0': Operation not permitted.
* extract_archive: Cannot create symlink from ./opt/lib/libgdbm.so.3 to 'libgdbm.so.3.0.0': Operation not permitted.
* extract_archive: Cannot create symlink from ./opt/lib/libgdbm_compat.so to 'libgdbm_compat.so.3.0.0': Operation not permitted.
* extract_archive: Cannot create symlink from ./opt/lib/libgdbm_compat.so.3 to 'libgdbm_compat.so.3.0.0': Operation not permitted.
* extract_archive: Cannot create symlink from ./opt/lib/libid3tag.so to 'libid3tag.so.0.3.0': Operation not permitted.
* extract_archive: Cannot create symlink from ./opt/lib/libid3tag.so.0 to 'libid3tag.so.0.3.0': Operation not permitted.
* extract_archive: Cannot create symlink from ./opt/lib/libz.so to 'libz.so.1.2.5': Operation not permitted.
* extract_archive: Cannot create symlink from ./opt/lib/libz.so.1 to 'libz.so.1.2.5': Operation not permitted.
any idea... why this is happening?? after a fresh firmware flash I did:
SSH to snake
1. rm /etc/opkg/opkg.conf
2. echo "
#================opkg.conf===============
#destination of install
dest root /
#source of packages
src/gz optware_unst http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable/
#download cache directory (to make sure that opkg upgrade
#does notbreak system because of an unstable connection) option
cache /opt/cache
#============================== ">> /etc/opkg/opkg.conf
3. save config
4. reboot
5. activate opkg service on sda1
connect via ssh
6. PATH=/opt/bin:/usr/bin:/usr/sbin:/bin:/sbin
7. export PATH
8. LD_LIBRARY_PATH=/opt/lib
9. export LD_LIBRARY_PATH
10.mkdir /opt/tmp
11.opkg-cl update -t /opt/tmp
and then I tried to install the mt-daapd package....
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: mkhom...@googlemail.com
Seems to be my Error:
Please try this!
SSH to snake
1. rm /etc/opkg/opkg.conf
2. echo "
#================opkg.conf===============
#destination of install
dest root /
#source of packages
src/gz optware_unst http://ipkg.nslu2-linux.org/feeds/optware/dns323/cross/unstable/
#download cache directory (to make sure that opkg upgrade
#does not break system because of an unstable connection)
option cache /opt/cache
#============================== ">> /etc/opkg/opkg.conf
3. save config
4. reboot
5. activate opkg service on sda1
connect via ssh
6. PATH=/opt/bin:/usr/bin:/usr/sbin:/bin:/sbin
7. export PATH
8. LD_LIBRARY_PATH=/opt/lib
9. export LD_LIBRARY_PATH
10.mkdir /opt/tmp
11.mkdir /opt/cache
12.opkg-cl update -t /opt/tmp
13.opkg-cl install python27 -t /opt/tmp
14.python !!! Now I had python shell.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: mkhom...@googlemail.com
I had a problem with /opt/bin/update-alternatives, chmodded it to 777 then it ran!