You Are Here:

Community: Developer Discussion Boards

Reply « Previous Thread | Next Thread »

#1 Old Ensymble simplesis - 2008-03-24, 13:07

Join Date: Oct 2007
Posts: 23
Chiara81000's Avatar
Chiara81000
Offline
Registered User
Hi all,
I need to do the SIS file of a folder. I've used this code:

Code:
ensymble.py simplesis --version=1.0.0 --caption="myfolder" --drive=C MyFolder
my application needs to be signed, so I went here and I followed the procedure to sign it. Untill here all went ok. But then, when I tried to install it on the phone, I couldn't because it said that the file was corrupted. Where Was I wrong?
Can anyone help me? It's my first time with the "simplesis" of Ensymble!!!

Chiara
Reply With Quote

#2 Old Re: Ensymble simplesis - 2008-03-24, 13:22

Join Date: Oct 2007
Posts: 2,841
Location: Deva, Romania
bogdan.galiceanu's Avatar
bogdan.galiceanu
Offline
Forum Nokia Champion
Quote:
Originally Posted by Chiara81000 View Post
Hi all,
I need to do the SIS file of a folder. I've used this code:

Code:
ensymble.py simplesis --version=1.0.0 --caption="myfolder" --drive=C MyFolder
my application needs to be signed, so I went here and I followed the procedure to sign it. Untill here all went ok. But then, when I tried to install it on the phone, I couldn't because it said that the file was corrupted. Where Was I wrong?
Can anyone help me? It's my first time with the "simplesis" of Ensymble!!!

Chiara
Is that the exact code you used to create the sis file? Because you forgot the uid (for example --uid=0x01234567). That may be why you get the "file corrupted" message, but I'm not sure.
Last edited by bogdan.galiceanu : 2008-03-24 at 15:04.
Reply With Quote

#3 Old Re: Ensymble simplesis - 2008-03-24, 17:37

Join Date: Oct 2007
Posts: 23
Chiara81000's Avatar
Chiara81000
Offline
Registered User
Quote:
Originally Posted by bogdan.galiceanu View Post
Is that the exact code you used to create the sis file? Because you forgot the uid (for example --uid=0x01234567). That may be why you get the "file corrupted" message, but I'm not sure.
I've tried with the --uid and now even though the installation is succefull, I cannot see the application in the application list. Any other idea?

Chiara
Reply With Quote

#4 Old Re: Ensymble simplesis - 2008-03-24, 17:58

Join Date: Oct 2007
Posts: 2,841
Location: Deva, Romania
bogdan.galiceanu's Avatar
bogdan.galiceanu
Offline
Forum Nokia Champion
Quote:
Originally Posted by Chiara81000 View Post
I've tried with the --uid and now even though the installation is succefull, I cannot see the application in the application list. Any other idea?

Chiara
I assume you used "simplesis" to package a folder in order to ...install it on the phone. What you did was the equivalent of transferring the content of the folder to the C drive of your phone. There was no real application installation and therefore no application appears in the menu.
Again, that's what I think happened. If you did something else, please correct me (this is the first time I've used simplesis )
Reply With Quote

#5 Old Re: Ensymble simplesis - 2008-03-24, 18:22

Join Date: Feb 2008
Posts: 2,542
Location: Bhavnagar, Gujarat, India
Send a message via Yahoo to gaba88 Send a message via Skype™ to gaba88
gaba88's Avatar
gaba88
Offline
Forum Nokia Champion
Quote:
Originally Posted by Chiara81000 View Post
Hi all,
I need to do the SIS file of a folder. I've used this code:

Code:
ensymble.py simplesis --version=1.0.0 --caption="myfolder" --drive=C MyFolder
my application needs to be signed, so I went here and I followed the procedure to sign it. Untill here all went ok. But then, when I tried to install it on the phone, I couldn't because it said that the file was corrupted. Where Was I wrong?
Can anyone help me? It's my first time with the "simplesis" of Ensymble!!!

