From: <kkk...@us...> - 2009-11-08 15:11:54
|
Revision: 746 http://moneymanagerex.svn.sourceforge.net/moneymanagerex/?rev=746&view=rev Author: kkkvadim Date: 2009-11-08 15:11:41 +0000 (Sun, 08 Nov 2009) Log Message: ----------- rpm spec file Added Paths: ----------- trunk/mmex/setup/linux/rpm/ trunk/mmex/setup/linux/rpm/mmex.spec trunk/mmex/setup/linux/rpm/readme.txt Added: trunk/mmex/setup/linux/rpm/mmex.spec =================================================================== --- trunk/mmex/setup/linux/rpm/mmex.spec (rev 0) +++ trunk/mmex/setup/linux/rpm/mmex.spec 2009-11-08 15:11:41 UTC (rev 746) @@ -0,0 +1,56 @@ +Name: mmex +Version: 0.9.6.0 +Release: 1%{?dist} +Summary: Cross-platform simple to use financial management software +Group: Applications/Databases +License: GPL2 +URL: http://www.codelathe.com/mmex +Packager: VaDiM +Source: %{name}-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Requires: libc6, libsqlite3-0, libwxgtk2.8-0 + +%description +Money Manager Ex is a free, open-source, cross-platform, easy-to-use personal +finance software. It primarily helps organize one's finances and keeps track +of where, when and how the money goes. + +MMEX includes all the basic features that 90% of users would want to see in a +personal finance application. The design goals are to concentrate on simplicity +and user-friendliness - something one can use everyday. + +Supported platforms: + +MS Windows: 95, 98, ME, 2000, NT, XP, 7. + ANSI and Unicode builds; x86, x64, ia64 versions available. + +Unixes: almost any Unix workstation with GTK+ 2.0 and above. +Mac: Mac OS 8.6/9.x (eg. Classic) or Mac OS X 10.x. + + +%prep +%setup -q + + +%build +%configure +make %{?_smp_mflags} + + +%install +rm -rf $RPM_BUILD_ROOT +make install DESTDIR=$RPM_BUILD_ROOT + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(-,root,root,-) +~/%{name}-%{version}/runtime/* +~/%{name}-%{version}/mmex +%doc ~/%{name}-%{version}/mmex/docs + + +%changelog Property changes on: trunk/mmex/setup/linux/rpm/mmex.spec ___________________________________________________________________ Added: eol-style + LF Added: trunk/mmex/setup/linux/rpm/readme.txt =================================================================== --- trunk/mmex/setup/linux/rpm/readme.txt (rev 0) +++ trunk/mmex/setup/linux/rpm/readme.txt 2009-11-08 15:11:41 UTC (rev 746) @@ -0,0 +1 @@ +rpmbuild -ba mmex.spec Property changes on: trunk/mmex/setup/linux/rpm/readme.txt ___________________________________________________________________ Added: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <vo...@us...> - 2011-03-14 05:22:10
|
Revision: 1190 http://moneymanagerex.svn.sourceforge.net/moneymanagerex/?rev=1190&view=rev Author: vomikan Date: 2011-03-14 05:22:03 +0000 (Mon, 14 Mar 2011) Log Message: ----------- Puppy linux package builder added Added Paths: ----------- trunk/mmex/setup/linux/puppy/ trunk/mmex/setup/linux/puppy/build_pet.sh trunk/mmex/setup/linux/puppy/dir2pet trunk/mmex/setup/linux/puppy/petspec trunk/mmex/setup/linux/puppy/readme.txt Added: trunk/mmex/setup/linux/puppy/build_pet.sh =================================================================== --- trunk/mmex/setup/linux/puppy/build_pet.sh (rev 0) +++ trunk/mmex/setup/linux/puppy/build_pet.sh 2011-03-14 05:22:03 UTC (rev 1190) @@ -0,0 +1,33 @@ +#!/bin/bash +# This script will build .pet package +# +# + +# The corresponding version of mmex must be specified below +MMEX_VERSION="0.9.8.0" + +PET_UTILS=`pwd` +cd ../../../ +./configure --prefix=$HOME/build/mmex-$MMEX_VERSION/usr +make install + +mkdir -p ~/build/mmex-$MMEX_VERSION/usr/share/applications +cp resources/mmex.desktop ~/build/mmex-$MMEX_VERSION/usr/share/applications/ + +mkdir -p ~/build/mmex-$MMEX_VERSION/usr/share/icons/hicolor/scalable/apps +cp graphics/mmex.svg ~/build/mmex-$MMEX_VERSION/usr/share/icons/hicolor/scalable/apps/ +mkdir -p ~/build/mmex-$MMEX_VERSION/usr/local/lib/X11/mini-icons +cp resources/mmex.xpm ~/build/mmex-$MMEX_VERSION/usr/local/lib/X11/mini-icons/ + +mkdir -p ~/build/mmex-$MMEX_VERSION/usr/share/man/man1 +cp doc/mmex.1.gz ~/build/mmex-$MMEX_VERSION/usr/share/man/man1/ + +rm ~/build/mmex-$MMEX_VERSION/usr/share/mmex/po/*.po + +strip ~/build/mmex-$MMEX_VERSION/usr/bin/mmex + +#cd setup/linux/puppy/ +cd ~/build/ +fakeroot $PET_UTILS/dir2pet mmex-$MMEX_VERSION $PET_UTILS + + Property changes on: trunk/mmex/setup/linux/puppy/build_pet.sh ___________________________________________________________________ Added: svn:executable + * Added: trunk/mmex/setup/linux/puppy/dir2pet =================================================================== --- trunk/mmex/setup/linux/puppy/dir2pet (rev 0) +++ trunk/mmex/setup/linux/puppy/dir2pet 2011-03-14 05:22:03 UTC (rev 1190) @@ -0,0 +1,386 @@ +#!/bin/sh +#Barry Kauler (c) Copyight 2007,2009 www.puppylinux.com +#2007 Lesser GPL licence v2 (http://www.fsf.org/licensing/licenses/lgpl.html) +#This script will create a PET package. +#Just create a directory with the name of the package, for example 'abiword-0.5.6' +#and put what you want in it. +#It should have abiword-0.5.6/usr/share/applications/abiword.desktop if the +#application requires a menu entry, but if there isn't one this script will ask +#some simple questions and create one. +#This script will also create abiword-0.5.6/pet.specs, which has +#some information useful to the Puppy Package Manager. +#w476, w478 fixes to work with petspec. +#w482 if preexisting pet.specs, read fields from it. +#100201 improve reading of pet.specs +#100303 fix bug detection arch-dependent pkg. + +if [ ! $1 ];then + echo "It is required to invoke this script like this: +# dir2pet abiword-0.5.6 +where abiword-0.5.6 is a directory in the same directory +in which this terminal window is open. 'abiword-0.5.6' is +just an example, and contains subdirectories and files +that will become the PET package." + exit +fi + +if [ ! -d $1 ];then + echo "$1 must be a directory" + exit +fi + +ADIR=$1 +MYPID=${$} + +#split ADIR path/filename into components... +BASEPKG="`basename $ADIR`" +DIRPKG="`dirname $ADIR`" +[ "$DIRPKG" = "/" ] && DIRPKG="" + +#w482 directory may already have a pet.specs, reuse it... +NAMEONLY="" +PUPMENUDESCR="" +PUPOFFICIALDEPS="" +PUPCATEGORY="" +PUPPATH="" #100201 +ARCHDEPENDENT="yes" #100201 +DEFREPO="" #100201 +if [ -f ${1}/pet.specs ];then + #new: pkgname|nameonly|version|pkgrelease|category|size|path|fullfilename|dependencies|description| + #optionally on the end: compileddistro|compiledrelease|repo| (fields 11,12,13) + PETSPECS="`cat ${1}/pet.specs | head -n 1`" + DB_pkgname="`echo -n "$PETSPECS" | cut -f 1 -d '|'`" + DB_nameonly="`echo -n "$PETSPECS" | cut -f 2 -d '|'`" + NAMEONLY="$DB_nameonly" + DB_version="`echo -n "$PETSPECS" | cut -f 3 -d '|'`" + DB_pkgrelease="`echo -n "$PETSPECS" | cut -f 4 -d '|'`" + DB_category="`echo -n "$PETSPECS" | cut -f 5 -d '|'`" + PUPCATEGORY="$DB_category" + DB_size="`echo -n "$PETSPECS" | cut -f 6 -d '|'`" + DB_path="`echo -n "$PETSPECS" | cut -f 7 -d '|'`" + PUPPATH="$DB_path" #100201 + DB_fullfilename="`echo -n "$PETSPECS" | cut -f 8 -d '|'`" + DB_dependencies="`echo -n "$PETSPECS" | cut -f 9 -d '|'`" + PUPOFFICIALDEPS="$DB_dependencies" + DB_description="`echo -n "$PETSPECS" | cut -f 10 -d '|'`" + PUPMENUDESCR="$DB_description" + DB_compileddistro="`echo -n "$PETSPECS" | cut -f 11 -d '|'`" + DB_compiledrelease="`echo -n "$PETSPECS" | cut -f 12 -d '|'`" + ARCHDEPENDENT="${DB_compileddistro}|${DB_compiledrelease}" + DB_repo="`echo -n "$PETSPECS" | cut -f 13 -d '|'`" + DEFREPO="$DB_repo" +fi + +#difficult task, separate package name from version part... +#not perfect, some start with non-numeric version info... +[ "$NAMEONLY" = "" ] && NAMEONLY="`echo -n "$BASEPKG" | sed -e 's/\-[0-9].*$//g'`" +#...if that fails, do it the old way... +[ "$NAMEONLY" = "$BASEPKG" ] && NAMEONLY="`echo "$BASEPKG" | cut -f 1 -d "-"`" + +clear +echo "Welcome to the 'dir2pet' script." +echo "This will convert a directory into a PET package. Example, you have a " +echo "directory named 'abiword-0.5.6' and inside that you place whatever is" +echo "needed for the package, for example usr/local/bin/abiword (the executable)" +echo "and usr/share/applications/abiword.desktop (the XDG menu file)." +echo "Whatever the packages needs, though don't worry if there is no .desktop" +echo "file as this script will ask some simple questions and optionally create" +echo "one. The package only needs a .desktop file if a menu entry is to be" +echo "created, and also a 16x16 pixel icon is required for the menu." +echo "It is preferred that the icon be an xpm image and the default location" +echo "for these is at /usr/local/lib/X11/mini-icons/, but it can be anywhere." +echo +echo "The directory $BASEPKG must separate name of the package and" +echo "version number with a dash. Ex: abiword-0.5.6" +echo +echo "The package may optionally have post-install and post-remove scripts," +echo "named 'pinstall.sh' and 'puninstall.sh' placed at the top directory." +echo "(to create official PETs for the Unleashed suite, see its README file" +echo " for more information how to create these scripts properly)" +echo +echo "If any of the above needs to be further sorted out, you can quit this" +echo "script right now by pressing CTRL-C, otherwise just press ENTER." +echo -n "Press ENTER key to continue: " +read goforit + +#. /etc/xdg/menus/hierarchy #has PUPHIERARCHY variable. + +DESKTOPFILE="" +ADESKTOPFILE="`find $ADIR -type f -name \*.desktop`" +[ "$ADESKTOPFILE" != "" ] && DESKTOPFILE="yes" + +echo +echo -en "\\033[1;31mStep 1" #red +echo -e "\\033[0;39m" +if [ "$DESKTOPFILE" = "" ];then + echo "Currently there is no .desktop file (they are usually at usr/share/applications" + echo "or usr/local/share/applications), so perhaps this package is not supposed to" + echo "have a menu entry? You can optionally create one though..." + echo "If you know that the ${BASEPKG} application does not require" + echo "a menu entry, press the ENTER key only." + echo "If a menu entry is required, type any printable character then ENTER." + echo "(if in doubt, just press ENTER key)" + echo -n "Type a printable character or just ENTER key: " + read YESMENU + [ "$YESMENU" = "" ] && DESKTOPFILE="ignore" +else #w476 + echo "A .desktop file was found here:" + echo "$ADESKTOPFILE" + echo "So this application will have a menu entry." + echo "If you want to change the .desktop file in any way, open it in a text editor" + echo "right now, before proceeding and make any changes you want." + echo "In particular, check that the icon exists, and that 'Category' entry fits" + echo "into Puppy's menu hierarchy (see file /etc/xdg/menus/hierarchy)." + echo "After satisfying yourself that the .desktop file is ok, press the ENTER key" + echo "to continue this script." + echo "Or, type 'ignore' to build pet pkg as if there is no .desktop file." + echo "Or, type 'new' if you would like this script to ask a series of" + echo -n "questions and rebuild the .desktop file from scratch: " + read NEWMENU + [ "$NEWMENU" = "ignore" ] && DESKTOPFILE="ignore" #w478 + if [ "$NEWMENU" = "new" ];then + for ONEDESKTOP in $ADESKTOPFILE + do + BASEDESK="`basename $ONEDESKTOP .desktop`" + DIRDESK="`dirname $ONEDESKTOP`" + echo "Moving ${DIRDESK}/${BASEDESK}.desktop to /tmp" + mv -f ${DIRDESK}/${BASEDESK}.desktop /tmp/ + done + DESKTOPFILE="" + fi +fi + +PUPAPPLICATION="" +PUPEXECUTABLE="" +PUPICON16="" +PUPAPPLICATION="" +if [ "$DESKTOPFILE" = "yes" ];then #w476 + #get some info out of it... + FIRSTDESKTOPFILE="`echo -n "$ADESKTOPFILE" | head -n 1`" + PUPCATEGORY="`cat $FIRSTDESKTOPFILE | grep '^Categories=' | cut -f 2 -d '='`" + PUPEXECUTABLE="`cat $FIRSTDESKTOPFILE | grep '^Exec=' | cut -f 2 -d '='`" + PUPICON16="`cat $FIRSTDESKTOPFILE | grep '^Icon=' | cut -f 2 -d '='`" + PUPMENUDESCR="`cat $FIRSTDESKTOPFILE | grep '^Comment=' | cut -f 2 -d '='`" + [ "$PUPMENUDESCR" = "" ] && PUPMENUDESCR="`cat $FIRSTDESKTOPFILE | grep '^Name=' | cut -f 2 -d '='`" + [ "$PUPMENUDESCR" = "" ] && PUPMENUDESCR="`cat $FIRSTDESKTOPFILE | grep '^GenericName=' | cut -f 2 -d '='`" +fi + +if [ "$DESKTOPFILE" = "" ];then + echo + echo -en "\\033[1;31mStep 1B" #red + echo -e "\\033[0;39m" + echo "Please type the category in which you want the application" + echo "to create a window manager menu entry. The official Puppy" + echo "has a menu hierarchy as follows:" + echo "('X-' categories are unofficial, Puppy-specific)" + echo "$PUPHIERARCHY" + echo + echo -n "Type one word from the CATEGORIES column: " + read PUPCATEGORY + + echo + echo -en "\\033[1;31mStep 1C" #red + echo -e "\\033[0;39m" + echo "Please enter the name of the executable. If it is in the" + echo "executable-search-path, namely /bin, /sbin, /usr/bin," + echo "/usr/sbin, /root/my-applications/bin or /usr/local/bin," + echo "then you only need to enter the name of the executable" + echo "not the path. Example: mtpaint" + echo "(of course, if you need to specify the path here, it is" + echo " the path AFTER the package is installed)" + echo + echo -n "Enter [path]executable: " + read PUPEXECUTABLE + + echo + echo -en "\\033[1;31mStep 1D" #red + echo -e "\\033[0;39m" + echo "Please enter the name of the icon that is to be used in" + echo "the window manager menu entry. This must be a 16x16 pixel" + echo ".xpm file (.png okay but not suitable all window managers)." + echo "If this icon is located at /usr/local/lib/X11/mini-icons" + echo "then there is no need to specify the path." + echo "If the icon is located elsewhere then the full path must" + echo "be provided. An example: the package gfnrename-0.4 installs" + echo "a 16x16 icon at /usr/local/gfnrename-0.4/icon.xpm" + echo "(of course, if you need to specify the path here, it is" + echo " the path AFTER the package is installed)" + echo "IT MUST BE A 16x16 PIXEL ICON, NO BIGGER!" + echo + echo -n "Please type [path]icon: " + read PUPICON16 + + echo + echo -en "\\033[1;31mStep 1E" #red + echo -e "\\033[0;39m" + echo "Please enter the name of the application, as you wish it to" + echo "appear in the menu. It will be the first word in the menu entry." + echo "Example: Abiword" + echo + echo -n "Type application name: " + read PUPAPPLICATION +fi + +if [ "$PUPMENUDESCR" = "" ];then #w476 + echo + echo -en "\\033[1;31mDescription" #red + echo -e "\\033[0;39m" + echo "Please enter a description of 1-3 words." + if [ "$DESKTOPFILE" = "" ];then + echo "This must be extremely short. as it will appear in the window" + echo "manager menu entry immediately after the application name." + fi + echo "This may be used for various purposes, such by PETget for package" + echo "management purposes." + echo "Example for Abiword: powerful wordprocessor" + echo + echo -n "Type the VERY SHORT description (without quotes): " + read PUPMENUDESCR +#else +# echo "A description of the package has been extracted:" +# echo " '${PUPMENUDESCR}'" +# echo "This will be placed in the package database entry. Press ENTER if ok," +# echo -n "or type an alternative very short description: " +# read NEWDESCR +# if [ "$NEWDESCR" != "" ];then +# PUPMENUDESCR="$NEWDESCR" +# fi +fi + +echo + +#if pkg is a split-off, already has a known dependency... +DEPBASE="";DEPNOTE="" +[ ! "`echo -n "$NAMEONLY" | grep '_DEV'`" = "" ] && DEPBASE="+`echo -n "$NAMEONLY" | sed -e 's/_DEV//g'`" +[ ! "`echo -n "$NAMEONLY" | grep '_DOC'`" = "" ] && DEPBASE="+`echo -n "$NAMEONLY" | sed -e 's/_DOC//g'`" +[ ! "`echo -n "$NAMEONLY" | grep '_NLS'`" = "" ] && DEPBASE="+`echo -n "$NAMEONLY" | sed -e 's/_NLS//g'`" +if [ ! "$DEPBASE" = "" ];then + DEPNOTE="NOTE5: It is strongly suggested that you at least enter ${DEPBASE} + the main package +" +fi + +if [ "$PUPOFFICIALDEPS" = "" ];then + echo + echo -en "\\033[1;31mDependencies" #red + echo -e "\\033[0;39m" + echo "Please enter a dependency-list for the PET package that is now being" + echo "created. Packages already built-in to Puppy do not need to be" + echo "explicitly named as dependencies (except a cut-down barebones version" + echo "of Puppy may not have all of these built in, so you may have to" + echo "think of the worst-case situation)." + echo "How to enter this dependency-list is shown by an example: the package" + echo "'pupdvdtool-0.5b' has the following dependency list:" + echo "+vamps,+vobcopy,+ffmpeg,+dvdauthor,+gtkdialog3" + echo "Each package name is preceded by a '+' and delimited by a ','." + echo "NOTE1: that 'gtkdialog3' requires the GTK libraries, but it is not" + echo " necessary to specify sub-dependencies, as if 'gtkdialog3'" + echo " needs to be installed it has its own dependency list." + echo "NOTE2: You can lookup the dependency-list of each package in the" + echo " /root/.packages/Packages-* database files" + echo "NOTE3: it is not required to specify package version numbers," + echo " VERSION NUMBERS NOT YET SUPPORTED BY PACKAGE MANAGER" + echo "NOTE4: If you don't know what to specify, just press ENTER key" + echo " (the package manager will still do some basic dependency checking)" + echo "$DEPNOTE" + echo -n "Type dependency-list: " + read PUPOFFICIALDEPS +fi + +echo +echo -en "\\033[1;31mGUI window" #red +echo -e "\\033[0;39m" + +#create tarball... +rm -f $DIRPKG/${BASEPKG}.tar 2>/dev/null +rm -f $DIRPKG/${BASEPKG}.tar.gz 2>/dev/null +rm -f $DIRPKG/${BASEPKG}.pet 2>/dev/null +if [ "$DESKTOPFILE" = "" ];then + mkdir -p $DIRPKG/$BASEPKG/usr/share/applications + echo '[Desktop Entry]' > $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo 'Encoding=UTF-8' >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "Name=${PUPAPPLICATION} ${PUPMENUDESCR}" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "Icon=${PUPICON16}" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "Comment=${PUPAPPLICATION} ${PUPMENUDESCR}" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "Exec=${PUPEXECUTABLE}" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "Terminal=false" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "Type=Application" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "Categories=${PUPCATEGORY}" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo "GenericName=${PUPAPPLICATION} ${PUPMENUDESCR}" >> $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop + echo + echo "File $DIRPKG/$BASEPKG/usr/share/applications/${NAMEONLY}.desktop created." + echo +fi + +#100201 determine if pkg is ditro-independent (scripts only)... +ARCHINDEPENDENT='yes' +for ONEEXEC in `find $DIRPKG/$BASEPKG -maxdepth 6 -type f -perm -o+x` +do + [ -f $ONEEXEC ] && [ "`file $ONEEXEC | grep ' ELF '`" != "" ] && ARCHINDEPENDENT='no' +done +[ "`find $DIRPKG/$BASEPKG -maxdepth 6 -type f -name '*.a' -o -type f -name 'lib*.so*' -o -type f -name '*.la'`" != "" ] && ARCHINDEPENDENT='no' #100303 +#[ "`echo "${BASEPKG}" | grep '_DEV'`" != "" ] && ARCHINDEPENDENT='no' #100303 +[ "$ARCHINDEPENDENT" = "yes" ] && ARCHDEPENDENT='no' + +echo "Press ENTER key to bring up a GUI window that will help you to create" +echo "a database entry for the package. This will be shown in a text editor" +echo "for saving somewhere, also written to file 'pet.specs' inside the pkg." +echo -n "Press ENTER: " +read enternow + +SIZEK="`du -s -k $DIRPKG/$BASEPKG | cut -f 1`" #w476 + +[ "${PUPCATEGORY}" = "" ] && PUPCATEGORY="EMPTY" +#if PUPCATEGORY is in format 'entry1;entry2;' extract only 'entry2'... +xPUPCATEGORY="`echo -n "$PUPCATEGORY" | tr ';' ' ' | tr -s ' ' | sed -e 's% $%%' | rev | cut -f 1 -d ' ' | rev`" +TOPCAT="`echo "$PUPHIERARCHY" | grep "$xPUPCATEGORY" | cut -f 1 -d ' ' | head -n 1`" +[ "${TOPCAT}" = "" ] && TOPCAT="EMPTY" + +[ "${PUPOFFICIALDEPS}" = "" ] && PUPOFFICIALDEPS="EMPTY" +[ "${PUPMENUDESCR}" = "" ] && PUPMENUDESCR="EMPTY" +[ "${PUPPATH}" = "" ] && PUPPATH="EMPTY" #100201 +[ "${DEFREPO}" = "" ] && DEFREPO="EMPTY" #100201 +$2/petspec "${NAMEONLY}" "${TOPCAT}" "${PUPOFFICIALDEPS}" "${PUPMENUDESCR}" "$BASEPKG" "$SIZEK" "$PUPPATH" "$ARCHDEPENDENT" "$DEFREPO" #100201 + +if [ $? -ne 0 ];then + echo "Aborted creation of PET package." + exit +fi + +cat /tmp/petspec_db_entry | tail -n 1 > $DIRPKG/$BASEPKG/pet.specs + +echo +echo "Creating package..." +tar -c -f $DIRPKG/${BASEPKG}.tar $DIRPKG/$BASEPKG/ +sync +gzip $DIRPKG/${BASEPKG}.tar +#rmdir $DIRPKG/$BASEPKG +TARBALL="$DIRPKG/${BASEPKG}.tar.gz" + +echo +echo "File $DIRPKG/${BASEPKG}.tar.gz created. Now converting to .pet..." +FULLSIZE="`stat --format=%s ${TARBALL}`" +MD5SUM="`md5sum $TARBALL | cut -f 1 -d ' '`" +echo -n "$MD5SUM" >> $TARBALL +sync +mv -f $TARBALL $DIRPKG/${BASEPKG}.pet +sync + +echo +echo "${BASEPKG}.pet has been created. Finished." +echo +echo "If you look in ${BASEPKG} you will see the new '.specs' file." +if [ "$DESKTOPFILE" = "" ];then + echo "And in $BASEPKG/usr/share/applications/ the new '.desktop' file." +fi +echo "Directory $BASEPKG is now configured correctly as a PET package" +echo "and in future you do not need to go through this script again." +echo "You could manually edit the files if required, and create another" +echo ".pet package just by doing this:" +echo "# tar -c -f ${BASEPKG}.tar ${BASEPKG}/" +echo "# gzip ${BASEPKG}.tar" +echo "# tgz2pet ${BASEPKG}.tar.gz" +echo +echo "dir2pet exited." + +###END### Property changes on: trunk/mmex/setup/linux/puppy/dir2pet ___________________________________________________________________ Added: svn:executable + * Added: trunk/mmex/setup/linux/puppy/petspec =================================================================== --- trunk/mmex/setup/linux/puppy/petspec (rev 0) +++ trunk/mmex/setup/linux/puppy/petspec 2011-03-14 05:22:03 UTC (rev 1190) @@ -0,0 +1,234 @@ +#!/bin/sh +#optional params passed in: +#"${NAMEONLY}" "${PUPCATEGORY}" "${PUPOFFICIALDEPS}" "${PUPMENUDESCR}" "$BASEPKG" "$SIZEK" "$PUPPATH" "$ARCHDEPENDENT" "$DEFREPO" +#w476 bug fixes, to work properly with dir2pet. +#w482 set default name of repo to 'official'. +#v425 category does not necessarily have anything to do with menu. +#100201 added PUPPATH, ARCHDEPENDENT, DEFREPO, improve setting of distro name & version. + +#old ex: "abiword-2.6.3" "abiword 2.6.3: wordprocessor" ONOFF "Document +fribidi,+gtk+,+goffice,+wv,+enchant 7556K" +#new: pkgname|nameonly|version|pkgrelease|category|size|path|fullfilename|dependencies|description| +#ex: abiword-1.2.4|abiword|1.2.4|5|Document|999K|slackware/ab|abiword-1.2.4-5-i486.tgz|+aiksausus,+gtk2|a nice wordprocessor| +#optionally on the end: compileddistro|compiledrelease|repo| (fields 11,12,13) +#ex: slackware|12.2|official| +#this is not normally needed, as the name of the file holding the database info, for ex +#'Packages-slackware-12.2-official' identifies this extra information. + +##. /etc/DISTRO_SPECS +##. /root/.packages/DISTRO_PKGS_SPECS +##. /root/.packages/DISTRO_PET_REPOS + +mkdir -p /var/local/petspec #100201 + +DEF_nameonly="mmex" +DEF_version="0.9.8.0" +DEF_category="BuildingBlock" +DEF_size_val="UNKNOWN" +#DEF_path="pet_packages-4" +DEF_fullfilename="mmex-0.9.8.0.pet" +DEF_dependencies="+libc6,+libwxgtk2.8-0" +DEF_description="A simple to use personal money manager" +DEF_compileddistro="Ubuntu" #"$DISTRO_BINARY_COMPAT" +DEF_compiledrelease="10.04" #"$DISTRO_COMPAT_VERSION" +#DEF_repo="official" +DEF_kernel="`uname -r`" +DEF_pkgname="${DEF_nameonly}-${DEF_version}" + +if [ $5 ];then + DEF_nameonly="$1" + [ "$2" != "EMPTY" ] && DEF_category="$2" +# [ "$3" != "EMPTY" ] && DEF_dependencies="$3" +# [ "$3" = "EMPTY" ] && DEF_dependencies="" + [ "$4" != "EMPTY" ] && DEF_description="$4" + [ "$4" = "EMPTY" ] && DEF_description="no description provided" + DEF_pkgname="$5" + xPATTERN="s%${DEF_nameonly}%%" + DEF_version="`echo -n "$DEF_pkgname" | sed -e "$xPATTERN" -e 's%^\\-%%'`" + [ $5 ] && DEF_size_val="$6" + DEF_fullfilename="${5}.pet" +fi + +#100201 subdirectory of package on repo... +##DEF_path="" +##[ ! $7 ] && [ -f /var/local/petspec/DEF_path ] && DEF_path="`cat /var/local/petspec/DEF_path`" +##[ $7 ] && [ "$7" != "EMPTY" ] && DEF_path="${7}" + +#100201 determine if pkg is only scripts... +ARCHDEPENDENT='yes' +[ $8 ] && ARCHDEPENDENT="${8}" +if [ "$ARCHDEPENDENT" != "yes" -a "$ARCHDEPENDENT" != "no" ];then + DEF_compileddistro="`echo -n "$ARCHDEPENDENT" | cut -f 1 -d '|'`" + DEF_compiledrelease="`echo -n "$ARCHDEPENDENT" | cut -f 2 -d '|'`" +fi +if [ "$ARCHDEPENDENT" = "no" ];then + DEF_compileddistro="DISTRO INDEPENDENT" + DEF_compiledrelease="DISTRO INDEPENDENT" +fi + +#100201 id of repository... +##DEF_repo="" +##[ ! $9 ] && [ -f /var/local/petspec/DEF_repo ] && DEF_repo="`cat /var/local/petspec/DEF_repo`" +##[ $9 ] && [ "$9" != "EMPTY" ] && DEF_repo="${9}" + +#sort category items... +ITEMSCAT="<item>${DEF_category}</item>" +for ONECAT in 'NO CATEGORY' Desktop System Setup Utility Filesystem Graphic Document Calculate Personal Network Internet Multimedia Fun Help BuildingBlock Develop +do + [ "$ONECAT" = "$DEF_category" ] && continue + ITEMSCAT="${ITEMSCAT}<item>${ONECAT}</item>" +done + +#sort compileddistro items... +ITEMSCOMP="<item>${DEF_compileddistro}</item>" +for ONECHOICE in 'DISTRO INDEPENDENT' arch debian puppy slackware t2 ubuntu +do + [ "$ONECHOICE" = "${DEF_compileddistro}" ] && continue + ITEMSCOMP="${ITEMSCOMP}<item>${ONECHOICE}</item>" +done + +DEPENDENCIES="" +if [ "$DEF_dependencies" != "" ];then + DEPENDENCIES="<default>${DEF_dependencies}</default>" +fi + +export MAIN_DIALOG=" +<window title=\"Package database-entry creator\" icon-name=\"gtk-index\"> + <vbox> + + <text use-markup=\"true\"><label>\"<b>The fields marked with '*' are required, the rest fill in as much as possible or if uncertain leave blank.</b>\"</label></text> + + <hbox> + <text><label>\" \"</label></text><text><label>*Name-only:</label></text> + <entry> + <default>${DEF_nameonly}</default><variable>DB_nameonly</variable> + </entry> + </hbox> + <hbox> + <text><label>\" \"</label></text><text><label>*Version:</label></text> + <entry> + <default>${DEF_version}</default><variable>DB_version</variable> + </entry> + </hbox> + + <hbox> + <text> + <label>*Category:</label> + </text> + <combobox> + <variable>DB_category</variable> + ${ITEMSCAT} + </combobox> + </hbox> + <hbox> + <text><label>\" \"</label></text><text><label>Size of installed package:</label></text> + <entry> + <default>${DEF_size_val}</default><variable>DB_size_val</variable> + </entry> + <text><label>KB</label></text> + </hbox> + + <hbox> + <text><label>Folder path within repository:</label></text> + <entry> + <default>\"${DEF_path}\"</default><variable>DB_path</variable> + </entry> + </hbox> + <hbox> + <text><label>*Full package name:</label></text> + <entry> + <default>${DEF_fullfilename}</default><variable>DB_fullfilename</variable> + </entry> + </hbox> + <hbox> + <text><label>Dependencies:</label></text> + <entry> + ${DEPENDENCIES}<variable>DB_dependencies</variable> + </entry> + </hbox> + <hbox> + <text><label>Description:</label></text> + <entry> + <default>${DEF_description}</default><variable>DB_description</variable> + </entry> + </hbox> + + <frame Extra optional> + <hbox> + <text> + <label>Compiled in compatible-distro:</label> + </text> + <combobox> + <variable>DB_compileddistro</variable> + ${ITEMSCOMP} + </combobox> + </hbox> + <hbox> + <text><label>\" \"</label></text><text><label>Compatible-distro version:</label></text> + <entry> + <default>${DEF_compiledrelease}</default><variable>DB_compiledrelease</variable> + </entry> + </hbox> + <hbox> + <text><label>\" \"</label></text><text><label>Single unique name of repository:</label></text> + <entry> + <default>\"${DEF_repo}\"</default><variable>DB_repo</variable> + </entry> + </hbox> + </frame> + + <hbox> + <button> + <label>Help</label> + <action>defaulthtmlviewer http://puppylinux.com/woof/pkg-db-format.htm & </action> + </button> + <button> + <label>Generate package database entry</label> + <action type=\"exit\">GENERATE_DB</action> + </button> + <button cancel></button> + </hbox> + </vbox> +</window> +" +RETVALS="`gtkdialog --program=MAIN_DIALOG`" +#ex: +#DB_category="BuildingBlock" +#DB_compileddistro="ubuntu" +#DB_compiledrelease="jaunty" +#DB_dependencies="+aiksaurus,+gtk2" +#DB_description="A powerful wordprocessor" +#DB_fullfilename="abiword-1.2.3-1.pet" +#DB_path="pet_packages-5" +#DB_pkgname="abiword" +#DB_repo="5" +#DB_size_val="UNKNOWN" +#DB_version="1.2.3-1" +#EXIT="GENERATE_DB" + +eval "$RETVALS" + +[ "$EXIT" != "GENERATE_DB" ] && exit 1 + +##echo -n "$DB_path" > /var/local/petspec/DEF_path #100201 +##echo -n "$DB_repo" > /var/local/petspec/DEF_repo #100201 + +DB_size="$DB_size_val"'K' +[ "$DB_size_val" = "UNKNOWN" ] && DB_size="" +[ "$DB_category" = "NO CATEGORY" ] && DB_category="" +[ "$DB_compileddistro" = "DISTRO INDEPENDENT" ] && DB_compileddistro="" +[ "$DEF_compiledrelease" = "DISTRO INDEPENDENT" ] && DB_compiledrelease="" +DB_pkgname="${DB_nameonly}-${DB_version}" + +DB_ENTRY="${DB_pkgname}|${DB_nameonly}|${DB_version}|${DB_pkgrelease}|${DB_category}|${DB_size}|${DB_path}|${DB_fullfilename}|${DB_dependencies}|${DB_description}|${DB_compileddistro}|${DB_compiledrelease}|${DB_repo}|" +echo +echo "$DB_ENTRY" +echo "This is the package database entry: + +$DB_ENTRY" > /tmp/petspec_db_entry + +#nohup defaulttextviewer /tmp/petspec_db_entry 2>/dev/null & +nohup gedit /tmp/petspec_db_entry 2>/dev/null & + +exit 0 + +###END### Property changes on: trunk/mmex/setup/linux/puppy/petspec ___________________________________________________________________ Added: svn:executable + * Added: trunk/mmex/setup/linux/puppy/readme.txt =================================================================== --- trunk/mmex/setup/linux/puppy/readme.txt (rev 0) +++ trunk/mmex/setup/linux/puppy/readme.txt 2011-03-14 05:22:03 UTC (rev 1190) @@ -0,0 +1,8 @@ +# How to build (and install) .pet package +# +# To build puppy package just execute build_pet.sh from current directory +# Check version before start edit it if needed +# gtkdialog should be installed + + + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |