* [gentoo-user] Gentoo install script
@ 2012-06-28 2:13 Michael Mol
2012-07-02 0:28 ` [gentoo-user] " Michael Mol
0 siblings, 1 reply; 6+ messages in thread
From: Michael Mol @ 2012-06-28 2:13 UTC (permalink / raw
To: gentoo-user
Very rough, and very much a works-for-me thing, but I thought I'd share.
https://github.com/mikemol/gentoo-install
I wrote it to ease the pain of the "install-configure-build" cycle I
was going through to figure out what was breaking glibc.
--
:wq
^ permalink raw reply [flat|nested] 6+ messages in thread
* [gentoo-user] Re: Gentoo install script
2012-06-28 2:13 [gentoo-user] Gentoo install script Michael Mol
@ 2012-07-02 0:28 ` Michael Mol
2012-07-04 5:20 ` Kaddeh
2012-07-04 16:53 ` Mark Knecht
0 siblings, 2 replies; 6+ messages in thread
From: Michael Mol @ 2012-07-02 0:28 UTC (permalink / raw
To: gentoo-user
On Wed, Jun 27, 2012 at 10:13 PM, Michael Mol <mikemol@gmail.com> wrote:
> Very rough, and very much a works-for-me thing, but I thought I'd share.
>
> https://github.com/mikemol/gentoo-install
>
> I wrote it to ease the pain of the "install-configure-build" cycle I
> was going through to figure out what was breaking glibc.
Just a bit of a followup. I've got most of the bugs worked out, and
I'm very pleased with it. I've used it to get through most of the
install sequence for inara, and it's currently on package 113/158 of
its second pass of 'emerge -e @world'.
If anyone else gets around to trying it, let me know. :)
--
:wq
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [gentoo-user] Re: Gentoo install script
2012-07-02 0:28 ` [gentoo-user] " Michael Mol
@ 2012-07-04 5:20 ` Kaddeh
2012-07-04 20:06 ` Michael Mol
2012-07-04 16:53 ` Mark Knecht
1 sibling, 1 reply; 6+ messages in thread
From: Kaddeh @ 2012-07-04 5:20 UTC (permalink / raw
To: gentoo-user
[-- Attachment #1: Type: text/plain, Size: 3607 bytes --]
Very well done, reminded me of some code that I wrote (poorly, I might add)
but, I dug it up and found some changes that you might be able to implement
instead of lines and lines of static configs. That being said, take some
of these changes into consideration.
Dynamic detection of drives and partitions:
# Get Existing Drives
existing_drives=$(fdisk -l | grep /dev | grep -i disk | cut -c11-13)
# Set default drive
default_drive=$(fdisk -l | grep --max-count=1 /dev | cut -c11-13)
echo -e "What drive do you want to partition? [$existing_drives]: \c"
read drive
and then creating the partition table later:
# Make Drive Selection
if [ "$drive" == "" ]
then
selected_drive=$default_drive
else
# Verify Drive Exists
does_exist=$(fdisk -l | grep --max-count=1 -ci $drive)
if [ "$does_exist" == "1" ]
then
selected_drive=$drive
else
echo -e "The selected drive" $drive "does not exist. Using"
$default_drive "instead."
selected_drive=$default_drive
fi
fi
num_partitions=$(fdisk -l | grep ^/dev | grep -ic $selected_drive)
echo "There are" $num_partitions "partitions on" $selected_drive
partitions=1
# Clear existing partition file
rm -rf partition_table
touch partition_table
while [ "$partitions" -le "$num_partitions" ]
do
# Find partition numbers
edit_partitions=$(fdisk -l | grep ^/dev/$selected_drive | cut -c9)
# Parse out extra partitons
if [ "$partitions" == "1" ]
then
work_partition=$(echo -e $edit_partitions | cut -c$partitions)
# Write to partition_table file
echo -e "d\n$work_partition" >> partition_table
else
if [ "$partitions_cut" == "" ]
then
# If First Partition after partition 1, cut off $partitions + 1
partitions_cut=$(($partitions+1))
else
partitions_cut=$(($partitions_cut+1))
fi
work_partition=$(echo -e $edit_partitions | cut -c$partitions_cut)
# Write to partition_table file
echo -e "d\n$work_partition" >> partition_table
((partitions_cut += 1))
fi
((partitions += 1))
done
# build the rest of the table
# Get Total System Memory
total_mem=$(cat /proc/meminfo | grep -i memtotal | cut -c16- | sed s/\
// | sed s/kB//)
swap_space=$(expr $(expr $total_mem + $total_mem) / 1024)
# Write first partition to file
echo -e "n\np\n1\n\n+100M\n" >> partition_table
# Write Swap Space (double system memory)
echo -e "n\np\n2\n\n+"$swap_space"M\n">> partition_table
# Write / partition to file
echo -e "n\np\n3\n\n\n" >> partition_table
# Write partition setting to file and drive write
echo -e "a\n1\nt\n2\n82\nw\n" >> partition_table
# Set drive number variables
boot_drive=$(echo $selected_drive"1")
swap_drive=$(echo $selected_drive"2")
root_drive=$(echo $selected_drive"3")
# KEEP THIS COMMENTED OUT BELLOW HERE
fdisk /dev/$selected_drive < partition_table
Mainly due to the fact that you statically set the UUIDs of the drive that
you want to use.
Cheers,
Kad
On Sun, Jul 1, 2012 at 5:28 PM, Michael Mol <mikemol@gmail.com> wrote:
> On Wed, Jun 27, 2012 at 10:13 PM, Michael Mol <mikemol@gmail.com> wrote:
> > Very rough, and very much a works-for-me thing, but I thought I'd share.
> >
> > https://github.com/mikemol/gentoo-install
> >
> > I wrote it to ease the pain of the "install-configure-build" cycle I
> > was going through to figure out what was breaking glibc.
>
> Just a bit of a followup. I've got most of the bugs worked out, and
> I'm very pleased with it. I've used it to get through most of the
> install sequence for inara, and it's currently on package 113/158 of
> its second pass of 'emerge -e @world'.
>
> If anyone else gets around to trying it, let me know. :)
>
> --
> :wq
>
>
[-- Attachment #2: Type: text/html, Size: 4795 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [gentoo-user] Re: Gentoo install script
2012-07-02 0:28 ` [gentoo-user] " Michael Mol
2012-07-04 5:20 ` Kaddeh
@ 2012-07-04 16:53 ` Mark Knecht
2012-07-04 20:15 ` Michael Mol
1 sibling, 1 reply; 6+ messages in thread
From: Mark Knecht @ 2012-07-04 16:53 UTC (permalink / raw
To: gentoo-user
On Sun, Jul 1, 2012 at 5:28 PM, Michael Mol <mikemol@gmail.com> wrote:
> On Wed, Jun 27, 2012 at 10:13 PM, Michael Mol <mikemol@gmail.com> wrote:
>> Very rough, and very much a works-for-me thing, but I thought I'd share.
>>
>> https://github.com/mikemol/gentoo-install
>>
>> I wrote it to ease the pain of the "install-configure-build" cycle I
>> was going through to figure out what was breaking glibc.
>
> Just a bit of a followup. I've got most of the bugs worked out, and
> I'm very pleased with it. I've used it to get through most of the
> install sequence for inara, and it's currently on package 113/158 of
> its second pass of 'emerge -e @world'.
>
> If anyone else gets around to trying it, let me know. :)
>
> --
> :wq
>
Hi Michael,
Looks interesting. From reading the code it looks like this was a
(proper) reaction to rebuilding the two machines you recently had
trouble with, right?
Not sure when I'll get to it but I'll likely give it a try building
a VM in Virtualbox as a test.
Thanks for doing the heavy lifting and posting the work output.
Cheers,
Mark
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [gentoo-user] Re: Gentoo install script
2012-07-04 5:20 ` Kaddeh
@ 2012-07-04 20:06 ` Michael Mol
0 siblings, 0 replies; 6+ messages in thread
From: Michael Mol @ 2012-07-04 20:06 UTC (permalink / raw
To: gentoo-user
On Wed, Jul 4, 2012 at 1:20 AM, Kaddeh <kaddeh@gmail.com> wrote:
> Very well done, reminded me of some code that I wrote (poorly, I might add)
> but, I dug it up and found some changes that you might be able to implement
> instead of lines and lines of static configs. That being said, take some of
> these changes into consideration.
>
> Dynamic detection of drives and partitions:
>
> # Get Existing Drives
> existing_drives=$(fdisk -l | grep /dev | grep -i disk | cut -c11-13)
>
> # Set default drive
> default_drive=$(fdisk -l | grep --max-count=1 /dev | cut -c11-13)
>
> echo -e "What drive do you want to partition? [$existing_drives]: \c"
> read drive
>
> and then creating the partition table later:
>
> # Make Drive Selection
> if [ "$drive" == "" ]
> then
> selected_drive=$default_drive
> else
> # Verify Drive Exists
> does_exist=$(fdisk -l | grep --max-count=1 -ci $drive)
>
> if [ "$does_exist" == "1" ]
> then
> selected_drive=$drive
> else
> echo -e "The selected drive" $drive "does not exist. Using"
> $default_drive "instead."
> selected_drive=$default_drive
> fi
> fi
>
> num_partitions=$(fdisk -l | grep ^/dev | grep -ic $selected_drive)
>
> echo "There are" $num_partitions "partitions on" $selected_drive
>
> partitions=1
>
> # Clear existing partition file
> rm -rf partition_table
> touch partition_table
>
> while [ "$partitions" -le "$num_partitions" ]
> do
> # Find partition numbers
> edit_partitions=$(fdisk -l | grep ^/dev/$selected_drive | cut -c9)
>
> # Parse out extra partitons
> if [ "$partitions" == "1" ]
> then
> work_partition=$(echo -e $edit_partitions | cut -c$partitions)
> # Write to partition_table file
> echo -e "d\n$work_partition" >> partition_table
> else
> if [ "$partitions_cut" == "" ]
> then
> # If First Partition after partition 1, cut off $partitions + 1
> partitions_cut=$(($partitions+1))
> else
> partitions_cut=$(($partitions_cut+1))
> fi
> work_partition=$(echo -e $edit_partitions | cut -c$partitions_cut)
> # Write to partition_table file
> echo -e "d\n$work_partition" >> partition_table
> ((partitions_cut += 1))
> fi
> ((partitions += 1))
>
> done
>
> # build the rest of the table
> # Get Total System Memory
> total_mem=$(cat /proc/meminfo | grep -i memtotal | cut -c16- | sed s/\ // |
> sed s/kB//)
> swap_space=$(expr $(expr $total_mem + $total_mem) / 1024)
>
> # Write first partition to file
> echo -e "n\np\n1\n\n+100M\n" >> partition_table
>
> # Write Swap Space (double system memory)
> echo -e "n\np\n2\n\n+"$swap_space"M\n">> partition_table
>
> # Write / partition to file
> echo -e "n\np\n3\n\n\n" >> partition_table
>
> # Write partition setting to file and drive write
> echo -e "a\n1\nt\n2\n82\nw\n" >> partition_table
>
> # Set drive number variables
> boot_drive=$(echo $selected_drive"1")
> swap_drive=$(echo $selected_drive"2")
> root_drive=$(echo $selected_drive"3")
>
> # KEEP THIS COMMENTED OUT BELLOW HERE
> fdisk /dev/$selected_drive < partition_table
>
> Mainly due to the fact that you statically set the UUIDs of the drive that
> you want to use.
>
> Cheers,
> Kad
Thank you very much.
I'd gladly entertain a pull request if you'd like to integrate it. I'm
not doing much in the way of active development on the script until I
have either (or both) of my machines operational again; they're almost
there, but I'm a sticking point with the 3.3.8 kernel, got past that,
and have now discovered that stable genkernel and stable
gentoo-sources don't play well together. (Because stable genkernel is
using a slightly older version of busybox which doesn't know about
some moved kernel header files). That stuff is slowly moving on b.g.o,
and I'm slowly working around at home. It's only a matter of time, of
which nobody seems to have enough...
--
:wq
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [gentoo-user] Re: Gentoo install script
2012-07-04 16:53 ` Mark Knecht
@ 2012-07-04 20:15 ` Michael Mol
0 siblings, 0 replies; 6+ messages in thread
From: Michael Mol @ 2012-07-04 20:15 UTC (permalink / raw
To: gentoo-user
On Wed, Jul 4, 2012 at 12:53 PM, Mark Knecht <markknecht@gmail.com> wrote:
> On Sun, Jul 1, 2012 at 5:28 PM, Michael Mol <mikemol@gmail.com> wrote:
>> On Wed, Jun 27, 2012 at 10:13 PM, Michael Mol <mikemol@gmail.com> wrote:
>>> Very rough, and very much a works-for-me thing, but I thought I'd share.
>>>
>>> https://github.com/mikemol/gentoo-install
>>>
>>> I wrote it to ease the pain of the "install-configure-build" cycle I
>>> was going through to figure out what was breaking glibc.
>>
>> Just a bit of a followup. I've got most of the bugs worked out, and
>> I'm very pleased with it. I've used it to get through most of the
>> install sequence for inara, and it's currently on package 113/158 of
>> its second pass of 'emerge -e @world'.
>>
>> If anyone else gets around to trying it, let me know. :)
>>
>> --
>> :wq
>>
>
> Hi Michael,
> Looks interesting. From reading the code it looks like this was a
> (proper) reaction to rebuilding the two machines you recently had
> trouble with, right?
Indeed. Inara and kaylee are still incomplete, but the script at least
helped me get to a working, up-to-date chroot environment, and that's
a major improvement over where I was.
>
> Not sure when I'll get to it but I'll likely give it a try building
> a VM in Virtualbox as a test.
I can tell you right now that you'll hit a circular dependency problem
toward the end, where it starts installing what I'd call "comfort
tools." The general(ish) solution is probably going to be a two-pass
emerge. One with USE="-gtk", followed by a one-two sequence without
that. It's a typical gtk->cups->avahi cyclic dependency, and since gtk
is the most-core element in the cycle, I figure it probably it'll be
part of most cyclic dependency problems that might crop up in the
future, so suppressing it likely covers the most ground. (By the same
reasoning, it's probably appropriate to include -qt, -gnome and -kde
in that first pass, too.)
>
> Thanks for doing the heavy lifting and posting the work output.
Np. It beat the *pants* off of manually trying different CFLAGS to
figure out why glibc was puking. I only had to go through the manual
steps twice before I got sick of it and wrote the bulk of the script
in a couple hours. The rest has mostly been letting the thing run,
discover where I missed something, modify the script, and let it run
again.
--
:wq
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-07-04 20:17 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-28 2:13 [gentoo-user] Gentoo install script Michael Mol
2012-07-02 0:28 ` [gentoo-user] " Michael Mol
2012-07-04 5:20 ` Kaddeh
2012-07-04 20:06 ` Michael Mol
2012-07-04 16:53 ` Mark Knecht
2012-07-04 20:15 ` Michael Mol
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox