Notices


Reply
Thread Tools
Posts: 451 | Thanked: 334 times | Joined on Sep 2009
#1
I'm trying to accomplish the following simple task:

Install a local file from a local repository on the N900 without root access, i.e. without the rootsh package install.

This in order to be able to install exactly the rootsh locally after a reflash, when not having web access.

I.e. I wanna have the rootsh on the SD card, and via a rootsh.install file, click on it in file manager, and have it install the app from the local location.

I've created the local Packages list with dpkg-scanpackages etc, but am having probs getting the package to install from a rootsh.install file. I'm currently using:

[install]
catalogues = test
package = rootsh

[extras]
name = test
uri = file:/media/mmc1/install/test/
dist = /

As the text, guess the prob is somewhere in this file. The deb and the Packages file is in the /media/mmc1/install/test dir.

I'm sure I'll get it done with further experimentation, but in case anyone can do it, please chime in on how to do it...
 
Posts: 1,224 | Thanked: 1,763 times | Joined on Jul 2007
#2
I think the uri should be file:///media/mmc1/install/test/

You should replace [extras] with [test] (the same name as in the [install] section).

Maybe you should first try with apt-get install, in order to get useful error messages.
__________________
My repository

"N900 community support for the MeeGo-Harmattan" Is the new "Mer is Fremantle for N810".

No more Nokia devices for me.
 
Posts: 451 | Thanked: 334 times | Joined on Sep 2009
#3
Yeah [extras] should be [test], thanks.

Other than that so far nothing, I've tried with file:/// with file:/ ...

Interestingly via apt-get I was able to install the file after adding the local repository, however through the clickable interface, I get a cannot-locate-file error, WTF...
 
Posts: 451 | Thanked: 334 times | Joined on Sep 2009
#4
Hmm, it seems installing rootsh is not necessary at all in order to gain root access on clean flash without a web connection, as `root' from the rootsh package just calls exec sudo gainroot --use-su

As the postrm of the package is improper though and doesn't restore the original /usr/sbin/gainroot after removal, I can't confirm what the original contents of gainroot are before rootsh is installed, as when you install/deinstall/install rootsh the /usr/sbin/gainroot.orig gets overwritten.

Does anyone know the text of /usr/sbin/gainroot before rootsh is installed? Or /usr/sbin/gainroot.orig after rootsh installation in case you didn't install it a second time, or apt-get upgraded it, as the .orig gets overwritten?

Am I right in assuming that even on clean flash I can exec at least `exec sudo gainroot' and get root access so I can manipulate local apt-repositories then etc.?

I take it back: the prerm script of rootsh is fine...

Last edited by 白い熊; 2010-01-25 at 10:23.
 
Posts: 355 | Thanked: 566 times | Joined on Nov 2009 @ Redstone Canyon, Colorado
#5
Can't you do something like:

Code:
hildon-application-manager-config add rootsh.install
There's hildon-application-manager-util too. Good luck
 
Posts: 451 | Thanked: 334 times | Joined on Sep 2009
#6
I get
Code:
rootsh.install: Error on line 1 char 1: Document must begin with an element (e.g. <book>)
/etc/hildon-application-manager/settings: Permission denied
So it seems it expects not the .install file syntax, but maybe xml or something, however more importantly it'll not do it as user in any case...

My bad now, I've copied some problematic Packages file there, checking with the proper one momentarily...

OK fixed, the error is the same.

Furthermore hildon-application-manager-util seems also to require root privileges.

Last edited by 白い熊; 2010-01-25 at 11:01.
 
Posts: 451 | Thanked: 334 times | Joined on Sep 2009
#7
Hmmm, this has really gotten me busting my brains now, WTF.

I've created a local pool with two deb packs, one is rootsh and one I've called puf, whereby just copied the rootsh and renamed it etc and renamed the binary from root to puf, and deleted the other rootsh binary - reason below...

Now, the Packages file:
Code:
Package: puf
Version: 0.1
Architecture: all
Maintainer: Faheem Pervez <trippin1@gmail.com>
Depends: sudo
Filename: ./puf_0.1_all.deb
Size: 688
MD5sum: ece114b21f8e5f9a7eb261f9596e9868
SHA1: 68f1daf724ab546cc9eb6e1982c9cb88ce03e084
SHA256: e3dd505d1098f23240ac10f791fd8d0039c6a7bb56e882475f6ad3e11edb707b
Section: user/system
Priority: optional
Description: Puf puf

Package: rootsh
Version: 1.8-1
Architecture: all
Maintainer: Faheem Pervez <trippin1@gmail.com>
Installed-Size: 32
Depends: sudo
Conflicts: rootsh (<= 1.5), becomeroot, easyroot, GodMode
Replaces: becomeroot, easyroot, GodMode
Provides: becomeroot, easyroot, GodMode
Filename: ./rootsh_1.8-1_all.deb
Size: 1440
MD5sum: ae34d36f802dc1c2f9e31479a0a08c4e
SHA1: e2992f7f08b0e3dc259f629e10464ecd1df1bb08
SHA256: bb238fc328b5cdc4f02bd093399741d3f3fb541e664f86cae092d7e17d9b35f0
Section: user/system
Priority: optional
Description: Enable root access, via the "sudo gainroot" command
 "sudo gainroot" will work without requiring you to enable R&D mode.
rootsh.install
Code:
[install]
catalogues = jj-local-pool
package = rootsh

[jj-local-pool]
name = jj-local-pool
uri = file:///media/mmc1/install/jj-local-pool/
dist = /
puf.install
Code:
[install]
catalogues = jj-local-pool
package = puf

[jj-local-pool]
name = jj-local-pool
uri = file:///media/mmc1/install/jj-local-pool/
dist = /
Now, if I click the puf.install, it'll ask about adding the repository and then it'll install the local file.

If I click the rootsh.install, it'll ask about adding the repository and then bomb with:
Code:
Unable to download 'rootsh'.
Application package not found.
WTF, how could this be?

If I go through apt-get both install fine. But obviously, if there's no root access, there won't be the ability to use apt-get.

I'm thinking it has to be something trivial but I can't get over this...

Any thoughts?
 
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 03:47.