Tiny Core Linux
Tiny Core Extensions => TCE Q&A Forum => Topic started by: zab on June 13, 2010, 07:50:33 PM
-
Hi,
I've setup a private extensions server at:
[removed]
Here's the content of my "/op/tcemirror":
$ cat /op/tcemirror
http://distro.ibiblio.org/pub/linux/distribution/tinycorelinux/
[removed]
Following the doc at "http://wiki.tinycorelinux.com/Local_appbrowser_server", I'm still unable
to get my TCL (v2.11.3) aware of this new extensions server!
Trying to install my "ruby-rake" new extension failed miserably:
$ tce-load -wi ruby-rake
Downloading: ruby-rake.tcz
wget: server returned error: HTTP/1.1 404 Not Found
Connecting to distro.ibiblio.org (152.46.7.109:80)
wget: server returned error: HTTP/1.1 404 Not Found
md5sum: ruby-rake.tcz.md5.txt: No such file or directory
What am i doing wrong?
Regards
Zab
[^thehatsrule^: removed links, extensions policy]
-
Unless a change has slipped in somewhere without me noticing, TC is only ever aware of one mirror at a time, so there should only be one line in your tcemirror.
-
Ok. So how to solve my problem?
I'd like to have a personal extensions server. Is this impossible with TCL?
-
Did you try what althalus suggested?
-
of course it works (and thanks by the way).
But still can't understand why one mirror only in that file?
I mean, how can I do to get my repository visible in "AppBrowser -> Mirrors" list?
-
Currently, it gets grabbed from our main mirror. You may want to check out the source code (see src/fltk_projects/appbrowser).
-
Found the code:
command = "busybox wget -cq ftp://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/2.x/tcz/mirrors.lst";
int results = system(command.c_str());
window->cursor(FL_CURSOR_DEFAULT);
Fl::flush();
if ( results == 0)
{
brw_select->load("mirrors.lst");
box_select->label("Select Mirror");
box_select->activate();
system("rm mirrors.lst");
As you can see, the last expression removes the file "system("rm mirrors.lst")" after loading it.
I can easily patch "appbrowser" and add my private repo before "mirrors.lst" gets removed.
But this isn't elegant in my opinion! I'll have to maintain this custom "appbrowser" after each change from TCL team!
What you could suggest guys (the clean way to do it) to get my private repo in this list?
-
Based on althalus' answer:
couldn't you add
echo "http://1.2.3.4/tcemirror/" > /opt/tcemirror
to bootlocal.sh??
1.2.3.4 is the ip of your server
\\Batnas
-
Based on althalus' answer:
couldn't you add
Code:
echo "http://1.2.3.4/tcemirror/" > /opt/tcemirror
to bootlocal.sh??
1.2.3.4 is the ip of your server
As I said ... it works, but temporarily. As soon as I change the mirror in AppBrowser,
the content of "/opt/tcemirror" is overwrited.
Moreover, could you please clarify something!
Suppose one of my extension depends, lets say on "compiletc" (which is provided in the main TCL repo).
Could this dependency on "compiletc" be resolved by AppBrowser (and other tce-load)?
-
Based on althalus' answer:
couldn't you add
Code:
echo "http://1.2.3.4/tcemirror/" > /opt/tcemirror
to bootlocal.sh??
1.2.3.4 is the ip of your server
As I said ... it works, but temporarily. As soon as I change the mirror in AppBrowser,
the content of "/opt/tcemirror" is overwrited.
My idea was to write the new mirror to the mirror-file at boot (using bootlocal.sh).
That way you would never have to change it manually in appbrowser.
Moreover, could you please clarify something!
Suppose one of my extension depends, lets say on "compiletc" (which is provided in the main TCL repo).
Could this dependency on "compiletc" be resolved by AppBrowser (and other tce-load)?
I am not quite sure I know, what you mean. I understand your question this way:
You are not sure whether deps are downloaded from your mirror.
If that is the question, the answer will be: They are downloaded from your mirror as well as the "main"-axtension
\\Batnas
-
My idea was to write the new mirror to the mirror-file at boot (using bootlocal.sh).
That way you would never have to change it manually in appbrowser.
Excatly what I did, thanks again!
"althalus" explained that "/etc/tcemirror" should contains only one entry(in my case, my private extensions server address).
But this solve half of my problem. As soon as you change the mirror in AppBrowser, it overrides the actual content of "/etc/tcemirror". In this case, I should reboot my box to get back "/etc/tcemirror" with my private repo address.
Am I right?
I am not quite sure I know, what you mean. I understand your question this way:
Sorry about not being clear.
You are not sure whether deps are downloaded from your mirror.
If that is the question, the answer will be: They are downloaded from your mirror as well as the "main"-extension
This is the behaviour I've expected.
-
If you have the correct mirror written to /opt/tcemirror by bootlocal.sh, why would you change it in appbrowser??
When i try to write a new mirror to /opt/tcemirror, appbrowser starts with the mirror specified.
-
If you have the correct mirror written to /opt/tcemirror by bootlocal.sh, why would you change it in appbrowser??
For a simple reason. Imagine you're looking for an extension in the main repo. You open Appbrowser and change to the main mirror to start your search. And thus, you immediatly loose your private repo.
When i try to write a new mirror to /opt/tcemirror, appbrowser starts with the mirror specified.
Yes, no problem with that.
-
Appbrowser works with one, and only one mirror at a time.
It does not start with one mirror, and then fall back to another.
If you want to use a local mirror, and want to browse all packages,
then you need to be sure the local mirror is complete.
-
Appbrowser works with one, and only one mirror at a time.
It does not start with one mirror, and then fall back to another.
If you want to use a local mirror, and want to browse all packages,
then you need to be sure the local mirror is complete.
Much clear. Thanks!
-
Search in AppBrowser don't work.
If set extension in frame "Select Extention" and put "Go" all installing fine. But if write extension name in "Search" and press Enter, frame "Select Extention" clear and that's it.
What's the problem?
-
Hi buts77
If the extension does not exist in the repository, then there is nothing to list in the frame.
What did you enter in the search field?
-
What did you enter in the search field?
In search field i enter: "mc", "firefox", "fluff", ...
mc.tcz found in frame "Select Extention". If select mc.tcz and click "Go", Midnight Commander begins to download, install, and works well. Other programs too.
But if i enter "mc.tcz" in search field and press Enter, frame "Select Extention" clear and then need click "Connect" to show tcz list again.
-
After connecting to the Internet search starts normally.
tc@box:~$ cat /opt/tcemirror
http://192.168.1.10/tinycorelinux/
Why the search does not work without Internet?
-
The search is not done on the local mirror unfortunately, but on the master.
-
Hi buts77
In search field i enter: "mc", "firefox", "fluff", ...
You can only search for one extension at a time.
But if i enter "mc.tcz" in search field and press Enter, frame "Select Extention" clear and then need click "Connect" to show tcz list again.
I just tried that under TC4.1 and it works as expected. Maybe someone else running the current version can
verify that the behavior of AppBrowsers search function has not changed.
-
The search is not done on the local mirror unfortunately, but on the master.
In last version tynycore 4.7 too?
-
I just tried that under TC4.1 and it works as expected.
Under TC4.1 search works from local mirror without Internet connection?
-
Hi buts77
Sorry, no. I didn't realize that AppBrowser defaults to using the master.