You are not logged in.
Pages: 1
Hey, the archiso script lacks an option to wait for user input, which is important if someone does not want a specific package from base group installed. In my case this was netctl. I prefer connman, which conflicts with openresolv, a dependency of netctl, so I wanted it out.
After I've encountered that archiso installs the base group without asking,
I decided to put netctl on the IgnorePkg line in pacman.conf.
But it installed it anyway, because pacman proposes to install it though it's on the IgnorePkg line,
and then the user input is not awaitet...
I traced the problem deeper to the mkarchiso script which is used by the build.sh script. There I had to hardcode the -i switch on the pacstrap command line.
Now everything works, but what should I do?
Report this as a bug or add a wiki entry (I'm not a native english speaker)?
what would you do?
I mean the problem seems not too specific to me
Here are the tweaked lines:
/usr/bin/mkarchiso
_pacman ()
{
_msg_info "Installing packages to '${work_dir}/root-image/'..."
if [[ "${quiet}" = "y" ]]; then
pacstrap -i -C "${pacman_conf}" -c -d -G -M "${work_dir}/root-image" $* &> /dev/null
else
pacstrap -i -C "${pacman_conf}" -c -d -G -M "${work_dir}/root-image" $*
fi
_msg_info "Packages installed successfully!"
}
edit:
i ran into some other problems too, which i mentioned in another thread, they could be merged into the wiki page too.
https://bbs.archlinux.org/viewtopic.php … 4#p1385544
edit:
i've just never edited a wiki entry before, and wanted to hear someone's opinion before trying it.
Last edited by halimbo (2014-02-26 23:43:40)
Offline
My opinion is that it is not a bug, mkarchiso is doing exactly what it is supposed to, which is build a release version of Arch. I believe the intention is that if you want custom packages for your own use you must modify the build.sh script to suit your needs.
For my own use I have a very heavily modified build.sh. For connman I've added new function that is called after the base packages are installed. I've reproduced the function below should you be interested.
#
# function to install connman (systemd unit enabled in scout.manifest)
# need to remove netctl and openresolv first
makeConnman()
{
echo -e "\nInstalling connman."
echo "Removing netctl and openresolv"
chroot ${WORK_DIR}/${BASE_SYS_DIR} /usr/bin/pacman --noconfirm "-Rcs" "netctl"
setarch ${PLATFORM} mkarchiso "${verbose}" -w "${WORK_DIR}" -C "${pacman_conf}" -D "${INSTALL_DIR}" -p "connman wpa_supplicant" install
checkErrors $? "Error installing connman"
return 0
}
As I said, my script is heavily modified and the variables in capital letters are not necessarily named the same as the ones used by mkarchiso. If you choose to use any of this you'll need to modify accordingly.
Offline
Add whatever you want to the wiki page - it's community-maintained, you don't need approval from anyone.
User input for pacstrap would be a feature request, feel free to post it in the bugtracker.
Offline
okay, i think I'll do the entry then.
@ajbibb: It's just that you cannot have user input by modifying build.sh, because the point is in the mkarchiso script
Thanks for the function. I guess I have to heavily peruse build.sh
Edit: ajbibb, i know it's a bit offtopic, but have you run into problems using connman on your created live iso? i enabled the connman.service but it just gave me an error message like "no carrier" when i wanted to "scan wifi" with connmanctl? am i missing something like another service i have to enable to get it functioning? netctl works out of the box by the way, so it's not a driver problem i think.
Last edited by halimbo (2014-02-26 20:14:45)
Offline
halimbo,
I generally need to do this the first time I try the network from my newly created ISO:
rfkill unblock all
Only need to do it once if you have persistent storage. You may need to install the rfkill package first.
After I use rfkill to unblock everything, use connman to enable the wifi technology, then use connman to scan.
Offline
On my laptop i have to do this too, i enabled the not very reliable service called rfkill-unblock@all.service for my normal arch install, which works there most of the time, but for the iso it fails at startup, i think it's because the service order. so i unblock manually. Enabling wifi works, and with netctl it's not a problem but connman gives me always this error message when i try to scan. It's something like:
Error /net/connman/wifi : No carrier
I'll just experiment with it, and if it's not working I'll just use netctl. I even switched to netctl in my main install because i was so angry about connman
Persistent storage? how did you manage that? or is it hyper-complicated like in puppy linux?
Edit: I think it's the netctl service which conflicted with connman and found a thread for persistence, I'll mark the thread as "solved"
Edit: Connman works, it was because of the netctl.service. added to the connman wiki page
Edit: I took heart and modified the archiso wiki page. open for improvement suggestions
Last edited by halimbo (2014-02-27 04:21:10)
Offline
Pages: 1