Part 2 Install Script

Edit: Updated, check last post
I got tired of the long and annoying process of manually installing everything after the base system was installed, so I got bored one night about two weeks ago and decided to write this script.  It will pretty much do everything I normally had to do and everything is taken from the Beginners Install Guide, such as:
asks you if you want to display or hide the output of pacman and other operations
configure the internet for dhcp
rank mirrors based on speed
update the system
installs NTFS-3g
implement a custom fstab (it got annoying to add 5 or so partitions in everytime manually)
add a user
installs alsa
installs the xserver along with the nvidia driver from the arch repo
installs commonly used fonts
gives you the choice of installing kdemod 3 or 4
installs firefox thunderbird compiz-fusion emerald and fusion-icon and others
copies desktop and autostart links
links my windows thunderbird and firefox profiles to my linux ones so that theyre in sync
and finally starts the appropriate desktop manager when everything is installed.
Eeverything in the script is well documented and is easy to read since my bash scripting knowledge isnt that advanced, so its easy to edit it for your own needs. You could just copy the script from here but I recommend you download the tar ball since the script refers to a lot of custom files that I made (such as specific rc.confs and pacman.confs for kde 3 and kde 4) and everything will work out of the box, you might have to change a few paths in the script though.
If anyone finds any bugs or can offer suggestions on how to improve the script I'd love to hear them! I'm still looking for a way to feed the firefox and thunderbird profile names directly into variables so that you dont have to enter them manually like you have to now. Edit: one more thing I just thought of, I'd like to colorize some of the outputs such as the ":: Installing [package name]" parts with the :: being blue and the text being white (just like it is when you boot up arch) but I have no idea on how to do it.
#! /bin/bash
# Written By Brandon Golway (Brando56894)#
echo "Do you want to display the output of the commands?"
echo "1) Yes"
echo "2) No"
echo
read output
if [[ "$output" == 1 ]]; then
echo "Which interface are you using?"
read interface
dhcpcd $interface
#location of where the script is being ran from
echo "Storing current location..."
location=`pwd`
#checks to see if the directory logs exists inside of the install.arch folder
#if it exists the directory is cleared, if it doesnt exist it is created
echo
echo "Checking to see if "$location"/logs exists..."
if [ -d logs ]; then
rm -f logs/*
echo "It does so old logs were erased"
else
mkdir logs
echo "It doesn't so the directory was created"
fi
#ranking mirrors based on speed
cp mirrorlist /etc/pacman.d/mirrorlist.bak
cd /etc/pacman.d
echo
echo ":: Updating package list and installing Python..."
pacman -Syy
pacman -S --noconfirm python
echo
echo "Ranking mirrors, this could take a few minutes..."
rm mirrorlist
rankmirrors -n 6 mirrorlist.bak > mirrorlist
cd $location
#copying pacman.conf with kdemod repositories
echo
echo "::Updating pacman and the system..."
pacman -Syy --noconfirm pacman
pacman -Syu --noconfirm
cp -f pacman.conf_kdemod3 /etc/pacman.conf
pacman -Syy
echo
echo "::Installing NTFS-3g..."
pacman -S --noconfirm ntfs-3g
echo
read -p "Edit fstab to correspond to the current partition layout (Hit Enter)"
nano fstab
clear
cp fstab /etc/fstab
mkdir /media/w7; mkdir /media/xp; mkdir /media/media;mkdir /media/mybook; mkdir /media/mint
mount -a
#adding users and groups
echo
echo "Name your user:"
read user
useradd -m -G users,audio,lp,optical,storage,video,wheel,power -s /bin/bash $user
passwd $user
pacman -S --noconfirm sudo > logs/install.sudo
echo
read -p "Add this line to the sudoers file: "$user" ALL=(ALL) ALL"
EDITOR=nano visudo
clear
#configuring ALSA
echo
echo "::Installing ALSA..."
pacman -S --noconfirm alsa-utils alsa-oss
cp -f asound.state /etc/asound.state
#installing the Xserver
echo
echo "::Installing the Xserver..."
pacman -S --noconfirm xorg xf86-input-evdev mesa nvidia
cp -f xorg.conf /etc/X11/xorg.conf
depmod -a
#setting login manager
cp xinitrc /home/$user/.xinitrc
#installing common fonts
echo
echo "::Installing commonly used fonts..."
pacman -S --noconfirm ttf-ms-fonts ttf-dejavu ttf-bitstream-vera
echo
echo "Install KDEmod 3 or KDEmod 4?"
echo "1) KDEmod 3"
echo "2) KDEmod 4"
read decision
if [[ "$decision" == 1 ]]
then
echo
echo "::Installing KDEmod 3..."
cp -f pacman.conf_kdemod3 /etc/pacman.conf
pacman -Syy --noconfirm kdemod3 kdemod3-kdeutils-superkaramba
cp -f locale.gen /etc/locale.gen
locale-gen
cp -f rc.conf_kdemod3 /etc/rc.conf
cp -Rf Autostart /home/$user/.kde/
else
echo
echo "::Installing KDEmod 4..."
cp -f pacman.conf_kdemod4 /etc/pacman.conf
pacman -Syy > logs/pkg.update
pacman -S --noconfirm kdemod kdemod-kdeutils-superkaramba
cp -f locale.gen /etc/locale.gen
locale-gen
cp -f rc.conf_kdemod4 /etc/rc.conf
cp -Rf Autostart /home/$user/.kde4/
fi
echo
/etc/rc.d/hal start
#installing other stuff
echo
echo "::Installing firefox, thunderbird, yakuake, etc..."
pacman -S --noconfirm firefox thunderbird libdvdcss yakuake compiz-fusion-plugins-main compiz-fusion-plugins-extra compizconfig-backend-kconfig ccsm emerald fusion-icon ktorrent pidgin jre shaman samba lm_sensors
#customizing
cp bashrc /home/$user/.bashrc
mkdir /home/$user/Desktop
cp -f Desktop/* /home/$user/Desktop/
cp -Rf emerald /home/$user/.emerald
echo
echo "What is the name of the firefox profile?"
ls /media/w7/Users/Bran/AppData/Roaming/Mozilla/Firefox/Profiles
read firefox_profile
echo
echo "What is the name of the thunderbird profile?"
ls /media/w7/Users/Bran/AppData/Roaming/Thunderbird/Profiles
read thunderbird_profile
ln -s /media/w7/Users/Bran/AppData/Roaming/Firefox/$firefox_profile /home/$user/.firefox
ln -s /media/w7/Users/Bran/AppData/Roaming/Thunderbird/$thunderbird_profile /home/$user/.thunderbird
chown -R $user:$user /home/$user/
if [ "$decision" = 1 ]; then
/etc/rc.d/kdm3 start
else
/etc/rc.d/kdm start
fi
fi
#hides output
if [[ "$output" == 2 ]]; then
echo "Which interface are you using?"
read interface
dhcpcd eth1 $interface
#location of where the script is being ran from
echo "Storing current location..."
location=`pwd`
#checks to see if the directory logs exists inside of the install.arch folder
#if it exists the directory is cleared, if it doesnt exist it is created
echo
echo "Checking to see if "$location"/logs exists..."
if [ -d logs ]; then
rm -f logs/*
echo "It does so old logs were erased"
else
mkdir logs
echo "It doesn't so the directory was created"
fi
#ranking mirrors based on speed
cp mirrorlist /etc/pacman.d/mirrorlist.bak
cd /etc/pacman.d
echo
echo ":: Updating package list and installing Python..."
pacman -Syy>$location/logs/pkg.update
pacman -S --noconfirm python > $location/logs/install.python
echo
echo "Ranking mirrors, this could take a few minutes..."
rm mirrorlist
rankmirrors -n 6 mirrorlist.bak > mirrorlist
cd $location
#copying pacman.conf with kdemod repositories
echo
echo "::Updating pacman and the system..."
pacman -Syy --noconfirm pacman > logs/update.pacman
pacman -Syu --noconfirm > update.system
cp -f pacman.conf_kdemod3 /etc/pacman.conf
pacman -Syy > logs/pkg.refresh
echo
echo "::Installing NTFS-3g..."
pacman -S --noconfirm ntfs-3g > logs/install.ntfs3g
echo
read -p "Edit fstab to correspond to the current partition layout (Hit Enter)"
nano fstab
clear
cp fstab /etc/fstab
mkdir /media/w7; mkdir /media/xp; mkdir /media/media;mkdir /media/mybook; mkdir /media/mint
mount -a
#adding users and groups
echo
echo "Name your user:"
read user
useradd -m -G users,audio,lp,optical,storage,video,wheel,power -s /bin/bash $user
passwd $user
pacman -S --noconfirm sudo > logs/install.sudo
echo
read -p "Add this line to the sudoers file: "$user" ALL=(ALL) ALL"
EDITOR=nano visudo
clear
#configuring ALSA
echo
echo "::Installing ALSA..."
pacman -S --noconfirm alsa-utils alsa-oss > logs/install.alsa
cp -f asound.state /etc/asound.state
#installing the Xserver
echo
echo "::Installing the Xserver..."
pacman -S --noconfirm xorg xf86-input-evdev mesa nvidia > logs/install.xserver
cp -f xorg.conf /etc/X11/xorg.conf
depmod -a
#setting login manager
cp xinitrc /home/$user/.xinitrc
#installing common fonts
echo
echo "::Installing commonly used fonts..."
pacman -S --noconfirm ttf-ms-fonts ttf-dejavu ttf-bitstream-vera > logs/install.fonts
echo
echo "Install KDEmod 3 or KDEmod 4?"
echo "1) KDEmod 3"
echo "2) KDEmod 4"
read decision
if [[ "$decision" == 1 ]]
then
echo
echo "::Installing KDEmod 3..."
cp -f pacman.conf_kdemod3 /etc/pacman.conf
pacman -Syy --noconfirm kdemod3 kdemod3-kdeutils-superkaramba > logs/install.kdemod3
cp -f locale.gen /etc/locale.gen
locale-gen > /dev/null
cp -f rc.conf_kdemod3 /etc/rc.conf
cp -Rf Autostart /home/$user/.kde/
else
echo
echo "::Installing KDEmod 4..."
cp -f pacman.conf_kdemod4 /etc/pacman.conf
pacman -Syy > logs/pkg.update
pacman -S --noconfirm kdemod kdemod-kdeutils-superkaramba > logs/install.kdemod4
cp -f locale.gen /etc/locale.gen
locale-gen > /dev/null
cp -f rc.conf_kdemod4 /etc/rc.conf
cp -Rf Autostart /home/$user/.kde4/
fi
echo
/etc/rc.d/hal start
#installing other stuff
echo
echo "::Installing firefox, thunderbird, yakuake, etc..."
pacman -S --noconfirm firefox thunderbird libdvdcss yakuake compiz-fusion-plugins-main compiz-fusion-plugins-extra compizconfig-backend-kconfig ccsm emerald fusion-icon ktorrent pidgin jre shaman samba lm_sensors > logs/install.otherstuff
#customizing
cp bashrc /home/$user/.bashrc
mkdir /home/$user/Desktop
cp -f Desktop/* /home/$user/Desktop/
cp -Rf emerald /home/$user/.emerald
echo
echo "What is the name of the firefox profile?"
ls /media/w7/Users/Bran/AppData/Roaming/Mozilla/Firefox/Profiles
read firefox_profile
echo
echo "What is the name of the thunderbird profile?"
ls /media/w7/Users/Bran/AppData/Roaming/Thunderbird/Profiles
read thunderbird_profile
ln -s /media/w7/Users/Bran/AppData/Roaming/Firefox/$firefox_profile /home/$user/.firefox
ln -s /media/w7/Users/Bran/AppData/Roaming/Thunderbird/$thunderbird_profile /home/$user/.thunderbird
chown -R $user:$user /home/$user/
if [ "$decision" = 1 ]; then
/etc/rc.d/kdm3 start
else
/etc/rc.d/kdm start
fi
fi
I thought you were able to attach files but I dont see the option anywhere so heres a link to megashare: Install Arch
Last edited by brando56894 (2009-05-17 02:09:19)

I've made a lot of changes to the script so its easier for me to use such as:
removed the option to show or hide output, the only option is to show the output
it now checks which architecture youre running (32 or 64 bit)
removed the Firefox and Thunderbird linking
removed the need to press 'Enter' to edit fstab
removed the need to use visudo, it copies an already edited sudoers file (which you have to add)
added samba config
various bug fixes
#! /bin/bash
#determining architecture
arch=$(uname -m)
clear
#add if statement to see if /var/run/dhcpcd-eth0.pid exists
dhcpcd eth0
#location of where the script is being ran from
ialocation=`pwd`
#ranking mirrors based on speed
if [ "$arch" == "x86_64" ]
then
cp mirrorlist /etc/pacman.d/mirrorlist.bak
else
cp mirrorlist.x32 /etc/pacman.d/mirrorlist.bak
fi
cd /etc/pacman.d
echo
echo ":: Updating package list and installing Python..."
pacman -Syu
pacman -S --noconfirm --needed python
echo
echo "Ranking mirrors, this could take a few minutes..."
rm mirrorlist
rankmirrors -n 4 mirrorlist.bak > mirrorlist
cd $ialocation
echo
echo "::Installing NTFS-3g..."
pacman -S --noconfirm --needed ntfs-3g
cp fstab.template fstab
nano fstab
clear
cp fstab /etc/fstab
rm fstab
mkdir /media/w7; mkdir /media/xp; mkdir /media/media; mkdir /media/mybook
mount -a
#adding users and groups
echo
echo "Name your user:"
read user
useradd -m -G users,audio,lp,optical,storage,video,wheel,power -s /bin/bash $user
passwd $user
cp -f sudoers /etc/sudoers
clear
#configuring ALSA
echo
echo "::Installing ALSA..."
pacman -S --noconfirm --needed alsa-utils alsa-oss
cp -f asound.state /etc/asound.state
#installing the Xserver
echo
echo "::Installing the Xserver..."
pacman -S --noconfirm --needed xorg xf86-input-evdev mesa nvidia
cp -f xorg.conf /etc/X11/xorg.conf
depmod -a
#setting login manager
cp xinitrc /home/$user/.xinitrc
#installing common fonts
echo
echo "::Installing commonly used fonts..."
pacman -S --noconfirm --needed ttf-ms-fonts ttf-dejavu ttf-bitstream-vera
echo
echo "Install KDEmod 3 or KDEmod 4?"
echo "1) KDEmod 3"
echo "2) KDEmod 4"
read kde_version
if [[ "$kde_version" == 1 ]]
then
echo
echo "::Installing KDEmod 3..."
if [ "$arch" == "x86_64" ]
then
cp -f pacman.conf_kdemod3 /etc/pacman.conf
else
cp -f pacman.conf_kdemod3.x32 /etc/pacman.conf
fi
pacman -Sy --noconfirm --needed kdemod3
pacman -S --noconfirm --needed kdemod3-kdeutils-superkaramba amarok kdemod3-kdegraphics-ksnapshot
cp -f locale.gen /etc/locale.gen
locale-gen
cp -f rc.conf_kdemod3 /etc/rc.conf
cp -Rf Autostart /home/$user/.kde/
#cd kdesudo-2.6
#./configure
#needs QT >=3.1 but <4.0
#make -s
#make -s install
#mv /opt/kde/bin/kdesu /opt/kde/bin/kdesu1
#ln -s /opt/kde/bin/kdesudo /opt/kde/bin/kdesu
else
echo
echo "::Installing KDEmod 4..."
if [ "$arch" == "x86_64" ]
then
cp -f pacman.conf_kdemod4 /etc/pacman.conf
else
cp -f pacman.conf_kdemod4.x32 /etc/pacman.conf
fi
pacman -Syy --noconfirm --needed kdemod kdemod-kdeutils-superkaramba kdemod-kdebase-kwrite amarok-base
cp -f locale.gen /etc/locale.gen
locale-gen
cp -f rc.conf_kdemod4 /etc/rc.conf
cp -Rf Autostart /home/$user/.kde4/
fi
#echo
#/etc/rc.d/hal start
if [ "$arch" == "x86_64" ]
then
#installing 32bit chroot environment
mkdir /opt/arch32
cd /etc/pacman.d
mv mirrorlist mirrorlist.x64
cp $ialocation/mirrorlist.x32 mirrorlist
pacman --root /opt/arch32 --cachedir /opt/arch32/var/cache/pacman/pkg -Sy --needed base base-devel schroot ttf-bitstream-vera ttf-ms-fonts
mv -f mirrorlist.x64 mirrorlist
cd /opt/arch32/etc
ln -f /etc/passwd* .
ln -f /etc/shadow* .
ln -f /etc/group* .
ln -f /etc/rc.conf .
ln -f /etc/resolv.conf .
ln -f /etc/localtime .
ln -f /etc/locale.gen .
ln -f /etc/profile.d/locale.sh profile.d
cp /etc/vimrc .
cp /etc/mtab .
cd $ialocation
fi
#installing other stuff
echo
echo "::Installing firefox, thunderbird, yakuake, etc..."
pacman -S --noconfirm --needed firefox thunderbird libdvdcss kdemod3-yakuake ktorrent pidgin jre shaman samba flashplugin lm_sensors gdb libsexy cups filelight
pacman -S --noconfirm --needed compiz-fusion-kde
echo
echo "::Installing and Configuring Samba"
pacman -S --noconfirm --needed samba
cp smb.conf /etc/samba/smb.conf
smbpasswd -a $user
pacman -Rd --noconfirm --needed fam
pacman -S --noconfirm --needed gamin
#customizing
cp bashrc /home/$user/.bashrc
mkdir /home/$user/Desktop
cp -f Desktop/* /home/$user/Desktop/
cp -Rf emerald /home/$user/.emerald
mkdir -p /home/$user/.config/compiz
chown $user:$user /home/$user/.config/compiz
cp bashrc /root/.bashrc
echo
chown -R $user:$user /home/$user/
read -p "Press Enter to reboot"
reboot
Install Arch Archive
Last edited by brando56894 (2009-05-17 02:38:40)

Similar Messages

  • I have tried to upgrade Painter 11 on my iMac running OS X 10.5.8. I keep getting the error message :- : The following install step failed : run pre install script for Corel Painter11 _ SP1 . Contact the software manufacturer for assistance   " Help pleas

    I have tried to upgrade Painter 11 on my iMac running OS x 10.5.8 but get the error message : The following install step failed : run pre install script for Corel Painter11_SP1. Contact the software manufacturer for assistance "
    I have contacted Corel and after several emails and one telephone call, they tell me , they cannot help but they think the problem could be with the OS.
    Does anyone have any suggestions, please ?

    Could be many things, we should start with this...
    "Try Disk Utility
    1. Insert the Mac OS X Install disc, then restart the computer while holding the C key.
    2. When your computer finishes starting up from the disc, choose Disk Utility from the Installer menu at top of the screen. (In Mac OS X 10.4 or later, you must select your language first.)
    *Important: Do not click Continue in the first screen of the Installer. If you do, you must restart from the disc again to access Disk Utility.*
    3. Click the First Aid tab.
    4. Select your Mac OS X volume.
    5. Click Repair Disk, (not Repair Permissions). Disk Utility checks and repairs the disk."
    http://docs.info.apple.com/article.html?artnum=106214
    Then try a Safe Boot, (holding Shift key down at bootup), run Disk Utility in Applications>Utilities, then highlight your drive, click on Repair Permissions, reboot when it completes.
    (Safe boot may stay on the gray radian for a long time, let it go, it's trying to repair the Hard Drive.)
    If perchance you can't find your install Disc, at least try it from the Safe Boot part onward.

  • "Arch By Hand" UEFI GPT SSD LUKS Install Script

    Arch UEFI GPT LUKS (and non LUKS version) Automated Install Example Script, SSD friendly
    Please note that if you're going to use this you're going to have to a) customize it to fit your needs and b) know what system config you need to do post install (rc.* etc). It's a jumping off point.
    Want to put in a lot of effort just to get Arch Linux listed in your "bios" startup options? You're in the right post! Well, it's more than just that, of course. If you have an EFI machine, increasingly common, this might be of interest.
    I got this working on my x220 tablet and thought I'd post it here. I imagine that as Archboot and the official installer rev we'll see them support this kind of thing as well, so BBS seemed like a good place to post it, but if there is an appropriate wiki location I could add it there as well.
    This is pretty bare bones (otherwise you'd be using AIF or Archboot, natch) and should be customized for your own install purposes. Nonetheless, I suspect others may have been banging their heads on the low overhang of UEFI/GPT install and hope this helps them get up and running.
    This is pretty much all in the wiki and BBS in various places, particularly the GRUB2 wiki entry. However the GPT partitioning (and learning more of sgdisk) were challenging enough that I felt it would be useful for others to see a working script.
    I used the current-as-of-this-post Archboot iso (archlinux-2011.10-1-archboot.iso).
    Don't just dd the archlinux iso to a usb. Format the USB stick as an MBR FAT drive and dump the entire Archboot ISO contents to it. To be honest, I did this in an Ubuntu vmware image I had on my mac, though I'd like to include command line options for doing this. TODO!
    I also stuck the script (included herein) on the drive, but you could get it on the installation image at install time as well via scp or whatever you prefer.
    On my x220 I then set the UEFI "BIOS" (the UEFI setup) to boot *ONLY* from UEFI. Pretty important. You should probably also stack your USB drive to top of your startup list or manually select it at boot time.
    Boot from the USB stick. For my x220 I selected the second of the four efi grub options, x86_64.
    Once Archboot is up, immediately leave the installer (option 8)
    You may want to mount the usb drive to /src if you stuck this script on it. Archboot in UEFI mode doesn't seem to mount the usb drive properly (and the normal Archboot efi install will fail as well due to this). I think this is getting fixed in the next Archboot release, from what I've read on BBS.
    # mount /dev/sdb1 /src
    Run the script. For me this is
    # /src/myarch.sh
    (WARNING: will nuke everything on /dev/sda unless you've changed it).
    There are probably things that could be done better/cleaner, feel free to point those out. This is really just a jumping off point.
    UPDATE 15 NOV 2011: This now sources most packages locally to avoid kernel mismatch between install medium and install target.
    UPDATE 16 NOV 2011: Script now unified the boot and efi partitions.
    UPDATE 17 NOV 2011: Migrated code to github, including two versions (non-encrypted and LUKS-encrypted)
    UPDATE 18 NOV 2011: Added encrypted swap
    UPDATE 18 NOV 2011: Changed /boot/efi/grub to /boot/grub; removed extraneous /boot/efi directory entirely.
    UPDATE 19 NOV 2011: Added a post-install script to handle user setup, etc. No reboot required.
    UPDATE 20 NOV 2011: Post install section more complete, visudo automation added.
    See code at: https://github.com/altercation/arch-by-hand
    Last edited by altercation (2011-11-20 21:09:33)

    I've come up with this script (although it's not quite right either):
    #!/bin/bash
    # prereqs:
    # mount /dev/sdb1 /src
    set -o nounset
    #set -o errexit
    INSTALL_TARGET="/mnt"
    HR="--------------------------------------------------------------------------------"
    # Initialize
    # Warn
    timer=9
    echo -n "This procedure will completely format /dev/sda. Please cancel with ctrl-c to cancel within $timer seconds..."
    while [[ $timer -gt 0 ]]
    do
    sleep 1
    let timer-=1
    echo -en "$timer seconds..."
    done
    echo "Starting"
    # Configure_Host
    echo -e "\nFormatting disk...\n$HR"
    # disk prep
    sgdisk -Z /dev/sda # zap all on disk
    sgdisk -a 2048 -o /dev/sda # new gpt disk 2048 alignment
    # create partitions
    sgdisk -n 1:0:+250M /dev/sda # partition 1 (UEFI BOOT), default start block, 250MB
    sgdisk -n 2:0:+2G /dev/sda # partition 2 (SWAP), default start block, 2G
    sgdisk -n 3:0:+100M /dev/sda # partition3, (BOOT), boot partition
    sgdisk -n 4:0:+10G /dev/sda # partition 4, (ARCH), default start, remaining space
    sgdisk -n 5:0:0 /dev/sda # partition 5, (HOME)
    # set partition types
    sgdisk -t 1:ef00 /dev/sda
    sgdisk -t 2:8200 /dev/sda
    sgdisk -t 3:8300 /dev/sda
    sgdisk -t 4:8300 /dev/sda
    sgdisk -t 5:8300 /dev/sda
    # label partitions
    sgdisk -c 1:"UEFI BOOT" /dev/sda
    sgdisk -c 2:"SWAP" /dev/sda
    sgdisk -c 3:"BOOT" /dev/sda
    sgdisk -c 4:"ARCH" /dev/sda
    sgdisk -c 5:"HOME" /dev/sda
    # make filesystems
    echo -e "\nCreating Filesystems...\n$HR"
    mkfs.vfat /dev/sda1
    mkswap /dev/sda2
    mkfs.ext2 /dev/sda3
    mkfs.ext4 /dev/sda4
    mkfs.ext4 /dev/sda5
    # Run /arch/setup
    echo -n "Don't select Grub as your bootloader and exit setup before the Install Bootloader step"
    /arch/setup
    # unmount filesytems
    umount /dev/sda1
    swapoff /dev/sda2
    umount /dev/sda3
    umount /dev/sda5
    # Get Network
    echo -n "Waiting for network address.."
    #dhclient eth0
    dhcpcd -p eth0
    echo -n "Network address acquired."
    # Update Pacman
    echo -e "\nUpdating pacman...\n$HR"
    sed -i "s/^#S/S/" /etc/pacman.d/mirrorlist
    pacman --noconfirm -Sy
    pacman --noconfirm --needed -S pacman
    pacman --noconfirm -S gptfdisk btrfs-progs-unstable
    # Prepare to chroot to target
    mv ${INSTALL_TARGET}/etc/resolv.conf ${INSTALL_TARGET}/etc/resolv.conf.orig
    cp /etc/resolv.conf ${INSTALL_TARGET}/etc/resolv.conf
    sed -i "s/^#S/S/" ${INSTALL_TARGET}/etc/pacman.d/mirrorlist
    mount -t proc proc ${INSTALL_TARGET}/proc
    mount -t sysfs sys ${INSTALL_TARGET}/sys
    mount -o bind /dev ${INSTALL_TARGET}/dev
    echo -e "${HR}\nINSTALL BASE COMPLETE\n${HR}"
    # Write Files
    # install_efi (to be run *after* chroot /install)
    touch ${INSTALL_TARGET}/install_efi
    chmod a+x ${INSTALL_TARGET}/install_efi
    cat > ${INSTALL_TARGET}/install_efi <<EFIEOF
    mount /boot
    mount /boot/efi
    modprobe efivars
    modprobe dm-mod
    pacman --noconfirm -Sy
    pacman --noconfirm --needed -S pacman
    pacman --noconfirm -R grub
    pacman --noconfirm -S grub2-efi-i386
    grub_efi_i386-install --root-directory=/boot/efi --boot-directory=/boot/efi/efi --bootloader-id=grub --no-floppy --recheck
    efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label "ARCH LINUX" --loader "\\EFI\\grub\\grub.efi"
    grub-mkconfig -o /boot/efi/efi/grub/grub.cfg
    exit
    EFIEOF
    # Install EFI
    chroot /install /install_efi
    rm /install/install_efi

  • Making Seed Data Install Scripts

    How does one make seed data install scripts that will run as part of the installation package?

    User,
    What is your name?
    This is a standard feature of Apex in the Supporting Objects. The part you are looking for is called Installation Scripts. What version of Apex are you on? I think this came with version 3.
    Regards,
    Dan
    http://danielmcghan.us
    http://sourceforge.net/projects/tapigen
    http://sourceforge.net/projects/plrecur
    You can reward this reply by marking it as either Helpful or Correct ;-)

  • Install Script Error?

    It's Christmas day, and I just got an IPOD Video and tried to install the software for it and ran into a whole mess of problems.
    I tried to install ITunes 7 & Quicktime 7, but every time I try I get an error at the end of the installation saying something about a missing Install Script error and that i need to run "ISScript.msi" or contact support.
    I have no idea what to do, and tried to find that file on microsoft.com, but the onlyint that comes up is "Virtual PC 2004" and not how to install it, but work around it.
    any suggestions?

    The Install script engine on this machine is older than the version required to run this setup. If available, please install the lastest version of ISScript.msi or contact your support personnel for further assistance.
    okay, let's try installing a version 11, using the instructions from the following InstallShield document:
    Update to the Latest InstallShield Installation Engines
    is that one of any help with the error message?

  • "Error" in ApEx install scripts for runtime environment?

    I recently installed a runtime ApEx 3.1 on a 10.2.0.1.0 database. After installing an application which uses the Database Account Credentials method for authentication I was unable to login to the application, getting an ERR-10480 message. After some research on this forum I granted ALTER USER to FLOWS_030100 which resolved the issue. So far so good.
    But I was still puzzled as to why the application had worked without problems in a development environment and not in the runtime environment. It took only a few minutes to locate the problem though. In the runtime-install script "apxrtins.sql" there is a call to the "runtime_grant_revoke.sql" script which removes unnecessary DBA system privileges for a runtime environment (which is a good thing IMO). In this script there is also a REVOKE ALTER USER statement, but it seems this one is needed if your application uses the DBACCOUNT authentication method. I didn't find anything on this in the documentation.
    Anyone else notice this as well? I would think this is a bug in the install-scripts but perhaps I'm missing something somewhere?

    Tim,
    Thanks for reporting this. In database server versions earlier than 10.2.0.3, the alter user privilege is required for the "flows" schema to support the feature you mentioned. We'll try to get this fixed in the next patch release.
    Scott

  • Sun MC Automated Install Script failing 50% of the time

    Are there a set of tips in general for the script; or perhaps tips for the contents of the boom.cfg file to help increase the percentage of successful installs?
    Thanks, [email protected]

    Hi Mike,
    In most of the SunMC autoinstall projects I've worked on, we ended up implementing 3 slightly different install/setup config files: one for 12-25k's, one for 3800-6900s, and one for "everything else". Then we put a bit of smarts in the main install script to decide which to use. The questions for each of those groups were different enough that it made sense to break them apart.
    Are you using the base es-inst/es-setup commands? es-imagetool and agent-update.bin? es-makeagent? Some notes here: http://forums.halcyoninc.com/showthread.php?t=389 . Send me an email if you need help getting things off the ground.
    Regards,
    [email protected]

  • Should/can the install script included in source=() list?

    Hi,
    It is a good thing that the sources needed to build a package are md5summed for integrity, but in most packages the install script is not. I was thinking why this might be - the PKGBUILD can be expected to modify the script?
      So to try, in one of my packages I added the install script to the source=() list. The package builds of course just fine. Then, however, if I want to upload it to AUR, I try to make a source-only package with "makepkg --source", which brakes with something like this:
    ln: creating symbolic link `/tmp/foo/srclinks.YjYgQ8XlE/foo/foo.install': File exists
    This is because makepkg tries to create a 2 symbolic links with the same filename: one link for the "foo.install" in the source=() list and also for the install=() list....
    Is this deliberate, or a bug? Looks more like a bug to me, but thought I better ask first....
    Cheers,
    Greg

    shining wrote:
    imrehg wrote:
    It might be completely internal to the pacman but defines actions taken on the system - thus whatever is in .install has effects just like the rest of the files, maybe even more: the other files are just copied, the .install is executed.
    And while it might never get installed on the system, it's internals are - how else one could define a "post_uninstall()" if it wasn't stored? Being pacman developer you know much more about this than I do, can you give a bit of info on that?
    Right it is installed to pacman database, but again, it is pacman doing all that.
    Fair enough.... The detail, however, that is not installed does not preempt checksumming. Eg. patches are also: 1) used for the package, 2) not installed, and 3) still in the checksum....
    shining wrote:
    All I'm trying to get to, is there any serious reason (technical, not philosophical) NOT to checksum the install script as well?  Because I'm yet to see any valid arguments against it, and there are loads for it....
    Taking your example from kernel26 :
    -i $startdir/kernel26.install
    -i ${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset
    Note that the scriptlet edited is the original one in $startdir , because that's the only place where it needs to be, from the packager pov.
    While for the preset file, it needs to be copied to $pkgdir and it is edited there.
    If you had a checksum for the scriptlet, it would also mean that makepkg -g output could be altered after running makepkg. Very weird..
    Ok, this is indeed the case. But if you look at real packages, it seems that after the package is compiled, many times they update the PKGBUILD with the new md5sum values. Again: core/kernel26.
    That .install update section in the PKGBUILD is then relegated to a "helper function" role that keep the information in sync when there's a new release, but as the PKGBUILD is distributed, it won't change anything in the .install anymore...
    Thus, again, there's no real difference between the .install files and other files used as source.
    shining wrote:Btw the whole scriptlet file could be created entirely from the pkgbuild build function.
    Sure, and that's a great thing! I actually wondered why so many packages have separate .install when it can be done in the PKGBUILD. Thought it might be some convention, but probably just habit.... I prefer doing it in the PKGBUILD as well, whenever possible...
    shining wrote:There might be ways to fix that, though I don't even see any good ones. But why bother ? You said there are loads of valid arguments to have it , but you didn't even give one !
    On the other hand, I'm yet to find any of your rebuttals that are not rebutted here again...
    shining wrote:What are you worried about here ? Security ? If you think adding a checksum for the install file is going to give you any security, you are badly fooling yourself. If someone is distributing a malicious pkgbuild, it can contain the md5sum of the malicious scriptlet which is shipped with it.
    I think you misunderstood me. I'm not complaining, but inquiring. The PKGBUILD system is awesome, and it makes me search out programs that I use but not in the repo/AUR so that I can make a new package. But also, I'm interested in the "how" and "why", and hope to improve things if possible. Now, to me it seems theres an unreasonable distinction to checksum some files needed for a package but not all of them. And thus I set out to ask the elders here on the Forum to see whether someone can shed light on the reasons of the current state. Not trying to piss of anybody, but being interested.
    Of course the md5sum is not security, it's a help, nothing more.
    As an example: some time ago, there was a package in the community (thus managed by TUs) that had an update. I wanted to check out something in the package, got the PKGBUILD and tried to make it myself - md5sum says that the sources are incorrect.... Obviously something must have gone very bad, because the md5sum field was updated according to the SVN, the package is available on pacman thus it had to build, and the sources used in the package have not been changed for a while so that cannot be a problem....
    I've got a package from a trusted source and it is broken, the md5sum told me. So the breakage can be the very same way in the install script, why is the md5sum not allowed to tell me that?
    shining wrote:The only security for pkgbuilds is yourself. When you get one from a strange place, you MUST read the pkgbuild/install files.
    Of course, never argued against it. But there are different layers of verbosity....
    Anyway....

  • Using subsitiutions in the install scripts

    This should be pretty obvious, but I can't find the answer in the documentation.
    Using Apex 3.1.2, in the Shared Objects, I've created a substitution named "TABLESPACE". The application uses a set of tables, the install should create these tables, and DBA have funny ideas about where these tables should be created, so I'd like to offer the option of having the install process ask for and use the TABLESPACE.
    So I create an install script called "create tables". The script text has the following:
    CREATE TABLE table1 (ID NUMBER, NAME VARCHAR2(30))
    TABLESPACE ??;
    So how do I use the TABLESPACE substitution value in the install script above? Use "&TABLESPACE:", use ":TABLESPACE"?
    Edited by: tjoneslo on Nov 25, 2008 11:56 AM

    To answer my own question. The install scripts are run as sql (or pl/sql) statements. You can access the pre-defined substitution strings via the v('NAME') parameter call (e.g. v('APP_USER')) but the application substitution strings, even though we are prompting for them, are not available.
    Which would make for a good enhancement.

  • Supporting Object Install Scripts - populate clob table

    All
    Before I delve into exactly how I thought I'd ask the forum if anyone had packaged up an install script to populate a table with a clob column?
    I have an app that I am finishing up and the one remaining table has a clob column which obviously doesn't make for simple SQL inserts due to the CLOB type.
    Thanks in advance
    Phil

    Hi Vadimon,
    Thanks for reporting this, however I am struggling to reproduce the issue.
    I created an application with 2 installation scripts (1 without a condition and 1 with a condition set to NEVER), then imported this into a 4.1 instance installing supporting objects. Here, only the 1 without a condition executed, as expected. I then created 2 upgrade scripts (again 1 without a condition and 1 with a condition set to NEVER), then re-imported this to upgrade the application. Again, only the 1 without a condition executed, as expected.
    Would you be able to send me an export of an application where this reproduces, or provide the steps you took to reproduce this?
    Regards,
    Anthony.

  • Adobe 9.4.3 update partly installed.

    Adobe 9.4.3 update partly installed. I have tried to uninstall it to reinstall but I get an error message "Invalid Drive". It has tried to install on an external drive or E drive, both of which are not on this computer. I am running XP. Can anyone help me uninstall this update? I have also tried uninstalling Reader and then uninstalling the update, but it sends the same error message.

    Could you please check the values of the mentioned registry keys using the below steps:
    1. Click on Start Menu and click on Run. in the dialog box that pops up type in regedit and hit enter.
    2. Traverse to the following key:
        HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ Shell Folders
        Once there, see the entries on the Right Side and see if you can see any entry with the Data value starting with E:\
    3. Repeat the above for the following registry as well:
        HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ User Shell Folders
    If thats the case, then try and see if the following MS KB article helps: http://support.microsoft.com/kb/886549
    If not, then it may be a case wherein you had attached some external drive on your system which when removed didnt unmount cleanly.

  • Post Install Scripts

    I am creating an image with System Utility. One module i can add is called "Add Packages and Post-Install Scripts".
    I put one of my scripts in it:
    #!bin/sh
    defaults write /Library/Preferences/com.apple.loginwindow LoginwindowText "Hello"
    But I get an error when trying to image saying "install setup failed: run postinstall script"
    I know the script works because i tested it.
    Any ideas?

    probably not…
    try using the defined installer variables instead of a specific path. there's a quick rundown here, though there's probably better documentation of it elsewhere: http://tinyurl.com/yejppmm
    basically, you probably want $3:
    $1: Full Path to Package
    $2: Full Path to target installation directory: /Applications
    $3: Mountpoint of installation disk: / or /Volumes/External_Drive
    $4: Root directory of currently booted system
    your script may be failing because the installer is trying to run it on the booted volume, which won't work. you want it to apply to the restored/newly installed volume.

  • How to install scripts in InDesign

    Installing Script In design

    Hello,
    Thank you for your post.
    I am afraid that the issue is out of support range of VS General Question forum which mainly discusses
    the usage of Visual Studio IDE such as WPF & SL designer, Visual Studio Guidance Automation Toolkit, Developer Documentation and Help System
    and Visual Studio Editor.
    It seems that InDesign is Adobe product, so I suggest consulting your issue on Adobe InDesign help:
    https://helpx.adobe.com/indesign.html for better support.
    Thanks,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Install media 2012.08.04 and latest install scripts - the shell

    I'm just curious about this: the latest install media uses zsh, the install scripts are bash scripts - the shell you're dropped in after "arch-chroot" is sh (SHELL=/bin/sh chroot "$@")
    Why do we use sh in the chrooted environment?

    Allan wrote:Because zsh is not installed by default...
    I understand, but let me rephrase : why the shell in the chrooted environment is sh and not bash? Isn't bash installed by default?
    In the previous version of the install scripts (present in the previous version of the install cd) the chrooted shell was bash, and in Arch "sh" is a symlink to bash (if I understand correctly, calling "bash" as "sh" make bash behave like sh).
    So, there's a reason to use sh in the chrooted installation?

  • The installer found unexpected changes to the install script

    Hi,
    I've just try to install PC Client 15.7 "EBF 23439: 15.7 SP130" Just downloded from Service Market Place on a Win 03 R2 32 bit and on Windows 12 R2 64 bit
    On Win 03 R3 32 bit it works fine but in  Win 12 R2 there isen0t any way to run Sybase Central.
    When I try to uninstall, on each machine, there are only thi message:
    Unable to lunch installer
    The installer found unexpected changes to the install script:

    Hi,
    So you are saying that PC-Client 15.7 SP130 doesn't uninstall? I will look into this.
    If you go to your control panel and installed software.
    What version(s) of Microsoft Studio do you have installed?
    What versions of Microsoft Visual C++ #### Redistributable Packages do you have?
    From what I saw they had pulled the Sybase Central out of PC-Client.
    You might be able to get from ASE 15.5 version of PC-Client.
    Please note that PC-Client with Sybase Central was never certified with Windows 8 or 2012. So you never get Sybase Central to work on those operating systems.
    PC-Client 15.5 last drop should have been certified with Windows 7.
    Thanks,
    Dawn Kim

  • [SOLVED] Pacman 3.5.1 and install script problem.

    Hi, i'm currently maintaining dkms-nvidia package in AUR. After upgrading to pacman 3.5.1 install script doesn't work anymore. I have searched forum and some googled but i haven't got a clue. It was working with pacman 3.4.3 (i have skipped 3.5.0 release). Does something changed with 3.5.x release about install script handling? Here is the install script:
    http://pastebin.com/Lpehuabk
    Last edited by tarakbumba (2011-04-06 07:18:16)

    I have found the problem, i think. When i extracted my compiled dkms-nvidia package i get :
    02:35 atilla@tarakbumba:~/DEPOM/Archlinux/Paketler/dkms-nvidia-270.30-3-x86_64.pkg$ ls -lah
    toplam 24K
    drwxr-xr-x 4 atilla users 4,0K Mar 30 02:35 .
    drwxr-xr-x 3 atilla users 4,0K Mar 30 02:35 ..
    drwxr-xr-x 3 atilla users 4,0K Mar 30 02:34 etc
    -rw-r--r-- 1 atilla users 1,2K Mar 30 02:34 .iNSTALL
    -rw-r--r-- 1 atilla users 1,7K Mar 30 02:34 .PKGINFO
    drwxr-xr-x 3 atilla users 4,0K Mar 30 02:34 usr
    See the ".iNSTALL"? But when it comes to pacman package file is ".INSTALL". Also namcap throws a warning:
    02:41 atilla@tarakbumba:~/DEPOM/Archlinux/Paketler$ namcap dkms-nvidia-270.30-3-x86_64.pkg.tar.xz
    dkms-nvidia W: Dependency included and not needed ('dkms')
    dkms-nvidia E: Missing custom license directory (usr/share/licenses/dkms-nvidia)
    dkms-nvidia W: File (.iNSTALL) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/xapi-sdk.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/cpuopsys.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nvtypes.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-i2c.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/README.template) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/os-registry.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-memdbg.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv_gvi.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/os-agp.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/os-agp.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nvacpi.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/rmretval.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/conftest.sh) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-cray.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/gcc-version-check.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-reg.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/os-interface.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/dkms.conf) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/g_nvreadme.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-linux.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-vm.c) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/rmil.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-misc.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/makefile) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/Makefile.kbuild) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/os-interface.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-vm.h) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/Makefile.nvidia) exists in a non-standard directory.
    dkms-nvidia W: File (usr/src/nvidia-270.30/nv-kernel.o) exists in a non-standard directory.
    dkms-nvidia E: ELF file ('usr/src/nvidia-270.30/nv-kernel.o') outside of a valid path.
    See "dkms-nvidia W: File (.iNSTALL) exists in a non-standard directory." ?
    My older packges also have ".iNSTALL" but pacman-3.4.3 was taking care of it. Now it ignores install scriplets like these. It is either a makepkg bug or pacman bug. Any help or should i open a bug report?
    Last edited by tarakbumba (2011-03-29 23:45:26)

Maybe you are looking for

  • I am locked out of my macbook and can't remember the password.  Now what??

    The password hint is listed  - I've tried many combinations of possibilities but still no luck. 

  • How to find out who put an event in the EventQueue?

    Hello, I want to debug who has put some event in the EventQueue. I tried to create my own EventQueue (DebugEventQueue) and override postEvent and dispatchEvent. But all I see is, that postEvent is never called, and dispatchEvent has a stack trace lik

  • My iPhone 5 won't connect to the Internet.

    I have a factory unlocked iPhone 5, and I had my regular-sized SIM cut to fit the iPhone 5, since the nano SIM is not available yet in my country (Venezuela). The SIM works, I get messages, calls, etc. But it won't connect to the internet unless I'm

  • Sender Filename to Determine Which System to Send IDoc to

    I have a situation where I'm retrieving a file on a server that will have one of three file names: example.sendto1.file example.sendto2.file example.sendto3.file so I'll use the 'wildcard' * to pick up the file like this example.*.file but what I wan

  • Data Socket Documentation

    Could someone please help me find detail Data Socket documentation regarding allowed urls and Timouts..  For example what expressions are not allowed for making connections(.html)?  And what is the maximum Timeout (seems to be limited to ~20secs)?  -