Chiara
hi chiara
can u tell me in what phone you r installing the sis of your application.


Gargi Das- http://gargidas.blogsot.com

Forum Nokia Python Wiki


Learn Python at http://mobapps.org/PyS60
Reply With Quote

#6 Old Re: Ensymble simplesis - 2008-03-25, 08:34

Join Date: Oct 2007
Posts: 23
Chiara81000's Avatar
Chiara81000
Offline
Registered User
Quote:
Originally Posted by gaba88 View Post
hi chiara
can u tell me in what phone you r installing the sis of your application.
it's a Nokia N95.
Chiara
Reply With Quote

#7 Old Re: Ensymble simplesis - 2008-03-25, 11:05

Join Date: Oct 2007
Posts: 23
Chiara81000's Avatar
Chiara81000
Offline
Registered User
Hi!
I've still got problems with my file sis. I have a mobile phone N95 with the following installed:
  • PythonForS60_1_4_1_3rdEd
  • lightblue-0.2.2-s60-3rdEd

I'm following this procedure: simplesis - py2sis - mergesis

Code:
ensymble.py simplesis --uid=0x1fffffff --version=1.0.0 --caption="MyApp" --drive=C MyApp/ myapp.sis

ensymble.py py2sis --drive=C MyApp

ensymble.py mergesis MyApp_v1_0_0.sis myapp.sis final_v_1_0_0.sis
Then I sign final_v_1_0_0.sis on symbiansigned.
Then I installed the application but it doesn't work well. it stops on the lightblue command that I use. (the lightblue module is installed on C: like all the other things)

Can someone help me?
Chiara
Reply With Quote

#8 Old Re: Ensymble simplesis - 2008-03-25, 13:58

Join Date: Oct 2007
Posts: 23
Chiara81000's Avatar
Chiara81000
Offline
Registered User
None can help me??? I give you more information!
When I create the sis files, I got these errors:

Code:
C:\Ensymble>ensymble.py simplesis --uid=0x1fffffff --version=1.0.0 --caption="MyApp" --drive=C MyApp/ myapp.sis
ensymble.py: warning: no certificate given, using insecure built-in one
ensymble.py: warning: UID is in the protected range (0x00000000 - 0x7ffffff)

C:\Ensymble>ensymble.py py2sis --drive=C MyApp
ensymble.py: warning: no application version given, using 1.0.0
ensymble.py: warning: no UID given, using auto-generated test UID 0xe9de0147
ensymble.py: warning: no certificate given, using insecure built-in one

C:\Ensymble>ensymble.py mergesis --cert=n95.cer --privkey=key.key --passphrase=password MyApp_v1_0_0.sis myapp.sis FINAL_SIGNED.sis
ensymble.py: warning: removing old signatures from the first input SIS file
Can someone help to understand these errors?

Chiara

PS: the result of the first step (simplesis) is myapp.sis with the structure of the folder MyApp. The result of the second step (py2sis) is MyApp_v1_0_0.sis.
Reply With Quote

#9 Old Re: Ensymble simplesis - 2008-03-25, 14:51

Join Date: Dec 2007
Posts: 134
Location: India
kandyfloss's Avatar
kandyfloss
Offline
Regular Contributor
Hi,

There is no problem with the 2 steps.
The 3rd step where you merge the file the signature of the 1st files are removed, as shown below
Code:
ensymble.py: warning: removing old signatures from the first input SIS file
So The created final file is unsigned.

Sign the file that you got from the 3rd step using signsis of ensymble.

Hopefully you wont have that error when you install this on the device.


Kandyfloss

V 7.0642.0
18-10-06
RH-51
Nokia 7610
Reply With Quote

#10 Old Re: Ensymble simplesis - 2008-03-26, 13:46

