tiny-slitaz annotate step1.php @ rev 5

refresh
author Pascal Bellard <pascal.bellard@slitaz.org>
date Wed Oct 07 23:37:02 2015 +0200 (2015-10-07)
parents d203aafad141
children ac214416e736
rev   line source
pascal@0 1 <?php
pascal@0 2
pascal@5 3 shell_exec("sudo ./helper --chkdist");
pascal@0 4 $usedvars = array( "kernel", "modules", "packages", "toconfigure",
pascal@0 5 "continue", "configuring", "tmp_dir" );
pascal@0 6
pascal@0 7 function set_tmp_dir()
pascal@0 8 {
pascal@0 9 $dir = opendir("/tmp");
pascal@0 10 while (($name = readdir($dir)) !== false) {
pascal@0 11 if (preg_match('/^tiny_webgen/',$name) == 0) continue;
pascal@0 12 if (filemtime("/tmp/$name") > strtotime("-1 hour")) continue;
pascal@0 13 shell_exec("sudo ./helper --remove /tmp/$name");
pascal@0 14 }
pascal@0 15 closedir($dir);
pascal@0 16 if (isset($_POST["tmp_dir"])) return;
pascal@0 17 $_POST["tmp_dir"] = tempnam('','tiny_webgen');
pascal@0 18 if (file_exists($_POST["tmp_dir"])) unlink($_POST["tmp_dir"]);
pascal@0 19 mkdir($_POST["tmp_dir"]);
pascal@0 20 $_POST["tmp_dir"] .= '/';
pascal@0 21 }
pascal@0 22
pascal@0 23 set_tmp_dir();
pascal@0 24
pascal@0 25 function post_hidden()
pascal@0 26 {
pascal@0 27 global $usedvars;
pascal@0 28 foreach ($usedvars as $var) {
pascal@0 29 if (isset($_POST[$var]) && $var != "continue" &&
pascal@0 30 $var != "configuring") {
pascal@0 31 ?>
pascal@0 32 <input name="<?php echo $var; ?>" value="<?php echo $_POST[$var]; ?>" type="hidden" />
pascal@0 33 <?php
pascal@0 34 }
pascal@0 35 }
pascal@0 36 }
pascal@0 37
pascal@0 38 function upload($var, $file = "")
pascal@0 39 {
pascal@0 40 if ($file == "") $file = $var;
pascal@0 41 if (isset($_FILES[$var])) {
pascal@0 42 $tmp_name = $_FILES[$var]['tmp_name'];
pascal@0 43 if (is_uploaded_file($tmp_name)) {
pascal@0 44 move_uploaded_file($tmp_name, $_POST["tmp_dir"].$file);
pascal@0 45 }
pascal@0 46 }
pascal@0 47 }
pascal@0 48
pascal@0 49 if (isset($_POST['mykernel']) && !isset($_POST['packages'])) {
pascal@0 50 $_POST['kernel'] = "custom";
pascal@0 51 upload("uploadkernel","kernel");
pascal@0 52 }
pascal@0 53
pascal@0 54 if (!isset($_POST['kernel'])) {
pascal@1 55 shell_exec("sudo ./helper --init");
pascal@0 56 if (isset($_POST['config'])) {
pascal@0 57 upload("uploadconf");
pascal@0 58 }
pascal@0 59 if (!file_exists($_POST["tmp_dir"]."uploadconf")) {
pascal@0 60 ?>
pascal@0 61
pascal@0 62 <p>
pascal@0 63 The file <u>/etc/packages.conf</u> in the initramfs holds all information
pascal@0 64 to rebuild your Tiny SliTaz system. You should upload your
pascal@0 65 <u>/etc/packages.conf</u> first if you want to upgrade your system only.
pascal@0 66 </p>
pascal@0 67
pascal@0 68 <form method="post" enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
pascal@0 69 Packages configuration:
pascal@0 70 <input type="file" name="uploadconf" />
pascal@0 71 <input name="config" value="Get config" type="submit" />
pascal@0 72 <?php post_hidden(); ?>
pascal@0 73 </form>
pascal@0 74 <?php
pascal@0 75 }
pascal@0 76 if (isset($_POST['mypackages'])) {
pascal@0 77 upload("uploadpkgs");
pascal@0 78 shell_exec("./helper --pkgs-extract uploadpkgs ".$_POST['tmp_dir']);
pascal@0 79 }
pascal@0 80 if (!file_exists($_POST["tmp_dir"]."uploadpkgs")) {
pascal@0 81 ?>
pascal@0 82
pascal@0 83 <p>
pascal@0 84 You can upload a tazpkg file (.tazpkg) or a tarball of tazpkg files (.tar).
pascal@0 85 These packages will extend the official packages list and will be chosen when
pascal@0 86 the package names are found to be matching. You can find some examples in the
pascal@0 87 <a href="http://hg.slitaz.org/wok-tiny/file/">Tiny SliTaz repository</a>.
pascal@0 88 </p>
pascal@0 89 <div>
pascal@0 90 <form method="post" enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
pascal@0 91 Additional packages:
pascal@0 92 <input type="file" name="uploadpkgs" />
pascal@0 93 <input name="mypackages" value="Get packages" type="submit" />
pascal@0 94 <?php post_hidden(); ?>
pascal@0 95 </form>
pascal@0 96 </div>
pascal@0 97 <p>
pascal@0 98 <?php
pascal@0 99 }
pascal@0 100 ?>
pascal@0 101 </p>
pascal@0 102
pascal@0 103 <a name="kernel"></a>
pascal@0 104 <h2>Linux kernel</h2>
pascal@0 105
pascal@0 106 <p>
pascal@0 107 You can upload a custom kernel or use an official one.
pascal@0 108 Your kernel should have an embedded initramfs with busybox like
pascal@0 109 <a href="dist/rootfs.cpio" title="See CONFIG_INITRAMFS_SOURCE">this one</a>.
pascal@0 110 </p>
pascal@0 111
pascal@0 112 <div>
pascal@0 113 <form method="post" enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
pascal@0 114 Custom kernel (bzImage file):
pascal@0 115 <input type="file" name="uploadkernel" />
pascal@0 116 <input name="mykernel" value="Get kernel" type="submit" />
pascal@0 117 <?php post_hidden(); ?>
pascal@0 118 </form>
pascal@0 119 </div>
pascal@0 120
pascal@0 121 <div>
pascal@0 122 <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" name="kernels">
pascal@5 123 <input type="hidden" name="kernel" value="linux" />
pascal@0 124 <p>
pascal@0 125 </p>
pascal@0 126
pascal@0 127 <div align="center">
pascal@0 128 <input name="continue" value="Continue" type="submit" />
pascal@0 129 </div>
pascal@0 130 </form>
pascal@0 131 </div>
pascal@0 132 <?php
pascal@0 133 }
pascal@0 134 ?>
pascal@0 135