WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: tc-ext-tools: A package build system for Tiny Core Linux  (Read 21150 times)

Offline Guy

  • Hero Member
  • *****
  • Posts: 1089
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #45 on: May 25, 2012, 09:40:25 AM »
Hi Arslan S

Keep up the great contributions.

I know it will take some time to update all of the apps.

However, when you have time, I would appreciate it if you can get Network Manager working properly, so mobile broadband modems can be connected to the internet.

I have had the front end working, but there is something else not working properly. I experimented for a while, but don't have unlimited time. I now use Linux Mint, as I can connect to the internet with it.

The most people with wireless broadband modems have been unable to connect to the internet with Tinycore, so they now use other operating systems.
Many people see what is. Some people see what can be, and make a difference.

Offline AmatCoder

  • Full Member
  • ***
  • Posts: 179
    • AmatCoder Projects
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #46 on: May 25, 2012, 01:59:12 PM »
hello tc people i am back on track after about 6 months away.
planning mass update of extensions starting from mostly anticipated ones such as chromium, midori, minitube, vlc etc.
Welcome back, Arslan!  :D

A lot of work awaits you... ;)

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 10165
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #47 on: May 26, 2012, 01:48:08 AM »
Enjoy your freedom. I know I was ready for retirement when I got out.
The only barriers that can stop you are the ones you create yourself.

Offline solorin

  • Full Member
  • ***
  • Posts: 184
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #48 on: June 01, 2012, 04:40:57 PM »
Hi,

Just a few quick queries if I may.
Is there an easy way to create dummy packages;
meaning empty packages with dependency files that aren't?
I'm trying to update a package and also split it into more sensible units.
I'd like to provide a dummy package that has the newly split packages as dependencies
so that it doesn't break other things that depend on it currently.

I can probably figure it out by hand if there isn't an easy way to do this.

Also, I'm packaging a lot of stuff without configure scripts, projects that would have you edit the Makefiles by hand. Is there an automatic way to append the proper CFLAGS/CXXFLAGS/LDFLAGS onto the right line in the Makefile?

Relatedly, any tips on  handling qmake gracefully would be appreciated.

Still think it's great work. I'm having a blast making extensions again.
cheerio.
« Last Edit: June 01, 2012, 06:10:38 PM by solorin »
. . . if you don't know, now you know. . .
        ----- R.I.P. Biggie Smalls -----

Offline Arslan S.

  • Hero Member
  • *****
  • Posts: 825
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #49 on: June 02, 2012, 02:01:37 AM »
1-) see kde4-desktop as an example to create a meta-package using tc-ext-tools
http://tc-ext-tools.googlecode.com/svn/packages/KDE4/kde4-desktop/
it is just like creating any other package just remove the unnecessary rules like patch, configure, compile, strip

2-) I will work on supporting packages with meta-extension as you call dummy extension (empty tcz) that includes others as dep
Edit: It is completed. See latest revision.
install file for an emtpy tcz should be:
Code: [Select]
x-or
Code: [Select]
x-.
3-) CFLAGS, CXXFLAGS, CPPFLAGS, LDFLAGS  are usually environment variables exported prior to configure if there is no configure then you can try
make CFLAGS="$CFLAGS -I/path/to/include" LDFLAGS="$LDFLAGS -L/path/to/lib -lfoo"
but you may have to patch Makefile sometimes

4-) qmake is actually a very simple tool for configuring applications using qt
a typical way of building with qmake is as follows:
Code: [Select]
qmake PREFIX=/usr/local
make
make install

the input file is a qt project file of type .pro see qmake tutorial
http://qt-project.org/doc/qt-4.8/qmake-tutorial.html

also see
https://tc-ext-tools.googlecode.com/svn/packages/musique/build
https://tc-ext-tools.googlecode.com/svn/packages/minitube/build
http://tc-ext-tools.googlecode.com/svn/packages/qps/build
« Last Edit: June 02, 2012, 03:04:03 AM by Arslan S. »

Offline AmatCoder

  • Full Member
  • ***
  • Posts: 179
    • AmatCoder Projects
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #50 on: June 02, 2012, 08:10:29 AM »
Also, I'm packaging a lot of stuff without configure scripts, projects that would have you edit the Makefiles by hand. Is there an automatic way to append the proper CFLAGS/CXXFLAGS/LDFLAGS onto the right line in the Makefile?

You can use sed command...See: http://tc-ext-tools.googlecode.com/svn/packages/crypto++/build Here I comment out CXXFLAGS that comes with GNUmakefile, but we also can replace it with our CXXFLAGS.

