Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Mar 7th, 2011  |  syntax: Diff  |  size: 18.71 KB  |  views: 164  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. diff -rNu fbsplash.34/fbsplash-basic.sh fbsplash.35/fbsplash-basic.sh
  2. --- fbsplash.34/fbsplash-basic.sh       1970-01-01 10:13:08.000000000 +0100
  3. +++ fbsplash.35/fbsplash-basic.sh       2011-03-04 12:05:18.000000000 +0100
  4. @@ -12,18 +12,20 @@
  5.  
  6.  [[ $PREVLEVEL && $RUNLEVEL ]] || return 0
  7.  
  8. -# Do nothing if improved scripts are installed
  9. -[ -r /etc/rc.d/functions.d/fbsplash-extras.sh ] && return
  10. +# Do nothing if advanced script is installed
  11. +[[ -r /etc/rc.d/functions.d/fbsplash-extras.sh ]] && return
  12.  
  13.  # Only do this where needed
  14.  # Since we use BASH, all important functions and variables are exported
  15.  case ${0#/etc/rc.} in sysinit | multi | shutdown )
  16. -       export SPLASH_PUSH_MESSAGES="no"
  17. -       export SPLASH_VERBOSE_ON_ERRORS="no"
  18. +       # splash-functions.sh will run splash_setup which needs /proc
  19. +       # code line copied from /etc/rc.sysinit
  20. +       /bin/mountpoint -q /proc || /bin/mount -n -t proc proc /proc -o nosuid,noexec,nodev
  21. +       export SPLASH_PUSH_MESSAGES SPLASH_VERBOSE_ON_ERRORS
  22.         . /sbin/splash-functions.sh # /etc/conf.d/splash is also sourced by this
  23.         unset options opt i # eliminate splash_setup non local vars   ## FIX ME ##
  24. -       declare -ix SPLASH_STEPS=3 # sysinit steps
  25. -       declare -ix SPLASH_STEPS_DONE=0
  26. +       SPLASH_STEPS=3 # sysinit steps
  27. +       SPLASH_STEPS_DONE=0
  28.  esac
  29.  
  30.  # Verbose mode is handled by fbcondecor kernel patch and daemon script
  31. @@ -59,7 +61,7 @@
  32.                 splash_progress
  33.         }
  34.         splash_sysinit_postfsck() { # fsck failure emergency exit
  35. -               [ ${fsckret} -gt 1 -a ${fsckret} -ne 32 ] && chvt 1
  36. +               (( fsckret > 1 && fsckret != 32 )) && chvt 1
  37.         }
  38.         splash_sysinit_end() {
  39.                 splash_progress
  40. @@ -131,7 +133,7 @@
  41.                 case $daemon in $SPLASH_XSERVICE | @$SPLASH_XSERVICE ) break
  42.                 ;; \!* |@* ) continue
  43.                 esac
  44. -               SPLASH_STEPS+=1
  45. +               (( SPLASH_STEPS++ ))
  46.         done
  47.  }
  48.  
  49. @@ -141,7 +143,6 @@
  50.  }
  51.  
  52.  # Start the splash daemon - using upstream function
  53. -splash_set_event_dev() { :; } # override - Never grab the keyboard
  54.  splash_begin() {
  55.         if ! [[ $( /bin/pidof -o %PPID $spl_daemon ) ]]; then
  56.                 stat_busy "Starting Fbsplash daemon"
  57. diff -rNu fbsplash.34/fbsplash.initcpio_hook fbsplash.35/fbsplash.initcpio_hook
  58. --- fbsplash.34/fbsplash.initcpio_hook  1970-01-01 10:13:08.000000000 +0100
  59. +++ fbsplash.35/fbsplash.initcpio_hook  2011-03-04 10:56:15.000000000 +0100
  60. @@ -1,99 +1,49 @@
  61.  run_hook ()
  62.  {
  63. -       SPLASH_INIT_MESSAGE="Initializing the kernel"
  64. -       SPLASH_MODE_REQ="off"
  65. -       SPLASH_THEME="default"
  66. -       SPLASH_TTY=16
  67. -       SPLASH_TEXTBOX="no"
  68. -       SPLASH_AUTOVERBOSE=0
  69. -
  70. -       . /etc/conf.d/splash
  71. -
  72. -       # Kernel parameters override config file
  73. -       local ifs="$IFS"
  74. -       IFS=','
  75. -       set -- $splash
  76. -       IFS="$ifs"
  77. -       local arg effects
  78. -       for arg in "$@"; do
  79. -               case "$arg"
  80. -               in off      ) SPLASH_MODE_REQ="off"
  81. -               ;; silent   ) SPLASH_MODE_REQ="silent"
  82. -               ;; verbose  ) SPLASH_MODE_REQ="verbose"
  83. -               ;; theme:?* ) SPLASH_THEME="${arg#theme:}"
  84. -               ;;   tty:?* ) SPLASH_TTY="${arg#tty:}"
  85. -               ;; insane   ) SPLASH_SANITY="insane"
  86. -               ;; fadein | fadeout ) effects="$effects,$arg"
  87. -               esac
  88. -       done
  89. -       if [ -n "$effects" ]; then
  90. -               SPLASH_EFFECTS="${effects#,}"
  91. -       fi
  92. -
  93. -       if [ "${SPLASH_MODE_REQ}" != "silent" ]; then
  94. -               return
  95. -       fi
  96. -
  97. -       if ! [ "$console" = tty1 -o "$SPLASH_SANITY" = insane ]; then
  98. -               err "Fbsplash requires console=tty1 in kernel line!"
  99. -               return 1
  100. -       fi
  101. -
  102. -       # Start the daemon here if possible
  103. -       # to show animations early and gain some bootup speed
  104. -       if [ -x /sbin/fbsplashd.static ]; then
  105. -               if [ -x /etc/splash/"$SPLASH_THEME"/scripts/rc_init-pre ]; then
  106. -                       msg "Found '/etc/splash/$SPLASH_THEME/scripts/rc_init-pre'"
  107. -                       msg "Not starting Fbsplash daemon - no theme hook support in initcpio."
  108. -               else
  109. +       # avoid exporting configuration
  110. +       (
  111. +               SPLASH_INIT_MESSAGE="Initializing the kernel"
  112. +               # Get configuration and functions (faking sysinit for config file hacks)
  113. +               PREVLEVEL=N; RUNLEVEL=S
  114. +               . /sbin/splash-functions.sh
  115. +               unset PREVLEVEL RUNLEVEL
  116. +
  117. +               [ "${SPLASH_MODE_REQ}" = "silent" ] || exit 0
  118. +
  119. +               # Start the daemon here if possible
  120. +               # to show animations early and gain some bootup speed
  121. +               if [ -x /sbin/fbsplashd.static ]; then
  122.                         msg "Starting Fbsplash Daemon"
  123. -                       (
  124. -                               set -e
  125. -                               # Hold the cache and fifo within /dev to get it moved to the new root
  126. -                               mkdir /dev/.splash-cache
  127. -                               # code line derived from splash-functions.sh
  128. -                               mount -t tmpfs cachedir /dev/.splash-cache -o rw,mode=0644,size=4096k
  129. -                               # Take over any existing cache content
  130. -                               mkdir -p /lib/splash/cache
  131. -                               mv /lib/splash/cache /lib/splash/.splash-cache
  132. -                               cp -a /lib/splash/.splash-cache /dev/
  133. -                               ln -s /dev/.splash-cache /lib/splash/cache
  134. -                               mkfifo -m 600 /lib/splash/cache/.splash
  135. -                               # Wait for any fbcondecor fadein - may take very long on some broken systems
  136. -                               i=0
  137. -                               while [ -n "$( pidof fbcondecor_helper )" ]; do
  138. -                                       if [ $i -ge 50 ]; then
  139. -                                               err "timeout on waiting for fbcondecor_helper to die!"
  140. -                                               exit 1
  141. -                                       fi
  142. -                                       sleep .1
  143. -                                       i=$(( i + 1 ))
  144. -                               done
  145. -                               # Actually start the daemon
  146. -                               options=""
  147. -                               [ -n "$SPLASH_THEME"      ] && options="$options --theme=$SPLASH_THEME"
  148. -                               [ -n "$SPLASH_EFFECTS"    ] && options="$options --effects=$SPLASH_EFFECTS"
  149. -                               [ "$SPLASH_TEXTBOX" = yes ] && options="$options --textbox"
  150. -                               cd /dev/.splash-cache
  151. -                               BOOT_MSG="${SPLASH_INIT_MESSAGE}" \
  152. -                                       /sbin/fbsplashd.static --type=bootup --pidfile=daemon.pid $options
  153. -                               (
  154. -                                       echo set tty silent $SPLASH_TTY
  155. -                                       echo set mode silent
  156. -                                       echo repaint
  157. -                                       echo set autoverbose $SPLASH_AUTOVERBOSE
  158. -                               ) >/lib/splash/cache/.splash &
  159. -                       )
  160. -                       return
  161. +                       set -e
  162. +                       # Mount the cache within /dev to get it moved to the new root
  163. +                       mkdir /dev/.splash-cache
  164. +                       ( spl_cachedir=/dev/.splash-cache; splash_cache_prep )
  165. +                       # Take over any existing cache content
  166. +                       mkdir -p $spl_cachedir
  167. +                       parent=$( dirname $spl_cachedir )
  168. +                       mv $spl_cachedir $parent/.splash-cache
  169. +                       cp -a $parent/.splash-cache /dev/
  170. +                       # Symlink for starting the daemon
  171. +                       ln -s /dev/.splash-cache $spl_cachedir
  172. +                       # Wait for any fbcondecor fadein - may take very long on some broken systems
  173. +                       i=0
  174. +                       while [ -n "$( pidof fbcondecor_helper )" ]; do
  175. +                               if [ $i -ge 50 ]; then
  176. +                                       err "timeout on waiting for fbcondecor_helper to die!"
  177. +                                       exit 1
  178. +                               fi
  179. +                               sleep .1
  180. +                               i=$(( i + 1 ))
  181. +                       done
  182. +                       # Actually start the daemon
  183. +                       cd /dev/.splash-cache
  184. +                       set +e
  185. +                       SPLASH_BOOT_MESSAGE="${SPLASH_INIT_MESSAGE}"
  186. +                       splash_start && sleep .1 # allow the daemon to open the event dev
  187. +                       exit
  188.                 fi
  189. -       fi
  190.  
  191. -       # Start the fbcondecor helper if not already done by fbcondecor kernel
  192. -       (
  193. -               # code copied from splash-functions.sh
  194. -               fbcondecor_supported() {
  195. -                       [ -e /dev/fbsplash -o -e /dev/fbcondecor ]
  196. -               }
  197. +               # Start the fbcondecor helper if not already done by fbcondecor kernel
  198.                 if ! fbcondecor_supported; then
  199.                         BOOT_MSG="${SPLASH_INIT_MESSAGE}" \
  200.                                 /sbin/fbcondecor_helper 2 init 0 0 $SPLASH_THEME
  201. diff -rNu fbsplash.34/fbsplash.initcpio_install fbsplash.35/fbsplash.initcpio_install
  202. --- fbsplash.34/fbsplash.initcpio_install       1970-01-01 10:13:08.000000000 +0100
  203. +++ fbsplash.35/fbsplash.initcpio_install       2011-03-07 08:57:08.000000000 +0100
  204. @@ -1,104 +1,95 @@
  205.  
  206.  install() {
  207. -       (
  208. -               . /etc/conf.d/splash
  209. -
  210. -               if /bin/mountpoint -q /lib/splash/cache; then
  211. -                       /bin/umount /lib/splash/cache
  212. -               fi
  213. -
  214. -               # Add the helper
  215. -               add_binary /sbin/fbcondecor_helper
  216. -
  217. -               # Add the daemon for early start
  218. -               if [[ $SPLASH_DAEMON = early ]]; then
  219. -                       add_binary /sbin/fbsplashd.static
  220. +       # Add config file, splash-functions and the helper
  221. +       add_file   /etc/conf.d/splash
  222. +       add_file   /sbin/splash-functions.sh
  223. +       add_binary /sbin/fbcondecor_helper
  224. +
  225. +       # Get in configuration, parameters and functions
  226. +       . /etc/conf.d/splash
  227. +       . /sbin/splash-functions.sh
  228. +
  229. +       # Unmount any stale cache tmpfs
  230. +       splash_cache_cleanup
  231. +
  232. +       SPLASH_PROFILE=off
  233. +
  234. +       if [[ $SPLASH_DAEMON = early ]]; then
  235. +               # Add stuff needed to run splash_start function (except optional evdev module)
  236. +               add_dir    $spl_tmpdir
  237. +               add_binary $spl_daemon
  238. +               if [[ -e /etc/rc.d/functions.d/fbsplash-extras.sh ]]; then
  239. +                       . /etc/rc.d/functions.d/fbsplash-extras.sh
  240. +                       # Add files from a prepared cache (faking sysinit)
  241. +                       splash_cache_prep_initcpio && add_full_dir $spl_cachedir
  242.                 fi
  243. +       fi
  244.  
  245. -               # Add a clean config file avoiding errors when running the hook
  246. -               file=$( /usr/bin/mktemp )
  247. -               for var in SPLASH_INIT_MESSAGE SPLASH_MODE_REQ SPLASH_THEME SPLASH_TTY \
  248. -                          SPLASH_AUTOVERBOSE SPLASH_EFFECTS SPLASH_TEXTBOX
  249. -               do
  250. -                       eval value=\"\$$var\"
  251. -                       [ -n "$value" ] && echo $var="'$value'"
  252. -               done >|$file
  253. -               add_file $file /etc/conf.d/splash
  254. -
  255. -               # List file paths contained in given Fbsplash theme cfg file
  256. -               _get_cfg_files() {
  257. -                       < "$1" /bin/sed -re '
  258. -                               # convert all whitespace into single blanks
  259. -                               s,[[:space:]]+, ,g ; t L1
  260. -                               :L1
  261. -                               # drop comments, grouping directives and blank lines
  262. -                               /^ *([#<]|$)/ d
  263. -                               # get a filepath or drop
  264. -                               s,.*[ =]([^ ]*/[^ ]+).*,, ; t ; d
  265. -                       ' | /usr/bin/sort -u
  266. -               }
  267. -
  268. -               # Check if cfg file name or path
  269. -               _match_cfg() {
  270. -                       [[ "$1" =~ (^|/)[0-9]+x[0-9]+\.cfg$ ]]
  271. -               }
  272. -
  273. -               # Add non-cfg files in given dir
  274. -               _add_non_cfg_files() {
  275. -                       local file dir="$1"
  276. -                       for file in $( /bin/ls "$dir" ); do
  277. -                               if [ -f "$dir/$file" ]; then
  278. -                                       _match_cfg "$file" || add_file "$dir/$file"
  279. -                               fi
  280. -                       done
  281. -               }
  282. -
  283. -               # Add global non-cfg files
  284. -               _add_non_cfg_files /etc/splash
  285. -
  286. -               # Add themes
  287. -               dirs=""
  288. -               for theme in ${SPLASH_THEMES[*]}; do # string list and array allowed
  289. -                       [ ${theme:0:1} = / ] || theme=/etc/splash/$theme
  290. -                       if [ -f $theme ]; then
  291. -                               if ! _match_cfg $theme; then
  292. -                                       err "Not a valid theme cfg file name: $theme"
  293. -                                       continue
  294. -                               fi
  295. -                               add_file $theme || continue
  296. -                               dir=$( dirname $theme )
  297. -                               # Add non-cfg files in theme dir
  298. -                               _add_non_cfg_files $dir
  299. -                               # Add files refered in cfg file by paths
  300. -                               for file in $( _get_cfg_files $theme ); do
  301. -                                       if [ ${file:0:1} = / ]; then
  302. -                                               add_file $file
  303. -                                               continue
  304. -                                       fi
  305. -                                       # Path may be relative to theme-dir or to /etc/splash
  306. -                                       [ -e $dir/$file -o ! -f /etc/splash/$file ] && add_file $dir/$file
  307. -                                       [ -e /etc/splash/$file -o ! -f $dir/$file ] && add_file /etc/splash/$file
  308. +       # List file paths contained in given Fbsplash theme cfg files
  309. +       # (Only file paths containing at least one slash will be found by this.)
  310. +       fbsplash_list_paths() {
  311. +               (( $# )) || return 0
  312. +               /bin/sed -re '
  313. +                       # convert all whitespace into single blanks
  314. +                       s,[[:space:]]+, ,g ; t L1
  315. +                       :L1
  316. +                       # drop comments, grouping directives and blank lines
  317. +                       /^ *([#<]|$)/ d
  318. +                       # get a filepath or drop
  319. +                       s,.*[ =]([^ ]*/[^ ]+).*,, ; t ; d
  320. +               ' "$@" | /usr/bin/sort -u
  321. +       }
  322. +
  323. +       # Check if arg is a theme cfg file path
  324. +       fbsplash_is_cfg() {
  325. +               [[ $1 =~ ^/etc/splash/[^/]+/[0-9]+x[0-9]+\.cfg$ ]]
  326. +       }
  327. +
  328. +       # Add all files referenced by path in given theme cfg files
  329. +       # args: <theme-root-dir> <cfg-file>...
  330. +       fbsplash_add_files_from_cfgs() {
  331. +               local file theme_dir=$1; shift
  332. +               while read file; do
  333. +                       if [[ $file == /* ]]; then
  334. +                               add_file $file
  335. +                       else # Path may be relative to /etc/splash or theme-dir
  336. +                               local found=0
  337. +                               for file in /etc/splash/$file "$theme_dir"/$file; do
  338. +                                       [[ -f $file ]] && { add_file $file; found=1; }
  339.                                 done
  340. -                       elif [ -d $theme ]; then
  341. -                               dir=$theme
  342. -                               add_full_dir $dir
  343. -                       else
  344. -                               err "Theme not found: $theme"
  345. -                               continue
  346. +                               (( found )) || err "Theme '${theme_dir##*/}': File not found: '$file'"
  347.                         fi
  348. -                       if [[ " "$dirs" " != *" "$dir" "* ]]; then
  349. -                               dirs+=" "$dir
  350. -                       fi
  351. -               done
  352. -               for dir in $dirs; do
  353. -                       # Add the rc_init-pre script if we have one
  354. -                       # Currently this just prevents early daemon start for the theme
  355. -                       if [[ $SPLASH_DAEMON = early && -x $dir/scripts/rc_init-pre ]]; then
  356. -                               add_file $dir/scripts/rc_init-pre || continue
  357. -                               echo "WARNING: rc_init-pre script found - no early daemon with '${dir##*/}'!" >&2
  358. -                       fi
  359. -               done
  360. -       )
  361. +               done < <( fbsplash_list_paths "$@" )
  362. +       }
  363. +
  364. +       # Add common files (may be referenced in cfg by plain file name)
  365. +       local file
  366. +       for file in /etc/splash/*; do
  367. +               [[ -f $file ]] && add_file "$file"
  368. +       done
  369. +
  370. +       # Add themes
  371. +       local file theme
  372. +       for theme in $SPLASH_THEMES; do
  373. +               if [[ -d /etc/splash/$theme && $theme != */* ]]; then
  374. +                       add_full_dir /etc/splash/$theme
  375. +                       local files=()
  376. +                       for file in /etc/splash/$theme/*.cfg; do
  377. +                               [[ -f $file ]] && fbsplash_is_cfg "$file" && files+=( $file )
  378. +                       done
  379. +                       fbsplash_add_files_from_cfgs /etc/splash/$theme "${files[@]}"
  380. +               elif [[ -f /etc/splash/$theme ]] && fbsplash_is_cfg /etc/splash/$theme; then
  381. +                       file=/etc/splash/$theme; theme=${theme%/*}
  382. +                       add_file $file
  383. +                       fbsplash_add_files_from_cfgs /etc/splash/$theme $file
  384. +                       # Add all non-cfg files from theme dir (may be referenced by plain file name)
  385. +                       for file in /etc/splash/$theme/*; do
  386. +                               [[ -f $file ]] && ! fbsplash_is_cfg "$file" && add_file "$file"
  387. +                       done
  388. +               else
  389. +                       err "Theme invalid or not found: '$theme'"
  390. +               fi
  391. +       done
  392.  
  393.         SCRIPT="fbsplash"
  394.  }
  395. @@ -106,8 +97,7 @@
  396.  help() {
  397.  cat<<HELPEOF
  398.    This hook adds the FBconDecor helper and Fbsplash themes and maybe the
  399. -  Fbsplash daemon as specified in /etc/conf.d/splash. Put it after udev
  400. -  for early daemon start or when using a FBconDecor kernel.
  401. +  Fbsplash daemon as specified in /etc/conf.d/splash.
  402.  HELPEOF
  403.  }
  404.  
  405. diff -rNu fbsplash.34/PKGBUILD fbsplash.35/PKGBUILD
  406. --- fbsplash.34/PKGBUILD        2011-02-12 22:56:31.000000000 +0100
  407. +++ fbsplash.35/PKGBUILD        2011-03-07 12:34:20.391593823 +0100
  408. @@ -3,7 +3,7 @@
  409.  
  410.  pkgname=fbsplash
  411.  pkgver=1.5.4.3
  412. -pkgrel=34
  413. +pkgrel=35
  414.  pkgdesc="A userspace implementation of a splash screen for Linux (formerly known as gensplash)"
  415.  arch=('i686' 'x86_64')
  416.  url="http://fbsplash.berlios.de"
  417. @@ -19,6 +19,7 @@
  418.  install=fbsplash.install
  419.  source=(http://dev.gentoo.org/~spock/projects/gensplash/archive/splashutils-${pkgver}.tar.bz2
  420.          fbsplash.git.patch
  421. +        splash_start_initcpio.patch
  422.          splash.conf
  423.          fbsplash-basic.sh
  424.          fbsplash.initcpio_install
  425. @@ -27,10 +28,11 @@
  426.          fbcondecor.conf)
  427.  md5sums=('c722cd4148817b9c50381d9bdc1ea6ef'
  428.           '3a338c60ed0710c8b7e3e08929db521a'
  429. -         'dd6d7ecad8e953754f90de683f0d5a33'
  430. -         'e69753dac753b8ba4e2e29ef5a9c46ca'
  431. -         'e29b3db6ee059b9950febe976a0f2881'
  432. -         'ac2351bc918b101bb9249ce8940722be'
  433. +         '4045e315c52f5a576fca4f7e634eeb91'
  434. +         '90708a96038d7d7921c2e9fde938c058'
  435. +         '898c6633058909e7c2bbf4cf4567ceb8'
  436. +         '3f24687935f635279ac88e33241c7ba0'
  437. +         '1aff36f1ef3e052be3b4a016ef593981'
  438.           '715926469d05eecd345c052e6248ca32'
  439.           'b3db9d4fd902b62ac9e38589677e2d16')
  440.  
  441. @@ -44,6 +46,9 @@
  442.    # fix fbcondecor_ctl splash type
  443.    sed -e 's,fbsplash_lib_init(fbspl_bootup),fbsplash_lib_init(fbspl_undef),' -i src/fbcon_decor_ctl.c
  444.  
  445. +  # fix set_event_dev call for initcpio usage (if evdev module is there)
  446. +  patch -Np2 -i ${srcdir}/splash_start_initcpio.patch
  447. +
  448.    ./configure --prefix=/usr --sysconfdir=/etc --without-klibc --enable-fbcondecor --with-gpm --with-mng --with-png --with-ttf --with-ttf-kernel
  449.    make
  450.  }
  451. diff -rNu fbsplash.34/splash.conf fbsplash.35/splash.conf
  452. --- fbsplash.34/splash.conf     2010-07-10 01:38:47.000000000 +0200
  453. +++ fbsplash.35/splash.conf     2011-03-06 15:45:55.000000000 +0100
  454. @@ -2,17 +2,21 @@
  455.  # /etc/conf.d/splash
  456.  #
  457.  
  458. +####  WARNING!
  459. +## This file is also sourced in the initcpio hook.
  460. +## No BASH-code (like arrays) is allowed here!
  461. +
  462.  ####  initcpio and Fbsplash daemon  ##########################################
  463.  
  464.  ## Themes to include into initcpio
  465.  ## For a smaller initcpio you may try theme cfg files instead of directories.
  466. -SPLASH_THEMES=(
  467. +SPLASH_THEMES="
  468.      arch-black
  469.      arch-banner-icons/1024x768.cfg
  470.      arch-banner-icons/1280x800.cfg
  471.      arch-banner-noicons/1024x768.cfg
  472.      arch-banner-noicons/1280x800.cfg
  473. -)
  474. +"
  475.  
  476.  ## Override the initial silent splash screen status message defaults.
  477.  ## Note: '$progress' will be replaced by Fbsplash itself.
  478. @@ -25,16 +29,21 @@
  479.  ## * shutdown
  480.  SPLASH_SHUTDOWN_MESSAGE="Shutting down '$HOSTNAME' (\$progress%)"
  481.  
  482. -## To show animations early, include the Fbsplash daemon (1.5 MiB) into initcpio, too,
  483. +## Include and use the Fbsplash daemon (1.5 MiB) in the initcpio
  484.  ## instead of the small helper only.
  485. -## Note: Themes with 'scripts/rc_init-pre' like 'arch-banner-icons' are not supported.
  486. +## Usefull to show animations early.
  487. +## Note: Themes with 'scripts/rc_init-pre' like 'arch-banner-icons' are
  488. +##       supported now if fbsplash-extras>=2.0.10 is installed, but there
  489. +##       might still be some sophisticated ones which break when using this.
  490.  SPLASH_DAEMON="early"
  491.  
  492.  ## Make the splash daemon use fade effects.
  493.  ## Note: The initcpio helper does only use the kernel parameter!
  494. +# Just use fadein on bootup and fadeout on shutdown/reboot
  495. +case $PREVLEVEL in  N   ) SPLASH_EFFECTS="fadein" ; esac
  496. +case  $RUNLEVEL in [06] ) SPLASH_EFFECTS="fadeout"; esac
  497. +# Uncomment this line to allways use both
  498.  # SPLASH_EFFECTS="fadein,fadeout"
  499. -## Uggly hack to get that in from the kernel line :p
  500. -SPLASH_EFFECTS=$(e=();IFS=',';for w in $splash;do [[ $w == fade* ]]&&e+=($w);done;echo "${e[*]}")
  501.  
  502.  ## Enable the textbox when starting the Fbsplash daemon.
  503.  ## Useful if the theme provides a message log or other textbox.
  504. @@ -54,7 +63,7 @@
  505.  SPLASH_VERBOSE_ON_ERRORS="no"
  506.  
  507.  ## Name of the DAEMONS script starting Xorg if any
  508. -## Set this to avoid virtual terminal change struggle between Xorg and Fbsplash.
  509. +## Set this to avoid virtual terminal change struggle between X and Fbsplash.
  510.  SPLASH_XSERVICE="gdm"
  511.  #SPLASH_XSERVICE="kdm"
  512.  #SPLASH_XSERVICE="xdm"
  513. diff -rNu fbsplash.34/splash_start_initcpio.patch fbsplash.35/splash_start_initcpio.patch
  514. --- fbsplash.34/splash_start_initcpio.patch     1970-01-01 01:00:00.000000000 +0100
  515. +++ fbsplash.35/splash_start_initcpio.patch     2011-03-03 09:47:19.000000000 +0100
  516. @@ -0,0 +1,22 @@
  517. +diff -ru src.orig//splashutils-1.5.4.3/scripts/splash-functions.sh.in src//splashutils-1.5.4.3/scripts/splash-functions.sh.in
  518. +--- src.orig//splashutils-1.5.4.3/scripts/splash-functions.sh.in       2008-11-13 20:54:19.000000000 +0100
  519. ++++ src//splashutils-1.5.4.3/scripts/splash-functions.sh.in    2011-03-03 09:45:29.258901793 +0100
  520. +@@ -250,6 +250,9 @@
  521. +       # Start the splash daemon
  522. +       BOOT_MSG="$(splash_get_boot_message)" ${spl_daemon} --theme="${SPLASH_THEME}" --pidfile="${spl_pidfile}" --type=${ttype} ${options}
  523. +
  524. ++      # First let the daemon open the event dev before it's gone away in case this is run in the initcpio
  525. ++      splash_set_event_dev
  526. ++
  527. +       # Set the silent TTY and boot message
  528. +       splash_comm_send "set tty silent ${SPLASH_TTY}"
  529. +
  530. +@@ -261,8 +264,6 @@
  531. +
  532. +       splash_comm_send "set autoverbose ${SPLASH_AUTOVERBOSE}"
  533. +
  534. +-      splash_set_event_dev
  535. +-
  536. +       return 0
  537. + }
  538. +
clone this paste RAW Paste Data