Will Woods
bf9ca1ddc7
treebuilder fixups: fix rb.postinstall(), inroot/root confusion
2011-05-26 13:35:28 -04:00
Will Woods
7feb3d4572
treebuilder fixups: correct args for parse() and RuntimeBuilder, add rb.yum
2011-05-26 13:07:30 -04:00
Will Woods
bbf3d23513
run() fix: inroot could exist if we're running with --force
2011-05-26 13:06:45 -04:00
Will Woods
eec6073ef0
move create_runtime into RuntimeBuilder
2011-05-18 13:53:54 -04:00
Will Woods
456492e0ee
fixup: invoke RuntimeBuilder properly
2011-05-17 18:57:03 -04:00
Will Woods
398b3b0922
Remove module command from treebuilder and templates
...
Module whitelisting is silly. Let's blacklist the stuff we don't need.
2011-05-17 18:16:06 -04:00
Will Woods
e59e291725
LoraxYumHelper/installtree removal fixup: create self.inroot
2011-05-17 18:14:05 -04:00
Will Woods
d26c014279
RuntimeBuilder fixup
2011-05-17 15:29:23 -04:00
Will Woods
729511f06a
Dracut hack for F15 image building in __init__
...
add lib/dracut/hooks/pre-pivot/99anaconda-umount.sh to unmount things
before starting anaconda (because loader explodes if /{dev,sys,proc}
are mounted when it starts)
2011-05-17 13:30:36 -04:00
Will Woods
905e05159d
crazytime: replace installtree with runtimebuilder
2011-05-14 03:28:41 -04:00
Will Woods
46e18c3781
more treebuilder WIP
2011-05-14 03:27:25 -04:00
Will Woods
2293a7d569
treebuilder WIP: add commands for installtree
2011-05-13 23:58:46 -04:00
Will Woods
9be6dd2864
Revert "Add systemd and agetty to the installation environment."
...
Add setup_init() and setup_s390_init() to installtree.py to handle
init setup, and stop using systemd so we can make F15 images.
This reverts commit b58190d660
.
2011-05-13 13:03:54 -04:00
Will Woods
3d1155f946
TODO updates
2011-05-12 17:32:44 -04:00
Will Woods
3faac26a93
treebuilder fixup: handle treeinfo_data as runner.results
2011-05-12 17:32:43 -04:00
Will Woods
7323749706
treebuilder fixup: pass template vars to runner
2011-05-12 17:32:43 -04:00
Will Woods
9b5ccc764b
WIP: RuntimeBuilder
2011-05-12 17:32:43 -04:00
Will Woods
c4435b504a
__init__ create_runtime fixup (correct paths)
2011-05-12 17:32:43 -04:00
Will Woods
1a9a83c393
img building fixup: show mksquashfs progress
2011-05-12 17:32:03 -04:00
Will Woods
72a3958a38
imgutils estimate_size fixups
...
count directories in estimate
msdos blocksize is 2048
round_to_blocksize rounds 0 -> blocksize
pass graft to estimate_size so we don't repeat overhead
2011-05-12 17:32:03 -04:00
Will Woods
8f45d48562
remove redundant treeinfo log message in __init__
2011-05-12 17:32:03 -04:00
Will Woods
fa36b808d0
treebuilder fixup: remove unneeded log msg in runcmd
2011-05-12 17:32:03 -04:00
Will Woods
a66c877949
imgutils fixup: 512kb default overhead for vfat
2011-05-12 17:32:03 -04:00
Will Woods
fab2a091bc
treebuilder fixup: fix argument order in replace()
2011-05-12 17:32:03 -04:00
Will Woods
f4107c632d
treebuilder fixup: outroot, not outputdir
2011-05-12 17:32:03 -04:00
Will Woods
e77f142847
fix _glob and template glob()
2011-05-12 17:29:01 -04:00
Will Woods
b6a0b2351c
fixup: make ArchData subclass of DataHolder
2011-05-12 17:29:01 -04:00
Will Woods
77f1ec738c
treebuilder fix implantisomd5()
2011-05-12 17:29:01 -04:00
Will Woods
d4813816b7
treebuilder fixups: add _glob, use it in _exists, replace, install
2011-05-12 17:29:01 -04:00
Will Woods
d2203b348d
fixup for hardlink()
2011-05-12 17:29:01 -04:00
Will Woods
4c91ef5f53
fixup: heh whoops, really fix replace
2011-05-12 17:29:01 -04:00
Will Woods
796659bb29
fixup for creating treeinfo from treebuilder
2011-05-12 17:29:01 -04:00
Will Woods
17c81d12d7
treebuilder fixups: fix replace, glob() for templates, etc.
...
"from glob import glob" instead of "import glob"
rename args to BaseBuilder.runtemplate
set up 'exists' and 'glob' in runtemplate rather than getdefaults
2011-05-12 17:29:01 -04:00
Will Woods
644e5f4b55
treeinfo fixup: fix treeinfo "instancemethod" error and hardlink()
2011-05-12 17:29:01 -04:00
Will Woods
9aa2e2c671
fixup: set templatedir for TreeBuilder in __init__
2011-05-12 17:29:01 -04:00
Will Woods
411bea7d4e
treebuilder fixup: use directories param for LoraxTemplate
2011-05-12 17:29:01 -04:00
Will Woods
a15c5ded9c
Add "directories=[]" param to LoraxTemplate
2011-05-12 17:29:01 -04:00
Will Woods
4343b12fc0
mkefiboot fixups (fix imports, mkdosimg, add to setup.py)
2011-05-12 17:28:53 -04:00
Will Woods
10a91e5c85
fix runtemplate invocation of getdefaults()
2011-05-12 17:28:53 -04:00
Will Woods
96ce44708d
fixup: correct argument signature for initrd_append
2011-05-12 17:28:53 -04:00
Will Woods
e7a89f6eeb
__init__ cleanup: remove unneeded imports (subprocess, glob, math)
2011-05-12 17:28:53 -04:00
Will Woods
79f2a8e663
__init__ treebuilder fixup: yes, we need to backup installtree
2011-05-12 17:28:53 -04:00
Will Woods
b436479f97
Add linktree(src, dst) to sysutils
2011-05-12 17:28:53 -04:00
Will Woods
5e242925ec
treebuilder fixup: update comments, import re
2011-05-12 17:28:53 -04:00
Will Woods
0a2df6bda9
fixup: instantiate TreeBuilder correctly
2011-05-12 17:28:53 -04:00
Will Woods
4cc05f995b
fixup: import Treebuilder in __init__.py
2011-05-12 17:28:53 -04:00
Will Woods
cd684d2b3d
fixup: add remove to sysutils.__all__
2011-05-12 17:28:53 -04:00
Will Woods
1fe66c1d06
WIP: add TODO
2011-05-09 15:33:55 -04:00
Will Woods
bd1fd1e139
Create runtime using imgutils and merge it with initramfs
2011-05-09 15:33:55 -04:00
Will Woods
3d5a3edb67
Replace images with treebuilder
2011-05-09 15:33:55 -04:00
Will Woods
a5b7ac5e6e
installtree: remove workdir and kernels
...
Since we want all the modules in the runtime image, there's no need
to deal with the individual kernels. And workdir was only being used
to mess with the modules, so we don't need that either.
2011-05-09 15:33:55 -04:00
Will Woods
756b44948e
Remove workdir/path from BuildStamp, DiscInfo, TreeInfo
...
This allows us to create these objects without needing workdir,
which means we can use them outside of __init__.py.
We can also write them directly to their final destination
instead of writing them to the workdir and then copying them in.
2011-05-09 15:33:55 -04:00
Will Woods
9b9f021caf
Move arch-specific logic out of installtree
...
Any decisions about arch-specific stuff should happen in the Lorax class
or the arch-specific templates/code. Move that logic up to Lorax.run()
and remove installtree.basearch.
2011-05-09 15:33:55 -04:00
Will Woods
051af505ae
refactor: move big code chunks from Lorax.run to installtree
...
Move package removal code to installtree.remove_package and
the module install loop to installtree.install_kernel_modules.
2011-05-09 15:33:55 -04:00
Will Woods
a82da40015
Add "getdata" method to LoraxTemplate
...
getdata(cmd) will return a generator that yields every token on every
line that starts with the token "cmd". getdata(cmd, mode="lines") will
yield a list for each line rather than every individual token.
this simplifies some things in __init__.py.
2011-05-09 15:33:55 -04:00
Will Woods
b186317213
Make Lorax.arch and Lorax.product into objects
...
arch has three attributes: .buildarch, .basearch, and .libdir
product has six: .name, .version, .release, .variant, .bugurl, and
is_beta
This makes it easier to pass this data into functions/templates.
2011-05-09 15:33:54 -04:00
Will Woods
17c9c8bfaf
Remove dead/commented code from __init__ and outputroot
...
Remove commented-out code, EFI-building code, some redundant comments,
and outputroot.
2011-05-09 15:33:54 -04:00
Will Woods
1350cd028f
treebuilder.py: uses templates to create trees/images
...
TreeBuilder uses templates full of commands (like ramdisk.ltmpl) to
create the output tree and boot images. There are 4 arch-specific
templates, plus a bonus EFI template which can handle EFI image creation
for any arch that implements EFI.
2011-05-09 15:33:54 -04:00
Will Woods
6a5851d53b
mkefiboot: make efi boot images using imgutils
...
This adds the new "mkefiboot" cmd, which creates an efiboot img in the
magical way that EFI requires. There doesn't seem to be a good tool for
this (unlike the existing tools for all the other weirdo boot image
types) so it was necessary to create one.
2011-05-09 15:33:54 -04:00
Will Woods
b2b1c36167
imgutils.py: utilities for creating disk images
...
This contains simple functions for creating disk images:
mkcpio, mksquashfs, mkdosimg, mkext4img, mkbtrfsimg
And the helper functions they use:
truncate, loop_{attach,detach}, dm_{attach,detach},
mount/umount, estimate_size, roundup, cpio_copytree
2011-05-09 10:49:09 -04:00
Will Woods
1e550f8227
Add remove() to sysutils
...
This adds the remove() function, which works a lot like rm -rf - if you
remove() a file, it uses os.unlink, and if you remove() a directory it
uses shutils.rmtree().
2011-05-09 10:29:00 -04:00
Martin Gracik
421e4c3a00
Allow compression type be specified in lorax.conf
2011-04-22 10:57:51 +02:00
Martin Gracik
79b6e5bfa1
Use xz and gzip commands instead of libraries
...
We're already using find and cpio subprocesses, so using
one more subprocess is not a problem. With this approach
we can pipe cpio to the xz/gzip command, which should
help with the memory issues.
2011-04-22 10:57:51 +02:00
Martin Gracik
19f60aebc8
use reqs not regs for files to backup (dgilmore)
2011-04-15 15:46:06 +02:00
Martin Gracik
713d6f94e7
getkeymaps resides in /usr/libexec/anaconda
2011-04-15 09:47:53 +02:00
Martin Gracik
4c25044020
workdir is a local variable, not a class attribute
2011-04-15 09:42:44 +02:00
Martin Gracik
06ac5762af
Add sparcv9 to arch map
2011-04-13 16:14:32 +02:00
Martin Gracik
031e6bab10
Change the location of *.b files on sparc
2011-04-13 16:14:21 +02:00
Chris Lumens
706ac6a55c
Add a /bin/login shim for use only in the installation environment.
2011-04-12 10:36:16 -04:00
Chris Lumens
b58190d660
Add systemd and agetty to the installation environment.
...
Also, set up anaconda.target to be the default systemd unit.
2011-04-12 10:36:04 -04:00
Chris Lumens
51addbb7b4
Specify "cpio -H newc" instead of "cpio -c".
...
The latter does not always work with every version of cpio, so it's too
unreliable to use.
2011-04-12 10:35:02 -04:00
Martin Gracik
1009ef9df0
Provide shutdown on s390x ( #694518 )
2011-04-12 12:31:32 +02:00
Martin Gracik
872d0d6ffa
Generate ssh keys on s390
2011-03-28 13:14:37 +02:00
Martin Gracik
c47c9d5520
Do not check if we have all commands
2011-03-23 14:15:15 +01:00
Martin Gracik
c8a52d628a
Change location of addrsize and mk-s390-cdboot
2011-03-23 14:07:58 +01:00
Martin Gracik
b50f1cb802
Shutdown is in another location
2011-03-23 14:07:26 +01:00
Martin Gracik
2a0dcf846f
Do not skip broken packages
2011-03-23 14:06:33 +01:00
Martin Gracik
05fd600885
Wait for subprocess to finish
2011-03-23 09:22:39 +01:00
Martin Gracik
1de4bb132c
Have to call os.makedirs
2011-03-22 17:36:46 +01:00
Martin Gracik
84f00068e3
images dir already exists, we just need to set it
2011-03-21 09:23:01 +01:00
Martin Gracik
69214fd47a
The biarch is a function not an attribute
2011-03-17 13:26:24 +01:00
Martin Gracik
4486889792
Create images directory in outputtree
2011-03-17 13:04:11 +01:00
Martin Gracik
dc7b2e28dc
Use gzip on ppc initrd
2011-03-17 11:03:22 +01:00
Martin Gracik
8ed6ac4d7b
Create efibootdir if doing efi images
2011-03-17 11:03:22 +01:00
Ales Kozumplik
f851fc4636
Get rid of create_gconf().
...
We do what create_gconf is trying to achieve in get_config_files(). What's
more, the files in crete_gconf() end up in the root directory where
nothing can possibly use them because the root user's home is now /root.
2011-03-16 09:14:31 +01:00
Ales Kozumplik
8565998511
gconf/metacity: have only one workspace.
...
Related: rhbz#683548
2011-03-16 09:06:21 +01:00
Martin Gracik
70cfd01f00
Replace variables in yaboot.conf
2011-03-15 16:38:08 +01:00
Martin Gracik
4af2c865c9
Skip keymap creation on s390
2011-03-15 14:29:29 +01:00
Martin Gracik
a21be14937
Copy shutdown and linuxrc.s390 on s390
2011-03-15 14:27:31 +01:00
Martin Gracik
4d1795a091
Add support for sparc
2011-03-15 14:14:51 +01:00
Martin Gracik
5878db3e81
Use factory to get the image classes
2011-03-15 13:51:43 +01:00
Martin Gracik
c922ae64a9
treeinfo has to be addressed as self.treeinfo
2011-03-15 10:54:25 +01:00
Martin Gracik
3c8ccf997a
Add support for s390
2011-03-15 10:53:52 +01:00
Martin Gracik
566c992653
Add the xen section to treeinfo on x86_64
2011-03-14 14:07:32 +01:00
Martin Gracik
55fd24ea86
Fix magic and mapping paths
2011-03-14 14:01:01 +01:00
Martin Gracik
fdbf53227e
Fix passing of prepboot and macboot arguments
2011-03-14 14:01:01 +01:00
Martin Gracik
ab515eff64
Small ppc fixes
2011-03-14 14:01:01 +01:00
Martin Gracik
201116ac31
Check if the file we want to remove exists
...
If we have directory symlinks, some files could have already
been removed and we get a traceback. This prevents the traceback.
2011-03-14 14:01:01 +01:00
Martin Gracik
b7912a22b3
Change the location of zImage.lds
2011-03-14 14:01:00 +01:00
Martin Gracik
3e965f5a30
memtest and efika.forth are in /boot
2011-03-14 14:01:00 +01:00
Martin Gracik
98d695f9a2
Add support for ppc
...
The way we create the images had to be changed a little.
Some code had to be moved to other places, so we can create
images for other architectures too.
2011-03-14 14:01:00 +01:00
Martin Gracik
6e14df3478
Add the images-xen section to treeinfo on x86_64
2011-03-14 09:51:19 +01:00
Martin Gracik
213125199d
Print a message when no arguments given ( #684463 )
2011-03-14 09:43:12 +01:00
Martin Gracik
0a7f221bd5
Mako template returns unicode strings ( #681003 )
...
New mako template returns unicode strings, which are
a problem for shlex. We need to encode them to ascii.
2011-03-10 10:53:55 +01:00
Martin Gracik
8e9f96c12a
The check option in options causes ValueError
...
The crc32 check we want is the default anyway,
so we don't need to specify it.
2011-02-22 18:20:13 +01:00
Ales Kozumplik
0ce2dc14e4
Disable all ctrl-alt-arrow metacity shortcuts.
...
No need for desktop switching, just makes the users confused.
Resolves: rhbz#678892
2011-02-21 15:26:30 +01:00
Martin Gracik
a9e52a70f4
Use xz when compressing the initrd
...
This makes the image a lot smaller.
2011-02-18 10:25:53 +01:00
Martin Sivak
ee955f3ad1
Keep the source files for locales and get rid of the binary form.
...
Anaconda prepares locale as needed during runtime. This saves space.
2011-02-14 20:11:43 +01:00
Martin Gracik
cdff835357
Add mkdir support to template
...
Allow mkdir command in initrd template,
so we can specify directories we need
to create in install tree.
2011-01-31 20:57:07 +01:00
Martin Gracik
d264eb3ed8
Don't create mtab symlink, already exists
...
Resolves : #671155
2011-01-21 11:18:47 +01:00
Martin Gracik
f5ac972e92
Exit with error if we have no lang-table
2011-01-20 09:00:00 +01:00
Martin Gracik
58d5ecf2a7
Fix file logging
2011-01-19 15:37:44 +01:00
Martin Gracik
47cf65df19
Overwrite the /etc/shadow file
2011-01-19 13:54:50 +01:00
Martin Gracik
b00b0a77c9
Use [images-xen] section for PAE and xen kernels
2011-01-17 16:29:46 +01:00
Martin Gracik
cd339589cc
Add the initd and kernel lines to .treeinfo
2011-01-09 12:50:39 +01:00
Martin Gracik
d0f2c1a936
Move lorax executable to sbin
2010-12-17 16:46:44 +01:00
Martin Gracik
5b3fdf6936
Remove mksquashfs command
...
Not used anywhere
2010-12-17 15:59:26 +01:00
Martin Gracik
a7bcc9188d
Use losetup from util-linux-ng
...
losetup-stub was removed from anaconda runtime,
we want to use the one from util-linux-ng
2010-12-13 09:03:15 +01:00
Martin Gracik
ea3df8ad20
Do not create efi images for 32 bit archs
2010-12-08 17:21:10 +01:00
Martin Gracik
ce25d50495
Add a new line after version in buildstamp
2010-12-08 15:53:41 +01:00
Martin Gracik
f85fa1d1ed
Copy main kernel to isolinux and only others to pxeboot directory
2010-12-07 14:08:30 +01:00
Martin Gracik
bdb9b700f4
Split initrd for multiple kernels
2010-12-06 15:05:47 +01:00
Martin Gracik
826e580cd8
Change the XEN kernel constant value
2010-12-06 13:53:06 +01:00
Martin Gracik
688b4aa5ae
Add buildarch variable to template
2010-12-06 10:52:39 +01:00
Martin Gracik
c062a954f7
Fixed pylint errors in yumhelper.py
2010-12-02 13:34:29 +01:00
Martin Gracik
ea6139f125
Fixed pylint errors in sysutils.py
2010-12-02 13:29:55 +01:00
Martin Gracik
5a3ff79726
Fixed pylint errors in outputtree.py
2010-12-02 13:27:08 +01:00
Martin Gracik
007ed0dc76
Fixed pylint errors in output.py
2010-12-02 13:24:15 +01:00
Martin Gracik
b7504823e0
Fixed pylint errors in ltmpl.py
2010-12-02 13:20:41 +01:00
Martin Gracik
98fab0f389
Fix pylint errors in installtree.py
2010-12-02 13:16:11 +01:00
Martin Gracik
070fbdab10
Use constant value from constants.py for fs overhead
2010-12-02 13:00:31 +01:00
Martin Gracik
55f6acb620
Fix pylint errors in __init__.py
2010-12-02 12:59:08 +01:00
Martin Gracik
449df91699
Add FS_OVERHEAD constant to constats.py
2010-12-02 12:57:13 +01:00
Martin Gracik
fc72557eb1
Fixed pylint errors in constants.py
2010-12-02 12:44:16 +01:00
Martin Gracik
995e6d7e13
Fixed pylint errors in base.py
2010-12-02 12:41:14 +01:00
Martin Gracik
a265f459bf
Change isolinux local variable to instance variable
2010-11-29 10:22:52 +01:00
Martin Gracik
bde6e5c516
Enable at-spi-corba in gconf
2010-11-24 13:48:59 +01:00
Martin Gracik
d995d82ed6
Break get_isolinux() in more separate methods
2010-11-23 16:43:39 +01:00
Martin Gracik
330217e721
Add subprocess module to __init__.py
...
It got lost somewhere during the imports cleanup
2010-11-23 15:05:23 +01:00
Martin Gracik
413fc84cb3
Use kernel in outputtree when creating efi images
2010-11-23 14:38:06 +01:00
Martin Gracik
3ce70b9e49
Move kernel constants to constants.py
2010-11-23 14:25:39 +01:00
Martin Gracik
c8b1f5f5ea
Create the outputtree kernels holder after copying the kernels
2010-11-23 14:20:42 +01:00
Martin Gracik
6dcc1b8666
Don't copy kernels to workdir, copy them straight to outputdir
2010-11-23 14:20:42 +01:00
Martin Gracik
9b73b764b8
Don't change the kernels object inside get_kernels()
2010-11-23 13:42:27 +01:00
Martin Gracik
4ff7d533b6
Use DataHolder instead of namedtuple for holding initrd info
2010-11-23 13:29:11 +01:00
Martin Gracik
0224cdf660
Use DataHolder instead of namedtuple for holding kernel info
2010-11-23 13:27:07 +01:00
Martin Gracik
e9eea0f3ea
Allow DataHolder to have initial values
2010-11-23 13:19:36 +01:00
Martin Gracik
33286629b5
Remove unneeded imports from installtree.py
2010-11-23 13:17:05 +01:00
Martin Gracik
bee1743163
Remove unneeded import from __init__.py
2010-11-23 13:12:21 +01:00
Martin Gracik
ab6af2dc04
Remove not needed imports from outputtree.py
2010-11-23 13:04:38 +01:00