/[pxelator]/lib/PXElator/config.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /lib/PXElator/config.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 236 - (show annotations)
Sun Aug 16 23:45:29 2009 UTC (14 years, 8 months ago) by dpavlin
File size: 2518 byte(s)
fix url typo, must be same as name of the sub in config

1 package config;
2
3 use warnings;
4 use strict;
5 use autodie;
6
7 use server;
8 use pxelinux;
9 use client;
10 use File::Slurp;
11
12 sub available { qw/debian_live webconverger debirf tinycore/ };
13
14 sub debian_live {
15 my ($ip) = @_;
16
17 upstream::files( qw{
18 http://cdimage.debian.org/cdimage/release/current-live/i386/web/
19 vmlinuz1
20 initrd1.img
21 debian-live-501-i386-standard.squashfs
22 });
23
24 my $hostname = client::conf( $ip => 'hostname' ) || 'debian-live';
25
26 pxelinux::config_for_ip( $ip, qq{
27
28 default debian_live
29 label debian_live
30 kernel vmlinuz1
31 append initrd=initrd1.img fetch=http://${server::ip}:7777/debian_live/debian-live-501-i386-standard.squashfs boot=live nopersistent hostname=$hostname union=aufs
32 });
33
34 }
35
36 use upstream;
37
38 =head1 webconverger
39
40 Webconverger - the opensource Web Kiosk
41
42 L<http://webconverger.org/>
43
44 =cut
45
46 sub webconverger {
47 my ($ip) = @_;
48
49 upstream::iso( 'http://download.webconverger.com/webc-5.2.iso' );
50
51 my $homepage = client::conf( $ip => 'homepage', default => "http://${server::ip}:7777/client" );
52 my $hostname = client::conf( $ip => 'hostname' ) || 'webconverger';
53
54 pxelinux::config_for_ip( $ip, qq{
55
56 default webconverger
57 label webconverger
58 kernel iso/live/vmlinuz-2.6.30-backports.1-486
59 append initrd=iso/live/initrd.img-2.6.30-backports.1-486 fetch=http://${server::ip}:7777/webconverger/iso/live/filesystem.squashfs boot=live quiet nosudo splash video=vesa:ywrap,mtrr vga=788 nopersistent username=webc hostname=$hostname union=aufs homepage=$homepage locale=hr
60
61 });
62
63 }
64
65 =head1 debirf
66
67 debirf is a system that will create diskless, all-in-ram images (kernel and initramfs) that boot entirely into ram and leave the user in a fully functional Debian system.
68
69 L<http://cmrg.fifthhorseman.net/wiki/debirf>
70
71 =cut
72
73 sub debirf {
74 my $ip = shift;
75
76 upstream::iso( 'http://cmrg.mayfirst.org/debirf/debirf-rescue_lenny_2.6.26-1-686.iso' );
77
78 pxelinux::config_for_ip( $ip, qq{
79
80 default linux
81 label linux
82 kernel iso/vmlinuz-2.6.26-1-686
83 append initrd=iso//debirf-rescue_lenny_2.6.26-1-686.cgz
84
85 });
86 }
87
88 sub tinycore {
89 my $ip = shift;
90 upstream::iso( 'http://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/2.x/release/tinycore_2.2.iso' );
91 pxelinux::config_for_ip( $ip, qq{
92
93 default linux
94 label linux
95 kernel iso/boot/bzImage
96 append initrd=iso/boot/tinycore.gz
97
98 });
99 }
100
101 sub for_ip {
102 my $ip = shift;
103 my $deploy = client::conf( $ip => 'deploy', default => 'webconverger' );
104 eval $deploy . '($ip)';
105 # $tftp::dir = "$server::base_dir/tftp/$pxelinux::path_prefix";
106 }
107
108 warn 'loaded';
109
110 1;

  ViewVC Help
Powered by ViewVC 1.1.26