DPS feature rich App
Hi everyone
One of my apps that I've created (on and off) for the last year has gone live in the App Store.
It does cost £1.49 but it has pretty much every type of DPS/ HTML5 features that you can think of, including tilt animation.
It's not perfect! so any comments please send them here, and great comments, please review on the App Store
http://itunes.apple.com/gb/app/london-app/id505822473?mt=8
Hi everyone
One of my apps that I've created (on and off) for the last year has gone live in the App Store.
It does cost £1.49 but it has pretty much every type of DPS/ HTML5 features that you can think of, including tilt animation.
It's not perfect! so any comments please send them here, and great comments, please review on the App Store
http://itunes.apple.com/gb/app/london-app/id505822473?mt=8
Similar Messages
-
Support for new features in App-V 5.0 SP3
Is there or will there be an upgrade to SCCM 2012 R2 to support the new features in App-V 5.0 SP3? Specifically connection group functionality changes.
Thank you.As far as I am aware there's no support as yet. I'd assume the next release has this.
Cheers Paul | -
How to use DPS features like Folio Overlays while exporting to SWF?
I'm creating an interactive magazine in InDesign, it's been decided that the magazine will be exported to SWF and uploaded to our company website for viewing by the public. I want things like slideshows and scrollabe text frames. I saw that InDesign had an update to include some DPS features like the Folio Overlays, so I applied a Slideshow overlay and a Scrollable Frame overlay but neither of them seem to work after I export to SWF. I still want to have slideshows and scrollable frames, how can I still have them while exporting to SWF?
DPS is for mobile devices through Adobe’s Digital Publishing Suite. The reason SWF is dead is because it’s pretty much incompatible with mobile devices. If you want to go to the web and keep things interactive you really need to be looking HTML5 / CSS3 type of websites. In5, which I mentioned in my earlier response will give you quite bit of help in going from InDesign to web, but I would strongly suggest you take a look at Muse if you’re not comfortable with HTML and CSS.
-
Custom UI Text in DPS in Android Apps
Hi,
Is there any documentation on how to customize the sign in button text for DPS Android apps like the one for iOS apps?
Customizing UI text in DPS iOS apps
Thanks!This feature isn't supported with the Android or Windows viewers.
Neil -
Can you publish a DPS single edition app to the android and googleplay marketplace?
I can't find a simple answer anywhere. On one of the pages it says "Publish everywhere- Every device, every platform' but it does not confirm whether this is possible for single edition apps or how it can be done. Can anyone help? Much appreciated.
Hi, this is iPad only. Please see this table: Digital Publishing Suite Help | DPS supported feature list
-
Audio problem with Edge animate CC 2014.1 oam files in DPS 32 (Viewer App in Ipad)
Hi there team,
I can hear no sounds in the Ipad viewer. I think the problem may be the last update of the Ipad viewer app. But not sure if the problem is with the last 2014.1 update of Edge.
The animations work fine in Chrome with onclick but they dont'ty work in the Ipad with the ontouch commands. I also checked that the oam file contains the .mp3 in the media folder (Seems that Edge 2014.1 does this right).
They are actions, not music in the background (I know there's an iOS limitation with this).
Anyone with the same problem? Could you check if your projects work fine after the last updates?
Thanks!
Rubén.I have just found the same problem. I have an Adobe DPS article that uses Adobe edge that play audio when 'tapped', I built this before the CC 2014.1 update and that one works fine. I have created another article following the same process but using the updated version and the audio will not play.
Both files are placed OAM files. Audio worked fine in the browser during testing.
Please tell me this has not been removed as a feature! -
Slow and insecure but feature-rich pacman wrapper in bash
This project of mine started because I want to compile my packages in a way that lets me delete gnome apps. Here's the problem: I see that evince depends on gnome-keyring, gnome-keyring depends on gconf and alltray depends on gconf. This leads me to think that if I recompile evince to not use gnome-keyring and recompile alltray to not use gconf, I can delete gconf.
NO!
I have to recompile evince to not use gconf as well because little do I know from pacman's dependency handling... gconf is a direct (but second level) dependency of evince as it's compiled as well.
This is a pretty standard problem. It's the reason why debian dependency lists are so damn long. I don't want Arch to move to a system like that... well sort of. Here's what I did. I made a script that acts just like pacman but when you tell it to download and install a package, it tells pacman to only download that package into a separate cache, then it extracts the package, finds all dynamic executables in the package, uses ldd to determine their library dependencies, uses pacman -Qo to find packages that own these dependencies (and caches them in a file so they can be looked up more quickly in the future), applies some other enhancements that should be visible in the script, then adds the new dependencies to the depends array and makes sure that none are duplicated. It also formats the array so that it goes (original clean dependency list) kernel26 (new list). That way it can parse queries as well so -Qi will omit all the dependencies after kernel26 and the Required By section while -Qii shows everything. This is the perfect compromise for me. Not sure if it will be for you.
Other things it does:
* Checks if AUR packages need updating (but doesn't update them)
* Takes out docs and gconf schemas
* Cleans up man pages so there's no /usr/man and just /usr/share/man/man*
* Convers /usr/share/man/locale/man1/whatever.1.gz to /usr/share/man/man1/whatever-locale.1.gz
* Converts info pages to man pages with info2man and puts them in man9
* Gzips all man pages
* Allows replacing packages with -U
* Package specific stuff like disabling the firefox error console.
Regretably I had to make it play around with the md5sums. This essentially makes them useless but if I don't do this reinstalling a package that is in the main cache because this script put it there fails due to corruption. So you might want to get rid of this "feature" and probably the firefox / uvesafb /gstreamer / info2man stuff but this is cool so tell me what you think of it.
#!/bin/bash
function aur_check {
STARTDIR=`pwd`
cd /var/cache/pacman
for r in `pacman -Qmq`; do
wget "http://aur.archlinux.org/packages/$r/$r/PKGBUILD" >/dev/null 2>&1
if [ $? -eq 0 ]; then
LOCAL_VERSION_REL=`'pacman' -Q $r | awk '{print $2}'`
LOCAL_VERSION=`echo $LOCAL_VERSION_REL| sed -e 's/-.*//g'`
REMOTE_VERSION=`cat PKGBUILD | grep -E '^pkgver=' | sed -e 's/pkgver=//g' | sed -e 's/[ ]*//g'`
REMOTE_REL=`cat PKGBUILD | grep -E '^pkgrel=' | sed -e 's/pkgrel=//g'`
if [[ "$LOCAL_VERSION" < "$REMOTE_VERSION" ]]; then
printf "warning: $r: ignoring package upgrade ($LOCAL_VERSION_REL => ${REMOTE_VERSION}-${REMOTE_REL})\n"
fi
rm PKGBUILD
fi
done
cd $STARTDIR
function sync_check {
STARTDIR=`pwd`
cd /var/cache/pacman
IGNORED_PACKAGES=`cat /etc/pacman.conf | grep -E '^IgnorePkg' | sed -e 's/IgnorePkg[ ]*=[ ]*//g'`
for s in $IGNORED_PACKAGES; do
REMOTE_VERSION_STRING=`'pacman' -Si $s 2>/dev/null | grep -E '^Version'`
if [ $? -eq 0 ]; then
REMOTE_VERSION_REL=`echo $REMOTE_VERSION_STRING | awk '{print $3}'`
LOCAL_VERSION_STRING=`'pacman' -Q $s 2>/dev/null`
if [ $? -eq 0 ]; then
LOCAL_VERSION_REL=`echo $LOCAL_VERSION_STRING | awk '{print $2}'`
printf "warning: $s: ignoring package upgrade ($LOCAL_VERSION_REL => $REMOTE_VERSION_REL)\n"
fi
fi
done
cd $STARTDIR
function remove_crap {
# No docs or schemas.
rm -rf 2>/dev/null ./usr/share/doc
rm -rf 2>/dev/null ./usr/share/gtk-doc
rm -rf 2>/dev/null ./etc/gconf
# Please delete this file. It is not necessary for linking the library.
find . -name "*.la" -exec rm {} \;
# Only one man directory please.
if [ -d ./usr/man ]; then
if [ ! -d ./usr/share ]; then
mkdir ./usr/share
fi
mv ./usr/man ./usr/share/man
fi
if [ -d ./usr/share/man ]; then
cd ./usr/share/man
ls | grep 'cat' | xargs rm -rf
if [ -d ./man ]; then
mv ./man/* .
rm -rf ./man
fi
# Imposes what I consider to be a better naming convention for some reason.
for t in `ls`; do
if [ $t != 'man0' ] && [ $t != 'man1' ] && [ $t != 'man2' ] && [ $t != 'man3' ] && [ $t != 'man4' ] && [ $t != 'man5' ] && [ $t != 'man6' ] && [ $t != 'man7' ] && [ $t != 'man8' ] && [ $t != 'man9' ] && [ $t != 'mann' ] && [ $t != 'manm' ]; then
cd $t
for u in `ls`; do
cd $u
for v in `ls`; do
SECOND_LAST_EXTENSION=`echo $v | sed -e 's/\.gz$//g' | rev | sed -e 's/\..*//g' | rev`
PREFIX=`echo $v | sed -e 's/\.gz$//g' | sed -e "s/\.${SECOND_LAST_EXTENSION}//g"`
SUFFIX=`echo $v | sed -e "s/$PREFIX//g"`
if [ ! -h $v ]; then
install -D $v ../../${u}/${PREFIX}-${t}${SUFFIX}
else
TARGET=`readlink $v`
TARGET_SECOND_LAST_EXTENSION=`echo $TARGET | sed -e 's/\.gz$//g' | rev | sed -e 's/\..*//g' | rev`
TARGET_PREFIX=`echo $TARGET | sed -e 's/\.gz$//g' | sed -e "s/\.${TARGET_SECOND_LAST_EXTENSION}//g"`
TARGET_SUFFIX=`echo $TARGET | sed -e "s/${TARGET_PREFIX}//g"`
install -d ../../${u}
ln -s ${TARGET_PREFIX}-${t}${TARGET_SUFFIX} ../../${u}/${PREFIX}-${t}${SUFFIX}
fi
done
cd ..
done
cd ..
rm -rf $t
fi
done
# Now that it is nicely organized we can gzip everything and add symlinks.
for x in `ls`; do
cd $x
for y in `ls`; do
echo $y | grep -q -E '\.gz$'
if [ $? -ne 0 ]; then
gzip $y >/dev/null 2>&1
SECOND_LAST_EXTENSION=`echo $y | rev | sed -e 's/\..*//g' | rev`
PREFIX=`echo $y | sed -e "s/\.${SECOND_LAST_EXTENSION}//g"`
NEW_NAME=`echo $PREFIX | sed -e 's/\./-/g'`
if [ $NEW_NAME != $PREFIX ]; then
ln -s ${y}.gz ${NEW_NAME}.${SECOND_LAST_EXTENSION}.gz
fi
else
SECOND_LAST_EXTENSION=`echo $y | sed -e 's/\.gz$//g' | rev | sed -e 's/\..*//g' | rev`
PREFIX=`echo $y | sed -e 's/\.gz//g' | sed -e "s/\.${SECOND_LAST_EXTENSION}//g"`
NEW_NAME=`echo $PREFIX | sed -e 's/\./-/g'`
if [ $NEW_NAME != $PREFIX ]; then
ln -s ${y} ${NEW_NAME}.${SECOND_LAST_EXTENSION}.gz
fi
fi
done
cd ..
done
cd ../../..
fi
# Converts info pages to man pages in the man9 directory
if [ -d ./usr/share/info ]; then
if [ -d ./usr/share/man ]; then
mkdir ./usr/share/man/man9
else
mkdir ./usr/share/man
mkdir ./usr/share/man/man9
fi
cd ./usr/share/info
for z in `ls`; do
echo $z | grep -q -E '\.gz$'
if [ $? -eq 0 ]; then
NAME=`echo $z | sed -e 's/\.gz$//g'`
NEWNAME=`echo $NAME | sed -e 's/\./-/g'`
gunzip $z
info2man $NAME > ../man/man9/${NEWNAME}
gzip ../man/man9/${NEWNAME} >/dev/null 2>&1
else
NEWNAME=`echo $z | sed -e 's/\./-/g'`
info2man $z > ../man/man9/${NEWNAME}
gzip ../man/man9/${NEWNAME} >/dev/null 2>&1
fi
done
cd ../../..
rm -rf ./usr/share/info
fi
function install_with_u {
ULTIMATE_ANSWER="y"
# Checks if there are package conflicts
CONFLICTS=`cat .PKGINFO | grep 'conflict = ' | awk '{print $3}'`
ACTUAL_CONFLICTS=""
for p in $CONFLICTS; do
VERSION_CHECK=0
CONFLICTING_PACKAGE=`echo $p | sed -r 's/(>|=|<).*//g'`
# Checks if these conflicts actually affect packages on the system
'pacman' -Q $CONFLICTING_PACKAGE >/dev/null 2>&1
if [ $? -eq 0 ]; then
AFFECTED=1
if [ ${#p} -gt ${#CONFLICTING_PACKAGE} ]; then
AFFECTED=0
# If a version is specified, finds it out and sees if we're affected
CONFLICTING_VERSION_STRING=${p:${#CONFLICTING_PACKAGE}:${#p}-${#CONFLICTING_PACKAGE}}
RELATION=${CONFLICTING_VERSION_STRING:1:2}
if [ "$RELATION" = "=" ]; then
RELATION=${CONFLICTING_VERSION_STRING:0:1}${RELATION}
CONFLICTING_VERSION=${CONFLICTING_VERSION_STRING:2:${#CONFLICTING_VERSION_STRING}-2}
else
RELATION=${CONFLICTING_VERSION_STRING:0:1}
CONFLICTING_VERSION=${CONFLICTING_VERSION_STRING:1:${#CONFLICTING_VERSION_STRING}-1}
fi
ACTUAL_VERSION=`pacman -Q $CONFLICTING_PACKAGE | awk '{print $2}'`
if [ "$RELATION" = ">" ]; then
if [[ "$ACTUAL_VERSION" > "$CONFLICTING_VERSION" ]]; then
AFFECTED=1
fi
elif [ "$RELATION" = "<" ]; then
if [[ "$ACTUAL_VERSION" < "$CONFLICTING_VERSION" ]]; then
AFFECTED=1
fi
elif [ "$RELATION" = ">=" ]; then
if [ "$ACTUAL_VERSION" >= "$CONFLICTING_VERSION" ]; then
AFFECTED=1
fi
elif [ "$RELATION" = "<=" ]; then
if [ "$ACTUAL_VERSION" <= "$CONFLICTING_VERSION" ]; then
AFFECTED=1
fi
else
if [ "$ACTUAL_VERSION" = "$CONFLICTING_VERSION" ]; then
AFFECTED=1
fi
fi
fi
if [ $AFFECTED -ne 0 ]; then
ACTUAL_CONFLICTS="$ACTUAL_CONFLICTS $CONFLICTING_PACKAGE"
printf ":: ${1} conflicts with ${CONFLICTING_PACKAGE}. Remove ${CONFLICTING_PACKAGE}? [Y/n] "
read ANSWER
if [ $ANSWER != "Y" ] && [ $ANSWER != "y" ]; then
ULTIMATE_ANSWER="n"
break
fi
fi
fi
done
if [ $ULTIMATE_ANSWER = "y" ]; then
for q in $ACTUAL_CONFLICTS; do
'pacman' -Rd ${q}
done
return 0
fi
return 1
function get_deps {
PACKAGE_NAME=`cat .PKGINFO | grep 'pkgname = ' | sed -e 's/pkgname = //g'`
# Does a few package specific things
if [ $PACKAGE_NAME = "kernel26" ]; then
ln -s /etc/uvesafb.conf /etc/uvesafb
elif [ $PACKAGE_NAME = "firefox" ]; then
cd ./usr/lib
FIREFOX_DIR=`ls | grep 'firefox'`
if [ $? -eq 0 ]; then
cd $FIREFOX_DIR/chrome
jar -xf ./browser.jar
rm ./browser.jar
sed -i -e '/console.xul/s/^/\/\//g' ./content/browser/browser.js
jar -cf browser.jar content
rm -r content
cd ../..
fi
cd ../..
elif [ $PACKAGE_NAME = "gstreamer0.10-good-plugins" ]; then
rm ./usr/lib/gstreamer0.10/libgstesd.so
fi
POSSIBLE_LIBS=`find . -type f | grep -E '(\.so\.|\.so$)'`
POSSIBLE_BINS=`find . -type f | grep -v 'PKGINFO' | grep -v -E '\/.*\.[a-zA-Z0-9]+$' | grep -v 'LICENSE'`
POSSIBLE_ELFS="$POSSIBLE_LIBS $POSSIBLE_BINS"
DEPS=""
# Makes a list of all the direct dependencies
for i in $POSSIBLE_ELFS; do
#echo "SCANNING: $i"
ldd $i >/dev/null 2>&1
if [ $? -eq 0 ]; then
# Caches the shared libraries in a file to make it easier for everything else to look them up
DIRNAME=`dirname ${i:1:${#i}}`
echo "$i" | grep -q ".so"
if [ $? -eq 0 ]; then
if [ "$DIRNAME" = "/lib" ] || [ "$DIRNAME" = "/usr/lib" ]; then
grep -q "${i:1:${#i}} $PACKAGE_NAME" /var/cache/pacman/quicklookup
# If this package's library assigned to this package was not found...
if [ $? -ne 0 ]; then
grep -q "${i:1:${#i}}" /var/cache/pacman/quicklookup
# It may have been assigned to another package so we change that
if [ $? -eq 0 ]; then
sed -i -e "/${i:1:${#i}}/d" /var/cache/pacman/quicklookup
fi
# Otherwise we just assign it to this package
echo "${i:1:${#i}} $PACKAGE_NAME" >> /var/cache/pacman/quicklookup
fi
fi
fi
# Figures out what packages own the library dependencies
POSSIBLE_DEPS=`ldd $i 2>/dev/null | grep '=> ' | grep -v '=> ' | sed -e 's/.* => //g' | sed -e 's/ (.*//g'`
for j in $POSSIBLE_DEPS; do
DIRNAME=`dirname $j`
if [ "$DIRNAME" = "/lib" ] || [ "$DIRNAME" = "/usr/lib" ]; then
OWNER=`grep "$j" /var/cache/pacman/quicklookup`
# The owner of the dep is either already in the quicklookup file
if [ $? -eq 0 ]; then
OWNER=`echo $OWNER | awk '{print $2}'`
DEPS="$DEPS $OWNER"
else
# Or it's part of the current package
BASENAME=`basename $j`
find . -name ${BASENAME} | grep -q "${BASENAME}"
if [ $? -eq 0 ]; then
echo "$j $PACKAGE_NAME" >> /var/cache/pacman/quicklookup
else
# Or we figure out its owner with pacman and put it in the quicklookup file
OWNER=`'pacman' -Qoq $j 2>/dev/null`
if [ $? -eq 0 ]; then
echo "$j $OWNER" >> /var/cache/pacman/quicklookup
DEPS="$DEPS $OWNER"
fi
fi
fi
fi
done
fi
done
# Sticks a "kernel26" between the old dependencies and the new dependencies
CURRENT_DEPS=`cat .PKGINFO | grep -E '^depend = ' | sed -e 's/depend = //g'`
DEPS="$CURRENT_DEPS kernel26a $DEPS"
# Puts them into the PKGINFO file so that all depend lines are contiguous
grep -q -E '^depend = ' .PKGINFO
if [ $? -eq 0 ]; then
FIRST_DEPEND_LINE_NUMBER=`grep -n -E '^depend = ' .PKGINFO | head -1 | sed -e 's/:.*//g'`
LAST_DEPEND_LINE_NUMBER=`grep -n -E '^depend = ' .PKGINFO | tail -1 | sed -e 's/:.*//g'`
LAST_LINE_NUMBER=`wc -l .PKGINFO | awk '{print $1}'`
(( DIFFERENCE=$LAST_LINE_NUMBER-$LAST_DEPEND_LINE_NUMBER ))
cat .PKGINFO | tail -${DIFFERENCE} > .PKGINFO-3
touch .PKGINFO-2
(( FIRST_DEPEND_LINE_NUMBER-- ))
cat .PKGINFO | head -${FIRST_DEPEND_LINE_NUMBER} > .PKGINFO-1
else
cp .PKGINFO .PKGINFO-1
touch .PKGINFO-2
touch .PKGINFO-3
fi
for k in $DEPS; do
echo "depend = $k" >> .PKGINFO-2
done
# This is all so we don't get mesa and mesa=7.5 in the same dep array
cat .PKGINFO-2 | awk '{print $3}' | sed -r 's/(>=|>|=|<|<=)/ \1/g' > .RAW-DEPS
cat .RAW-DEPS | awk '{print $1}' > .COL-1
cat .RAW-DEPS | awk '{print $2}' > .COL-2
# Got this from sed1line.txt... it removes duplicate lines
sed -i -n 'G; s/\n/&&/; /^\([ -~]*\n\).*\n\1/d; s/\n//; h; P' .COL-1
paste --delimiter="" .COL-1 .COL-2 > .RAW-DEPS
sed -i -e "/${PACKAGE_NAME}/d" .RAW-DEPS
sed -i -e 's/kernel26a/kernel26/g' .RAW-DEPS
sed -e 's/^/depend = /g' .RAW-DEPS > .PKGINFO-2
sed -i -e "/depend =[ ]*$/d" .PKGINFO-2
cat .PKGINFO-1 .PKGINFO-2 .PKGINFO-3 > .PKGINFO
rm .PKGINFO-1 .PKGINFO-2 .PKGINFO-3 .RAW-DEPS .COL-1 .COL-2
function do_install {
STARTDIR=`pwd`
cd /var/cache/pacman/tmp
for l in `ls -tr`; do
TEMP_DIR=`echo $l | sed -r 's/(-i686|-x86_64|-any|)\.pkg\.tar\.gz//g'`
# Extracts the package and makes the necessary modifications to it
mkdir $TEMP_DIR
mv $l $TEMP_DIR
cd $TEMP_DIR
tar -xf $l >/dev/null 2>&1
rm $l
remove_crap
get_deps
# Retars the package and installs it
if [ -e .INSTALL ]; then
tar -cf $l .INSTALL .PKGINFO * >/dev/null 2>&1
else
tar -cf $l .PKGINFO * >/dev/null 2>&1
fi
# Installs it and puts it in the cache
install_with_u $l
if [ $? -eq 0 ]; then
'pacman' -Udf $l
else
mv $l ../../pkg
cd ..
rm -r $TEMP_DIR
break;
fi
mv $l ../../pkg
cd ..
rm -r $TEMP_DIR
done
cd $STARTDIR
function get_answer {
read ANSWER
echo $ANSWER > /var/cache/pacman/answer
echo $ANSWER
if [ "$1" = "-Syu" ]; then
sync_check
aur_check
'pacman' --cachedir /var/cache/pacman/tmp -Syuw
do_install
elif [ "$1" = "-Su" ]; then
sync_check
aur_check
'pacman' --cachedir /var/cache/pacman/tmp -Suw
do_install
elif [ "$1" = "-S" ]; then
shift
PACKAGE_ARRAY=""
# If something we're installing is in the cache... move it to the temporary cache
for n in $@; do
if [ ${n:0:1} != "-" ]; then
NUM_MATCHES=`ls -1 /var/cache/pacman/pkg | grep -E "^${n}-" | wc -l`
for o in `seq 1 $NUM_MATCHES`; do
POSSIBLE_MATCH=`ls /var/cache/pacman/pkg | grep -E "^${n}-" -m${o} | tail -1`
HYPHENS=`echo $POSSIBLE_MATCH | sed -e "s/${n}//g" | grep -o "-" | wc -l`
if [ $HYPHENS -le 3 ]; then
mv /var/cache/pacman/pkg/${POSSIBLE_MATCH} /var/cache/pacman/tmp
# Changes the stored md5sum temporarily - I don't know a better way to do this
TEMP_DIR=`echo ${POSSIBLE_MATCH} | sed -r 's/(-i686|-x86_64|-any|)\.pkg\.tar\.gz//g'`
find /var/lib/pacman/sync -name $TEMP_DIR | grep -q $TEMP_DIR
if [ $? -eq 0 ]; then
MD5SUM=`md5sum /var/cache/pacman/tmp/${POSSIBLE_MATCH} | awk '{print $1}'`
REPOS=`find /var/lib/pacman/sync -name $TEMP_DIR | sed -e 's/\// /g' | awk '{print $5}'`
sed -i '/%MD5SUM%/G' /var/lib/pacman/sync/$REPOS/$TEMP_DIR/desc
MD5_LINE_NUMBER=`grep -n '%MD5SUM%' /var/lib/pacman/sync/$REPOS/$TEMP_DIR/desc | sed -e 's/:.*//g'`
(( MD5_LINE_NUMBER++ ))
sed -i -e "${MD5_LINE_NUMBER}s/.*/${MD5SUM}/" /var/lib/pacman/sync/$REPOS/$TEMP_DIR/desc
PACKAGE_ARRAY="${PACKAGE_ARRAY} ${REPOS}/${TEMP_DIR}"
fi
break;
fi
done
fi
done
# Pacman is run and then a function reads a y or an n from stdin and passes it to pacman's stdin
get_answer | 'pacman' --cachedir /var/cache/pacman/tmp -Sw $@
# The function also saves it in a file so we know whether to proceed or cancel because pacman was cancelled
LETTER=`cat /var/cache/pacman/answer`
if [ "$LETTER" != "y" ] || [ "$LETTER" != "Y" ]; then
do_install
else
# If anything got moved to the temporary cache for this it is sent back to the main one
FILES_IN_CACHE=`ls /var/cache/pacman/tmp | wc -l`
if [ $FILES_IN_CACHE -ne 0 ]; then
mv /var/cache/pacman/tmp/* /var/cache/pacman/pkg
fi
fi
# Changes all the md5sums back
for w in $PACKAGE_ARRAY; do
MD5_LINE_NUMBER=`grep -n '%MD5SUM%' /var/lib/pacman/sync/$w/desc | sed -e 's/:.*//g'`
(( MD5_LINE_NUMBER++ ))
sed -i -e "${MD5_LINE_NUMBER}d" /var/lib/pacman/sync/$w/desc
done
elif [ "$1" = "-U" ]; then
STARTDIR=`pwd`
TEMP_DIR=`echo $2 | sed -r 's/(-i686|-x86_64|-any|)\.pkg\.tar\.gz//g'`
mkdir /var/cache/pacman/$TEMP_DIR
cp "$2" /var/cache/pacman/$TEMP_DIR
cd /var/cache/pacman/$TEMP_DIR
tar -xf $2 >/dev/null 2>&1
rm $2
get_deps
# Retars the package and installs it
if [ -e .INSTALL ]; then
tar -cf $2 .INSTALL .PKGINFO * >/dev/null 2>&1
else
tar -cf $2 .PKGINFO * >/dev/null 2>&1
fi
install_with_u $2
if [ $? -eq 0 ]; then
'pacman' -U $2
fi
cd ..
rm -r $TEMP_DIR
cd $STARTDIR
elif [ "$1" = "-Qi" ] || [ "$1" = "-Qii" ]; then
INITIAL_ARG=$1
shift
if [ "$INITIAL_ARG" = "-Qi" ]; then
'pacman' -Qi $@ > /var/cache/pacman/tempquery
else
'pacman' -Qii $@ > /var/cache/pacman/tempquery
fi
if [ $? -ne 0 ] || [ ! -e /var/cache/pacman/tempquery ]; then
exit 1
fi
# Filters out all deps after kernel26 for a regular query
# Filters out all deps before kernel26 for a verbose query
if [ $? -eq 0 ]; then
START_LINE_NUMBER=`cat /var/cache/pacman/tempquery | grep -n 'Depends On' | sed -e 's/:.*//g'`
LINE_NUMBER=$START_LINE_NUMBER
(( LINE_NUMBER=$LINE_NUMBER+1 ))
cat /var/cache/pacman/tempquery | head -${LINE_NUMBER} | tail -1 | grep ':'>/dev/null 2>&1
while [ $? -ne 0 ]; do
(( LINE_NUMBER=$LINE_NUMBER+1 ))
cat /var/cache/pacman/tempquery | head -${LINE_NUMBER} | tail -1 | grep ':'>/dev/null 2>&1
done
(( END_LINE_NUMBER=$LINE_NUMBER-1 ))
(( DIFFERENCE=$LINE_NUMBER-$START_LINE_NUMBER ))
OLD_DEP_LIST=`cat /var/cache/pacman/tempquery | head -${END_LINE_NUMBER} | tail -${DIFFERENCE} | sed -e 's/.* : //g' | sed -e 's/ //g'`
for k in $OLD_DEP_LIST; do
if [ "$INITIAL_ARG" = "-Qi" ]; then
if [ "$k" != "kernel26" ]; then
NEW_DEP_LIST="$NEW_DEP_LIST $k"
else
break
fi
else
if [ "$k" != "kernel26" ]; then
NEW_DEP_LIST="$NEW_DEP_LIST $k"
fi
fi
done
fi
# Removes the old deps array and replaces it with the new one
sed -i -e "${START_LINE_NUMBER},${END_LINE_NUMBER}d" /var/cache/pacman/tempquery
(( START_LINE_NUMBER=$START_LINE_NUMBER-1 ))
END_LINE_NUMBER=`wc -l /var/cache/pacman/tempquery | awk '{print $1}'`
(( DIFFERENCE=$END_LINE_NUMBER-$START_LINE_NUMBER ))
cat /var/cache/pacman/tempquery | head -${START_LINE_NUMBER} > /var/cache/pacman/tempquery-1
cat /var/cache/pacman/tempquery | tail -${DIFFERENCE} > /var/cache/pacman/tempquery-3
CURRENT_LINE=""
CURRENT_LINE_NUMBER=1
for m in $NEW_DEP_LIST; do
if (( ${#CURRENT_LINE}+${#m}+1<=63 )); then
CURRENT_LINE="$CURRENT_LINE $m"
else
if [ $CURRENT_LINE_NUMBER -eq 1 ]; then
printf "Depends On :$CURRENT_LINE\n" >> /var/cache/pacman/tempquery-2
else
printf "\t\t$CURRENT_LINE\n" >> /var/cache/pacman/tempquery-2
fi
CURRENT_LINE=" $m"
CURRENT_LINE_NUMBER=0
fi
done
if [ $CURRENT_LINE_NUMBER -eq 1 ]; then
printf "Depends On :$CURRENT_LINE\n" >> /var/cache/pacman/tempquery-2
else
printf "\t\t$CURRENT_LINE\n" >> /var/cache/pacman/tempquery-2
fi
cat /var/cache/pacman/tempquery-1 /var/cache/pacman/tempquery-2 /var/cache/pacman/tempquery-3 > /var/cache/pacman/tempquery
# Removes the requirements array for a regular query
if [ "$INITIAL_ARG" = "-Qi" ]; then
START_LINE_NUMBER=`cat /var/cache/pacman/tempquery | grep -n 'Required By' | sed -e 's/:.*//g'`
LINE_NUMBER=$START_LINE_NUMBER
(( LINE_NUMBER=$LINE_NUMBER+1 ))
cat /var/cache/pacman/tempquery | head -${LINE_NUMBER} | tail -1 | grep ':'>/dev/null 2>&1
while [ $? -ne 0 ]; do
(( LINE_NUMBER++ ))
cat /var/cache/pacman/tempquery | head -${LINE_NUMBER} | tail -1 | grep ':'>/dev/null 2>&1
done
(( END_LINE_NUMBER=$LINE_NUMBER-1 ))
sed -i -e "${START_LINE_NUMBER},${END_LINE_NUMBER}d" /var/cache/pacman/tempquery
fi
cat /var/cache/pacman/tempquery
rm /var/cache/pacman/tempquery /var/cache/pacman/tempquery-1 /var/cache/pacman/tempquery-2 /var/cache/pacman/tempquery-3
elif [ "$1" = "-Scc" ]; then
LINE_NUMBER=0
for z in `cat /var/cache/pacman/quicklookup | awk '{print $1}'`; do
(( LINE_NUMBER++ ))
if [ ! -e $z ]; then
sed -i -e "${LINE_NUMBER}d" /var/cache/pacman/quicklookup
(( LINE_NUMBER-- ))
fi
done
'pacman' -Scc
else
'pacman' $@
fi
Last edited by ConnorBehan (2009-09-19 00:42:48)rls wrote:ABS is fine, but unless I am mistaken, it does nothing to ensure the configure and make stages go smoothly. It is a good way to integrate "home-rolled" packages into the Arch system.
hmmmm... I could be wrong because I've never used Gentoo, but if you make a package that doesn't already exist for Gentoo, does it do anything to make sure the compilation goes smoothly? If the package exists, then there is a way to build the package that has been tested by somebody else. This is how ABS works too; if a PKGBUILD exists, you can be reasonably sure it will work.
I can't imagine a program that can automatically fix or recover from compiler or Makefile errors. If it does, then... wow.
I assume that Gentoo has a larger package base than Arch, but let's not get into that discussiong again!
Xentacs script is basically designed to allow you to choose whether you are going to install from source or binary. Assuming the PKGBUILDS are in order (which for arch repository programs they are, because the binaries were built from them!), this should work as flawlessly as installing from binaries.
Dusty -
We used to share a single App Store ID so we could see all our family devices, share iDrive space for backups, share App and music purchases, and share notes and reminders. We had separate IDs for iMessage. Now with "Family Share" we can do some of that but we lose shared reminders, notes and iDrive space. Why can't the iDrive space be family based? We also need shared spaces for notes, reminders, and such. I feel we are being forced to move to "Family Share" with the new features where you can move work from device to device and that would not work well with multiple people using the same account.
If you previously had the same iCloud account on all devices and now have different ones on each you might just need to share the calendars, notes and reminders with the other family members iCloud accounts.
If everyone had been using [email protected] and now they have started using [email protected] and [email protected] you could add the [email protected] account on each device and only turn on Notes and Reminders. -
DPS - How many apps can i have?
Dears,
We're an agency from brazil, an we are developing some apps. How many apps single or multi-folio can we have on DPS and on Apple Store at the same time? Is there a limit on the Professional Edition?
Can my downloads be divided by many apps? eg. Can I have 2 apps at the same time and they share my 5000 annual .folio downloads?Hi Bruno,
There is no limit to the number of apps you can create within DPS Pro or Enterprise. The distribution bundle will be shared amongs all your multi-folio apps.
With kind regards,
Klaasjan Tukker -
DPS catalogues: in-app purchase of physical goods via native widget vs webview or safari
Has anyone found an alternative to allow for in-app purchasing of physical goods from a DPS catalogue via a native e-commerce module or widget vs webview or safari?
Thanks,
JasonThey used InDesign. All of the in-ap purchase is done using their existing website. They just put hyperlinks into the DPS publication with the appropriate information in the URL to load the right page on their website when tapped.
Neil -
Hi there...I am wondering if anyone else is having issues using the "Check In" feature while on the 3G with apps such as Facebook or Four Square? It works fine for me if I am connected to a wi-fi network but once I am out and about using the 3G it appears the GPS/Sat can't find my location...I also seem to have this issue with the maps; it just points to my last known wi-fi location. It kinda sucks cause I can't check in anywhere with foursquare and get the coupons/discounts. Any help appreciated. Thanks.
For whatever reason the 3G signal seems to be pretty weak inside buildings...so after a bit of testing I let the Maps app find me while outside in the parking lot THEN proceeded to use said "Check In" feature and now it works...it bugs me tho that I have to let the GPS find me outside cause it can't find me inside a building.
-
Adobe CS6 is out! new DPS features?
Adobe CS6 is out! Will that bring new features to DPS or viceversa?
Thank you,
al3naiI am so excited CS6 is finally out
There's one big feature that should interest DPS folks: alternate layouts. In InDesign CS6 you can now have one InDesign file that contains layouts for multiple orientations and/or devices.
Here's one easy example of where that's helpful: no more "_H" and "_V" files littering your machine. Just one InDesign document that has both H and V inside. Here's another example: one file that has your iPad and your Kindle Fire layouts in it.
The best part about this is the text is linked between the layouts, so if you have to make a text change somewhere you can do it once, the links panel will indicate the other layouts are out-of-date, and you can update the link to make the change ripple across the other layouts in the file. Typo correction is now far less painful.
You can also use the new page rules feature to define ways for InDesign to automatically create layouts for you. For example, you can start with an iPad layout, apply some page rules, and generate the Kindle Fire layout.
One small feature to look forward to: you can directly paste HTML snippets into your file and automatically get a web overlay with that HTML.
Note that to actually produce folios using the above you'll need the next release of DPS. The current release (v19) does not support CS6.
Neil -
Mix native iOS development with Adobe DPS created iPad apps
Is it possible to mix programmtic elements into an app developed with the Adobe DPS tools?
Although one can hook up buttons and gestures for slide shows, as I've seen in some of the videos, I need to build a hybrid app where a section of the app hands control over to a native IOS built set of components.
I'm coming from the iOS development side of things, so I know little of the capabilities of a client's InDesign and DPS toolset, except that I haven't found resources to do anything beyond simple interactions within DPS.No, you can't include native iOS components in a DPS publication. For extensibility people tend to write HTML5 content and include that in a web overlay.
Neil -
Publishing DPS single edition apps to google play store /amazon?
Hello,
is it possible to deploy DPS apps not only to iOS, but also to android and amazon versions and publish them in the corresponding stores? Or does this work only for multi-issue apps?
Thank you,
RalfHi Rallescreen,
No. Single Edition is only for iPad devices. However, Professional Edition and Enterprise Edition allow publication to the Android platform as well. Those two editions include Content Viewer for iPad, Content Viewer for Android, and Content Viewer for Desktop, so you can create content for iPad and all Android based tablets.
For more information please refer FAQ on Single Edition.
http://www.adobe.com/in/products/digital-publishing-suite-single/faq.html
Hope this helps.
Regards,
Sumit Singh -
What are the features in the enterprise version of DPS that are not available in the demo version?
@Sudhanshu, as I replied to your query on the other thread, you may not be logged in with the correct credentials or your account may not be provisioned for the trial. PM me the e-mail used to set up your DPS trial account and I'll double check for you.
Maybe you are looking for
-
Getting Error While creating the iViews in EP.
Dear Experts, I am getting the below error while creating the new iViews in the EP. Application error occurred during request processing. Details: com.sap.tc.webdynpro.services.sal.core.DispatcherException: Failed to start deployable object sap.c
-
How to install and use a client certificate for use with https sites on Android?
I need to be able to install a .p12 client side certificate to be sent to the admin section of my company's site to authenticate me as an employee. In FireFox for PC there is the ability to install this client certificate. In the mobile I cannot figu
-
I have published a website with iWeb on MobileMe quite successfully. I purchased a second domain name, and republished the same site on GoDaddy before trying to point my MobileMe website name to the GoDaddy server. I was unable to upload several pic
-
Installation of ECC6 on AIX/ DB2 taking long time
Hi, I am installing SAP ECC 6 on a heavy power server with AIX 5.3 with DB2 9 and amd all the other setting is perfect with correct JDK version. The first 24 step on installation went fine in 20 min and its been more than 16 hrs where installation is
-
Thunderbolt updates do more harm than good
When I got the Thunderbolt on the release date I was lucky enough to get a phone that was functioning perfectly. I didn't have any connection or reboot errors that were being reported from launch. Then came the first update a few months ago...suddenl