Offline solorin

  • Full Member
  • ***
  • Posts: 184
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #51 on: June 03, 2012, 12:27:05 AM »
wow. thank you both for the helpful replies.

Arslan, the latest revision does indeed create a meta-extension easily.
thank you.

however, tc seems to choke on loading it.

Code: [Select]
$tce-load -i meta-extension
mount: mounting /dev/loop21 on /tmp/tcloop/meta-extension failed: Invalid argument

did i misuse the tool?

cheerio,
solorin
« Last Edit: June 03, 2012, 12:56:09 AM by solorin »
. . . if you don't know, now you know. . .
        ----- R.I.P. Biggie Smalls -----

Offline Arslan S.

  • Hero Member
  • *****
  • Posts: 825
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #52 on: June 03, 2012, 01:02:54 AM »
no you don't misuse the tool it is mount's fault. mounting empty extension fails.
tce-load unmounts empty extension to save a loop device but it fails due to this failure

Code: [Select]
mkdir empty
mksquashfs empty empty.tcz
mkdir /mnt/test
mount empty.tcz /mnt/test -t squashfs -o loop,ro,bs=4096
mount: mounting /dev/loop243 on /mnt/test failed: Invalid argument

Offline solorin

  • Full Member
  • ***
  • Posts: 184
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #53 on: June 03, 2012, 01:16:03 AM »
which means we should place a stub file in meta-extensions?
like in compiletc.tcz?

thanks again.
sorry for making a feature request without fully understanding the implications.
« Last Edit: June 03, 2012, 01:18:11 AM by solorin »
. . . if you don't know, now you know. . .
        ----- R.I.P. Biggie Smalls -----

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 10165
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #54 on: June 03, 2012, 01:57:26 AM »
Yes, the kernel behavior changed, now squashfs needs something. Please use a /usr dir or similar.
The only barriers that can stop you are the ones you create yourself.

Offline Arslan S.

  • Hero Member
  • *****
  • Posts: 825
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #55 on: June 03, 2012, 02:28:01 AM »
yes creating a directory does the trick but tce-load needs update for empty extensions

replacing ls with find in tce-load
Code: [Select]
---[ -z "`ls /mnt/test/$APP`" ] && EMPTYEXT=1
+++[ -z "`find /mnt/test/$APP -not -type d`" ] && EMPTYEXT=1

is there a way to terminate find after the first object found ?

or a recursive scan using ls command
« Last Edit: June 03, 2012, 02:45:53 AM by Arslan S. »

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 10165
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #56 on: June 03, 2012, 02:42:49 AM »
"find $dir -mindepth 1 -maxdepth 2 | wc -l" > 1 ?
The only barriers that can stop you are the ones you create yourself.

Offline Onyarian

  • Sr. Member
  • ****
  • Posts: 336
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #57 on: June 13, 2012, 03:27:12 PM »
I am proving the tc-ext-tools and in all the three test packages I become the same results:

Quote
tc@box:/mnt/sda2/tc-ext-tools/packages/pcsc-tools$ buildit
Building the package pcsc-tools started at 22:14:09
Cleaning the package pcsc-tools files and directories ... successful!
Loading the package pcsc-tools build dependencies ... successful!
The package pcsc-tools source is already converted.
Unpacking the package pcsc-tools source ... successful!
Patching the package pcsc-tools source ... successful!
Compiling the package pcsc-tools ... successful!
You must compile it first!

even I make the corrections from AmatCoder
Quote
Basically, you can modify buildit -> line 121 where
Code: [Select]

sudo installit || exit 1

you must write
Code: [Select]

sudo -E installit || exit 1


it only works OK if I make the other changes in etc/passwd every session, because if I put etc/passwd in opt/.filetool.lst then in the next session don't work "load local apps" in Apps.

Offline Rich

  • TinyCore Moderator
  • Hero Member
  • *****
  • Posts: 7416
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #58 on: June 13, 2012, 06:34:50 PM »
Hi Onyarian
If you backup  passwd , shouldn't you also backup  group, shadow, and gshadow?

Offline Arslan S.

  • Hero Member
  • *****
  • Posts: 825
Re: tc-ext-tools: A package build system for Tiny Core Linux
« Reply #59 on: June 14, 2012, 12:44:37 AM »
amatcoder already submitted the fix for keeping environment variables
i don't think that's related to your issue anyways

can you send me the package build files please?