Join Date: May 2004
Posts: 524
Location: Tampere, Finland
jethro.fn's Avatar
jethro.fn
Offline
Forum Nokia Champion
Quote:
Originally Posted by Chiara81000 View Post
I'm following this procedure: simplesis - py2sis - mergesis
Simplesis and mergesis are not used in this case. Just create a SIS file with py2sis, send it to Open Signed Online and install it. Simplesis is an advanced command to create any kinds of SIS files. Making a Python application with simplesis requires some manual work and knowledge about Symbian internals. Better use the py2sis command of Ensymble, which does all that automatically.

Quote:
Originally Posted by Chiara81000 View Post
Code:
ensymble.py simplesis --uid=0x1fffffff --version=1.0.0 --caption="MyApp" --drive=C MyApp/ myapp.sis

ensymble.py py2sis --drive=C MyApp

ensymble.py mergesis MyApp_v1_0_0.sis myapp.sis final_v_1_0_0.sis
Problems spotted:
  • 0x1fffffff is not a real UID. Get a good one from www.symbiansigned.com.
  • Simplesis cannot be used like this, unless MyApp is a complete installable tree (I doubt it, as you later call py2sis on it).
  • No capabilities are given. Bluetooth connections require at least LocalServices, possibly even NetworkServices.
  • Mergesis is a completely wrong thing to do here...

Try this:

Code:
ensymble.py py2sis --uid=<MYUIDFROMSYMBIANSIGNED> --caps=LocalServices+NetworkServices --version=1.0.0 --caption="MyApp" --drive=C MyApp
Reply With Quote

#11 Old Re: Ensymble simplesis - 2008-03-27, 17:33

Join Date: Oct 2007
Posts: 23
Chiara81000's Avatar
Chiara81000
Offline
Registered User
Quote:
Originally Posted by jethro.fn View Post
Simplesis and mergesis are not used in this case. Just create a SIS file with py2sis, send it to Open Signed Online and install it. Simplesis is an advanced command to create any kinds of SIS files. Making a Python application with simplesis requires some manual work and knowledge about Symbian internals. Better use the py2sis command of Ensymble, which does all that automatically.

Problems spotted:
  • 0x1fffffff is not a real UID. Get a good one from www.symbiansigned.com.
  • Simplesis cannot be used like this, unless MyApp is a complete installable tree (I doubt it, as you later call py2sis on it).
  • No capabilities are given. Bluetooth connections require at least LocalServices, possibly even NetworkServices.
  • Mergesis is a completely wrong thing to do here...

Try this:

Code:
ensymble.py py2sis --uid=<MYUIDFROMSYMBIANSIGNED> --caps=LocalServices+NetworkServices --version=1.0.0 --caption="MyApp" --drive=C MyApp
Thank you very much for the help! If I do like you say, do I need to use the relative paths in the default.py?
I used simplesis because i wanted to transfer the content of a folder under C: so that then I can refer to the files inside this folder using absolute paths. (It's because I try with the relative paths but I couldn't).

Another question is: I need to use the mergesis if I want to incorporate also Python for s60 and lightblue in my final sis file, don't I?

I have tried (before you answered me) to meke the first two steps I told you: 1) simplesis and then sign the resultant sis with all the capabilities i need; 2) py2sis and sign it. Then I've installed both on the mobile and then the application has worked. Was it luck? The problem is that i would like to have only one unsigned SIS file that I could go and sign on symbiansigned.com

Thank you very much for the help!
I hope you can help me more
Chiara
Reply With Quote

#12 Old Re: Ensymble simplesis - 2008-03-27, 20:20

Join Date: May 2004
Posts: 524
Location: Tampere, Finland
jethro.fn's Avatar
jethro.fn
Offline
Forum Nokia Champion
Quote:
Originally Posted by Chiara81000 View Post
If I do like you say, do I need to use the relative paths in the default.py?
I used simplesis because i wanted to transfer the content of a folder under C: so that then I can refer to the files inside this folder using absolute paths. (It's because I try with the relative paths but I couldn't).
The files inside MyApp reside under C:\private\<uid>\ (or E:\private\<uid>\). If your application is always installed to drive C, this is one possibility:

Code:
...

import sys

...

SYMBIAN_UID = 0x12345678
SIS_VERSION = "1.0.0"

...

DATADIR = "C:\\private\\%08x\\" % SYMBIAN_UID

try:
    f = open(sys.path.join(DATADIR, "mydata.dat"))
    s = f.read()
    ...
finally:
    f.close()

...
There are more elegant solutions which take the installation drive into account. I remember seeing posts on this forum but cannot remember a specific search term to try.

Quote:
Originally Posted by Chiara81000 View Post
Another question is: I need to use the mergesis if I want to incorporate also Python for s60 and lightblue in my final sis file, don't I?
Yes. This is the purpose of the mergesis command. You can include SIS files which have greater capabilities than your own application, just make sure you put your own application SIS filename first on the mergesis command line. The first SIS on the command line will lose its original signature, other SIS files will be included as-is. This is why it is possible to bundle even the PyS60 SIS, even though it has been signed with more capabilities than are available to normal application developers.

Quote:
Originally Posted by Chiara81000 View Post
I have tried (before you answered me) to meke the first two steps I told you: 1) simplesis and then sign the resultant sis with all the capabilities i need; 2) py2sis and sign it. Then I've installed both on the mobile and then the application has worked. Was it luck?
No, but every file was present two times in the resulting SIS file. Once under C:\MyApp and once under C:\private\<uid>\. This is wasted space. Earlier you said:

Quote:
Originally Posted by Chiara81000 View Post
Then I installed the application but it doesn't work well. it stops on the lightblue command that I use.
This was a capability problem.
Reply With Quote

#13 Old Re: Ensymble simplesis - 2008-04-15, 23:34

Join Date: Feb 2008
Posts: 12
IreStep
Offline
Registered User
Hello,

i have one python script that i want to use.. i have this signed from open signed online.

However this script calls other scripts and creates databases during its lifetime. How can i successfully have all the files and images i need made into one sis file ? is there a step by step procedure i can follow.. im only new to ensymble too.

Any help appreciated thank you
Reply With Quote

#14 Old Re: Ensymble simplesis - 2008-04-16, 09:44

Join Date: May 2004
Posts: 524
Location: Tampere, Finland
jethro.fn's Avatar
jethro.fn
Offline
Forum Nokia Champion
Quote:
Originally Posted by IreStep View Post
However this script calls other scripts and creates databases during its lifetime. How can i successfully have all the files and images i need made into one sis file ?D
If you give a directory to Ensymble's py2sis command, all the files in the directory are put in the SIS file. You can then find these files in the application's private directory, when the SIS file is installed on the phone.
Reply With Quote

#15 Old Re: Ensymble simplesis - 2008-04-17, 21:18

Join Date: Feb 2008
Posts: 12
IreStep
Offline
Registered User
Hi Jethro,

Thank you for help. is it only full drives that i can do??

This works fine and creates a sis (but its of my entire c drive on laptop!!

Code:
python ensymble.py py2sis -caps=location+readuserdata+readdevicedata --version=0.0.1 --drive=C mytestsis.sis
it generates auto uid etc.

then if i try this

Code:
python ensymble.py py2sis -caps=location+readuserdata+readdevicedata --version=0.0.1 --drive=C:\Python25 mytestsis.sis
no luck!!

So i cant use subfolders too
Reply With Quote
Reply « Previous Thread | Next Thread »
Display Modes
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Rate This Thread
Rate This Thread:

Posting Rules

You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump
Similar Threads
Thread Thread Starter Forum Replies Last Post
[announce] Ensymble v0.26 jethro.fn Python 7 2008-03-15 17:35
[announce] Ensymble v0.25 jethro.fn Python 12 2008-01-05 20:34
Custom icon with ensymble 'simplesis' command janekw_ Python 2 2007-10-26 13:42
Ensymble vs PyS60 v1.4 jking_ok Python 5 2007-07-16 08:17
[announce] Ensymble v0.22 jethro.fn Python 2 2007-02-15 19:41

Rate This

 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditDiigoTechnocratiTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
京ICP备05048969号    Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia