Browse code

package builder: final support for aarch64

Added rpi3 image - for Raspberry Pi 3.
constants.py contains also a list of spec files for Vivace to ignore for
aarch64.

Change-Id: I864e2b1405f968aefa0b73e309129708c80e2dc6
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/4474
Tested-by: gerrit-photon <photon-checkins@vmware.com>
Reviewed-by: Anish Swaminathan <anishs@vmware.com>

Alexey Makhalov authored on 2017/12/07 19:14:42
Showing 31 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,8 @@
0
+{
1
+    "minimal" : {
2
+        "title" : "Photon Minimal",
3
+        "file" : "packages_minimal_rpi3.json",
4
+        "visible" : true,
5
+        "include" : []
6
+    }
7
+}
0 8
new file mode 100644
... ...
@@ -0,0 +1,12 @@
0
+{
1
+    "packages":["glibc", "zlib", "filesystem",
2
+                "pkg-config", "bash", "bzip2", "shadow", "procps-ng", "coreutils", "bc", "libtool", "net-tools",
3
+                "findutils", "xz", "iproute2", "util-linux", "kmod", "linux", "ca-certificates", "curl", "iptables", "Linux-PAM",
4
+                "systemd", "dbus", "file", "e2fsprogs", "rpm","gawk","gptfdisk",
5
+                "openssh", "gdbm", "parted",
6
+                "photon-release", "photon-repos",
7
+                "sed", "grep", "cpio", "gzip", "vim", "libdb", "tdnf",
8
+                "which", "tzdata", "motd", "gdbm"]
9
+}
10
+
11
+
... ...
@@ -25,10 +25,12 @@ VMDK_CONFIG_SAFE_FILE=${BUILD_SCRIPTS_PATH}/$IMG_NAME/vmdk_safe_$IMG_NAME.json
25 25
 
26 26
 cd $BUILD_SCRIPTS_PATH
27 27
 image_list=`for i in $(ls -d */); do echo ${i%%/}; done`
28
-if ! [[ $image_list =~ (^|[[:space:]])$IMG_NAME($|[[:space:]]) ]]
29
-  then
28
+if ! [[ $image_list =~ (^|[[:space:]])$IMG_NAME($|[[:space:]]) ]] ; then
30 29
     echo "Input image name not supported. Aborting."; exit 1;
31 30
 fi
31
+if [[ $IMG_NAME == ova* ]] ; then
32
+    command -v ovftool >/dev/null 2>&1 || { echo "Ovftool not installed. Aborting." >&2; exit 1; }
33
+fi
32 34
 
33 35
 rm -rf $WORKING_DIR
34 36
 mkdir -p $WORKING_DIR/installer
... ...
@@ -39,15 +41,7 @@ cp $VMDK_CONFIG_FILE $VMDK_CONFIG_SAFE_FILE
39 39
 cp ${BUILD_SCRIPTS_PATH}/mk-setup-vmdk.sh .
40 40
 cp ${BUILD_SCRIPTS_PATH}/mk-clean-vmdk.sh .
41 41
 
42
-if [[ $IMG_NAME == ova* ]]
43
-  then
44
-    command -v ovftool >/dev/null 2>&1 || { echo "Ovftool not installed. Aborting." >&2; exit 1; }
45
-fi
46
-
47
-if [ -e ${BUILD_SCRIPTS_PATH}/${IMG_NAME}/mk-setup-grub.sh ]
48
-  then
49
-    cp ${BUILD_SCRIPTS_PATH}/${IMG_NAME}/mk-setup-grub.sh .
50
-fi
42
+cp -r ${BUILD_SCRIPTS_PATH}/${IMG_NAME}/* .
51 43
 
52 44
 PASSWORD=`date | md5sum | cut -f 1 -d ' '`
53 45
 sed -i "s/PASSWORD/$PASSWORD/" $VMDK_CONFIG_SAFE_FILE
... ...
@@ -59,12 +53,13 @@ if [ -n "$ADDITIONAL_RPMS_PATH" ]
59 59
 fi
60 60
 
61 61
 ./photonInstaller.py -p $GENERATED_DATA_PATH/build_install_options_$IMG_NAME.json -r $PHOTON_STAGE_PATH/RPMS -v $WORKING_DIR/photon-${IMG_NAME} -o $GENERATED_DATA_PATH -d $PHOTON_STAGE_PATH/pkg_info.json -f $VMDK_CONFIG_SAFE_FILE
62
+status=$?
62 63
 cat $VMDK_CONFIG_SAFE_FILE
63 64
 rm $VMDK_CONFIG_SAFE_FILE
64 65
 
65 66
 cd $BUILD_SCRIPTS_PATH
66 67
 
67
-./customize_cloud_image.py \
68
+[ $status -eq 0 ] && ./customize_cloud_image.py \
68 69
  -r ${PHOTON_IMG_OUTPUT_PATH}/photon-${IMG_NAME}.raw \
69 70
  -c $VMDK_CONFIG_FILE \
70 71
  -w $WORKING_DIR \
... ...
@@ -165,7 +165,10 @@ if __name__ == '__main__':
165 165
             print "  Copying additional files into the raw image ..."
166 166
             for filetuples in config['additionalfiles']:
167 167
                 for src,dest in filetuples.iteritems():
168
-                    shutil.copyfile(options.build_scripts_path + '/' + options.image_name + '/' + src, options.mount_path + '/' + dest)
168
+		    if (os.path.isdir(options.build_scripts_path + '/' + options.image_name + '/' + src)):
169
+                        shutil.copytree(options.build_scripts_path + '/' + options.image_name + '/' + src, options.mount_path + dest, True)
170
+                    else:
171
+                        shutil.copyfile(options.build_scripts_path + '/' + options.image_name + '/' + src, options.mount_path + dest)
169 172
 
170 173
 
171 174
         if 'postinstallscripts' in config:
... ...
@@ -179,17 +182,22 @@ if __name__ == '__main__':
179 179
                 utils.runshellcommand("chroot {} /bin/bash -c '/tempscripts/{}'".format(options.mount_path, script))
180 180
             shutil.rmtree(options.mount_path + "/tempscripts", ignore_errors=True)
181 181
 
182
+    except Exception as e:
183
+	print e
184
+
185
+    finally:
182 186
         utils.runshellcommand("umount -l {}".format(options.mount_path + "/sys"))
183 187
         utils.runshellcommand("umount -l {}".format(options.mount_path + "/dev/pts"))
184 188
         utils.runshellcommand("umount -l {}".format(options.mount_path + "/dev"))
185 189
         utils.runshellcommand("umount -l {}".format(options.mount_path + "/proc"))
190
+
191
+        utils.runshellcommand("sync")
186 192
         utils.runshellcommand("umount -l {}".format(options.mount_path))
187 193
 
188 194
         mount_out = utils.runshellcommand("mount")
189 195
         print "List of mounted devices:"
190 196
         print mount_out
191 197
 
192
-    finally:
193 198
         utils.runshellcommand("kpartx -d {}".format(disk_device))
194 199
         utils.runshellcommand("losetup -d {}".format(disk_device))
195 200
 
... ...
@@ -217,6 +225,13 @@ if __name__ == '__main__':
217 217
             tgzout = tarfile.open(tarname, "w:gz")
218 218
             tgzout.add(raw_image, arcname=os.path.basename(raw_image))
219 219
             tgzout.close()
220
+        elif config['artifacttype'] == 'xz':
221
+            print "Generating the xz artifact ..."
222
+            utils.runshellcommand("xz -z -k {}".format(raw_image))
223
+#            tarname = img_path + '/photon-' + options.image_name + '-' + photon_release_ver + '-' + photon_build_num + '.xz'
224
+#            tgzout = tarfile.open(tarname, "w:xz")
225
+#            tgzout.add(raw_image, arcname=os.path.basename(raw_image))
226
+#            tgzout.close()
220 227
         elif config['artifacttype'] == 'vhd':
221 228
             relrawpath = os.path.relpath(raw_image, options.src_root)
222 229
             vhdname = os.path.dirname(relrawpath) + '/photon-' + options.image_name + '-' + photon_release_ver + '-' + photon_build_num + '.vhd'
... ...
@@ -88,9 +88,9 @@ DISK_DEVICE=`losetup --show -f $VMDK_IMAGE_NAME`
88 88
 echo "Creating partition on raw disk"
89 89
 if [ $SWAP_PARTITION_SIZE -gt 0 ] 
90 90
 then
91
-      sgdisk -n 1::+3M -n 2::+${ROOT_PARTITION_SIZE}G -n 3: -p $DISK_DEVICE >> $LOGFILE
91
+      sgdisk -n 1::+8M -n 2::+${ROOT_PARTITION_SIZE}G -n 3: -p $DISK_DEVICE >> $LOGFILE
92 92
 else
93
-      sgdisk -n 1::+3M -n 2: -p $DISK_DEVICE >> $LOGFILE
93
+      sgdisk -n 1::+8M -n 2: -p $DISK_DEVICE >> $LOGFILE
94 94
 fi
95 95
 
96 96
 if [ $BOOT_FIRM_WARE = "efi" ]
97 97
new file mode 100755
98 98
Binary files /dev/null and b/support/cloud-image-builder/rpi3/esp/EFI/BOOT/bootaa64.efi differ
99 99
new file mode 100755
100 100
Binary files /dev/null and b/support/cloud-image-builder/rpi3/esp/bootcode.bin differ
101 101
new file mode 100755
... ...
@@ -0,0 +1,22 @@
0
+# Get more options/information on http://elinux.org/RPiconfig
1
+# or on https://www.raspberrypi.org/documentation/configuration/config-txt.md
2
+# Our kernels are located on a Linux partition. Chainload U-Boot to load them.
3
+kernel=u-boot.bin
4
+# Use 64 MB for GPU for RPi with 256 MB (Min 16 - Max 192 MB)
5
+gpu_mem_256=64
6
+# Use 64 MB for GPU for RPi with 512 MB (Min 16 - Max 448 MB)
7
+gpu_mem_512=64
8
+# Use 128 MB for GPU for RPi with 1024 MB (Min 16 - Max 944 MB)
9
+gpu_mem_1024=128
10
+# Turbo mode: 0 = enable dynamic freq/voltage - 1 = always max
11
+force_turbo=0
12
+# Start in turbo mode for 30 seconds or until cpufreq sets a frequency
13
+initial_turbo=30
14
+# DO NOT overvoltage manually to not void warranty!
15
+over_voltage=0
16
+# Boot in AArch64 (64-bit) mode
17
+arm_control=0x200
18
+# Fix mini UART input frequency, and setup/enable up the UART.
19
+enable_uart=1
20
+# Disable warning overlays as they don't work well together with linux's graphical output
21
+avoid_warnings=1
0 22
new file mode 100755
1 23
Binary files /dev/null and b/support/cloud-image-builder/rpi3/esp/fixup.dat differ
2 24
new file mode 100755
3 25
Binary files /dev/null and b/support/cloud-image-builder/rpi3/esp/start.elf differ
4 26
new file mode 100755
... ...
@@ -0,0 +1 @@
0
+bootaa64
0 1
new file mode 100755
1 2
Binary files /dev/null and b/support/cloud-image-builder/rpi3/esp/u-boot.bin differ
2 3
new file mode 100755
... ...
@@ -0,0 +1,60 @@
0
+#!/bin/bash
1
+#################################################
2
+#       Title:  mk-prepare-system               #
3
+#        Date:  2014-11-26                      #
4
+#     Version:  1.0                             #
5
+#      Author:  mbassiouny@vmware.com           #
6
+#     Options:                                  #
7
+#################################################
8
+#   Overview
9
+#       Preparing the system to install photon
10
+#   End
11
+#
12
+set -o errexit      # exit if error...insurance ;
13
+set -o nounset      # exit if variable not initalized
14
+set +h          # disable hashall
15
+source config.inc
16
+source function.inc
17
+PRGNAME=${0##*/}    # script name minus the path
18
+
19
+LOGFILE=/var/log/"${PRGNAME}-${LOGFILE}"    #   set log file name
20
+#LOGFILE=/dev/null      #   uncomment to disable log file
21
+
22
+[ ${EUID} -eq 0 ]   || fail "${PRGNAME}: Need to be root user: FAILURE"
23
+[ -z ${BUILDROOT} ] && fail "${PRGNAME}: Build root not set: FAILURE"
24
+
25
+cd ${BUILDROOT} || fail "${PRGNAME}: Change directory: ${BUILDROOT}: FAILURE"
26
+
27
+#
28
+#   Setup the filesystem for chapter 06
29
+#
30
+if [[   $# -gt 0 ]] && [[ $1 == 'install' ]]; then
31
+    mkdir -p ${BUILDROOT}/var/lib/rpm
32
+    mkdir -p ${BUILDROOT}/cache/tdnf
33
+    rpm   --root ${BUILDROOT} --initdb
34
+    tdnf install filesystem --installroot ${BUILDROOT} --nogpgcheck --assumeyes
35
+else
36
+    RPMPKG="$(find RPMS -name 'filesystem-[0-9]*.rpm' -print)"
37
+    [ -z ${RPMPKG} ] && fail "  Filesystem rpm package missing: Can not continue"
38
+    run_command "   Installing filesystem" "rpm -Uvh --nodeps --root ${BUILDROOT} --dbpath /var/lib/rpm ${RPMPKG}" "${LOGFILE}"
39
+fi
40
+ 
41
+#   Ommited in the filesystem.spec file - not needed for booting
42
+[ -e ${BUILDROOT}/dev/console ] || mknod -m 600 ${BUILDROOT}/dev/console c 5 1
43
+[ -e ${BUILDROOT}/dev/null ]    || mknod -m 666 ${BUILDROOT}/dev/null c 1 3
44
+[ -e ${BUILDROOT}/dev/random ]  || mknod -m 444 ${BUILDROOT}/dev/random c 1 8
45
+[ -e ${BUILDROOT}/dev/urandom ] || mknod -m 444 ${BUILDROOT}/dev/urandom c 1 9
46
+
47
+if [[   $# -eq 0 ]] || [[ $1 != 'install' ]]; then
48
+    chown -R 0:0 ${BUILDROOT}/* || :
49
+fi
50
+
51
+#
52
+#   Mount kernel filesystem
53
+#
54
+#if ! mountpoint ${BUILDROOT}/dev    >/dev/null 2>&1; then mount --rbind /dev ${BUILDROOT}/dev; mount --make-rslave ${BUILDROOT}/dev; fi
55
+#if ! mountpoint ${BUILDROOT}/proc   >/dev/null 2>&1; then mount -t proc proc ${BUILDROOT}/proc; fi
56
+#if ! mountpoint ${BUILDROOT}/sys    >/dev/null 2>&1; then mount -t sysfs sysfs ${BUILDROOT}/sys; fi
57
+#if ! mountpoint ${BUILDROOT}/run    >/dev/null 2>&1; then mount -t tmpfs tmpfs ${BUILDROOT}/run; fi
58
+#if [ -h ${BUILDROOT}/dev/shm ];          then mkdir -pv ${BUILDROOT}/$(readlink ${BUILDROOT}/dev/shm); fi
59
+exit 0
0 60
new file mode 100755
... ...
@@ -0,0 +1,107 @@
0
+#!/bin/bash
1
+#################################################
2
+#       Title:  mk-setup-grub                   #
3
+#        Date:  2014-11-26                      #
4
+#     Version:  1.0                             #
5
+#      Author:  sharathg@vmware.com             #
6
+#     Options:                                  #
7
+#################################################
8
+#    Overview
9
+#        This is a precursor for the vmware build system.
10
+#        This assumes that an empty hard disk is attached to the build VM.
11
+#        The path to this empty disk is specified in the HDD variable in config.inc
12
+#    End
13
+#
14
+
15
+grub_efi_install()
16
+{
17
+    mkdir -p $BUILDROOT/boot/efi
18
+    #
19
+    # if it is a loop device then we should mount the dev mapped boot partition
20
+    #
21
+    BOOT_PARTITION=/dev/mapper/`basename ${HDD}`p1
22
+    mkfs.fat $BOOT_PARTITION
23
+    mount -t vfat $BOOT_PARTITION $BUILDROOT/boot/efi
24
+    cp -r esp/* $BUILDROOT/boot/efi/
25
+    umount $BUILDROOT/boot/efi
26
+}
27
+
28
+set -o errexit        # exit if error...insurance ;)
29
+set -o nounset        # exit if variable not initalized
30
+set +h            # disable hashall
31
+PRGNAME=${0##*/}    # script name minus the path
32
+source config.inc        #    configuration parameters
33
+source function.inc        #    commonn functions
34
+LOGFILE=/var/log/"${PRGNAME}-${LOGFILE}"    #    set log file name
35
+ARCH=$(uname -m)    # host architecture
36
+[ ${EUID} -eq 0 ]    || fail "${PRGNAME}: Need to be root user: FAILURE"
37
+> ${LOGFILE}        #    clear/initialize logfile
38
+
39
+# Check if passing a HHD and partition
40
+if [ $# -eq 6 ] ; then
41
+    BOOTMODE=$1
42
+    HDD=$2
43
+    ROOT_PARTITION_PATH=$3
44
+    BOOT_PARTITION_PATH=$4
45
+    BOOT_DIRECTORY=$5
46
+    BOOT_PARTITION_NUMBER=$6
47
+fi
48
+
49
+#
50
+#    Install grub2.
51
+#
52
+#BOOT_UUID=$(blkid -s UUID -o value $BOOT_PARTITION_PATH)
53
+
54
+mkdir -p $BUILDROOT/boot/grub2
55
+ln -sfv grub2 $BUILDROOT/boot/grub
56
+
57
+grub_efi_install
58
+
59
+rm -rf ${BUILDROOT}/boot/grub2/fonts
60
+cp boot/ascii.pf2 ${BUILDROOT}/boot/grub2/
61
+mkdir -p ${BUILDROOT}/boot/grub2/themes/photon
62
+cp boot/splash.png ${BUILDROOT}/boot/grub2/themes/photon/photon.png
63
+cp boot/terminal_*.tga ${BUILDROOT}/boot/grub2/themes/photon/
64
+cp boot/theme.txt ${BUILDROOT}/boot/grub2/themes/photon/
65
+
66
+EXTRA_PARAMS="rootwait rw console=ttyS0,115200n8 console=tty0"
67
+
68
+cat > $BUILDROOT/boot/grub2/grub.cfg << EOF
69
+# Begin /boot/grub2/grub.cfg
70
+
71
+set default=0
72
+set timeout=2
73
+loadfont ${BOOT_DIRECTORY}grub2/ascii.pf2
74
+
75
+insmod all_video
76
+insmod gfxterm
77
+insmod png
78
+insmod ext2
79
+
80
+set gfxmode="800x600"
81
+gfxpayload=keep
82
+
83
+terminal_output gfxterm
84
+
85
+set theme=${BOOT_DIRECTORY}grub2/themes/photon/theme.txt
86
+load_env -f ${BOOT_DIRECTORY}photon.cfg
87
+if [ -f  ${BOOT_DIRECTORY}systemd.cfg ]; then
88
+    load_env -f ${BOOT_DIRECTORY}systemd.cfg
89
+else
90
+    set systemd_cmdline=net.ifnames=0
91
+fi
92
+set rootpartition=/dev/mmcblk0p2
93
+
94
+menuentry "Photon" {
95
+    linux ${BOOT_DIRECTORY}\$photon_linux root=\$rootpartition \$photon_cmdline \$systemd_cmdline $EXTRA_PARAMS
96
+    if [ -f ${BOOT_DIRECTORY}\$photon_initrd ]; then
97
+        initrd ${BOOT_DIRECTORY}\$photon_initrd
98
+    fi
99
+}
100
+# End /boot/grub2/grub.cfg
101
+EOF
102
+
103
+#Cleanup the workspace directory
104
+rm -rf "$BUILDROOT"/tools
105
+rm -rf "$BUILDROOT"/RPMS
106
+
0 107
new file mode 100755
... ...
@@ -0,0 +1,117 @@
0
+#!/bin/bash
1
+#################################################
2
+#	Title:	mk-setup-vmdk			#
3
+#        Date:	2014-11-14   	 		#
4
+#     Version:	1.0				#
5
+#      Author:	dthaluru@vmware.com		#
6
+#     Options:					#
7
+#################################################
8
+#	Overview
9
+#		Creating hard disk with photon on it
10
+#	End
11
+#
12
+set -o errexit		# exit if error...insurance ;)
13
+set -o nounset		# exit if variable not initalized
14
+set +h			# disable hashall
15
+PRGNAME=${0##*/}	# script name minus the path
16
+source config.inc		#	configuration parameters
17
+source function.inc		#	commonn functions
18
+LOGFILE="/var/log/${PRGNAME}-${LOGFILE}"	#	set log file name
19
+LFS_DISK="/mnt/photon-disk"
20
+[ ${EUID} -eq 0 ]	|| die "${PRGNAME}: Need to be root user: FAILURE"
21
+> ${LOGFILE}		#	clear/initialize logfile
22
+
23
+echo -e "Setting up the disk...\n"
24
+set -x
25
+LFS_OPTION=""
26
+VMDK_IMAGE_NAME=mydisk.vmdk
27
+ROOT_PARTITION_SIZE=1
28
+SWAP_PARTITION_SIZE=0
29
+BOOT_FIRM_WARE="bios"
30
+
31
+while [[ $# > 0 ]]
32
+do
33
+	key="$1"
34
+	shift
35
+ 
36
+	case $key in
37
+		-rp|--ROOT_PARTITION_SIZE)
38
+		ROOT_PARTITION_SIZE="$1"
39
+		shift
40
+	;;
41
+		-sp|--SWAP_PARTITION_SIZE)
42
+		SWAP_PARTITION_SIZE="$1"
43
+		shift
44
+	;;
45
+		-fm|--firmware)
46
+		BOOT_FIRM_WARE="$1"
47
+		shift
48
+
49
+	;;
50
+		-a|--all)
51
+		LFS_OPTION="all"
52
+	;;
53
+		-m|--minimal)
54
+		LFS_OPTION=""
55
+	;;
56
+		-n|--IMG_NAME)
57
+		VMDK_IMAGE_NAME="$1".raw
58
+		shift
59
+	;;
60
+		-h|--help)
61
+		echo 'Usage:'
62
+		echo '-rp|--ROOT_PARTITION_SIZE :sets root partition size'
63
+		echo '-sp|--SWAP_PARTITION_SIZE :sets swap partition size'
64
+		echo '-a|--all                  :installs all available packages'
65
+		echo '-n|--IMG_NAME             :sets name of the vmdk image'
66
+		echo '-m|--minimal              :installs basic packages'
67
+		echo '-fm|--firmware            :firmware'
68
+		exit 0
69
+	;;
70
+	*)
71
+		# unknown option
72
+	;;
73
+	esac
74
+done
75
+
76
+mkdir -p $LFS_DISK
77
+
78
+TOTAL_SIZE=` echo $ROOT_PARTITION_SIZE + $SWAP_PARTITION_SIZE | bc`
79
+
80
+echo "Creating raw disk file " $VMDK_IMAGE_NAME " of size " $TOTAL_SIZE
81
+# hack to create 512MB image instead of 1GB - use 512 instead of 1024
82
+dd if=/dev/zero of=$VMDK_IMAGE_NAME bs=1024 count=$(($TOTAL_SIZE * 1024 * 512))
83
+chmod 755 $VMDK_IMAGE_NAME
84
+
85
+echo "Associating loopdevice to raw disk"
86
+DISK_DEVICE=`losetup --show -f $VMDK_IMAGE_NAME`
87
+
88
+parted -s $DISK_DEVICE mklabel msdos mkpart primary fat32 1M 30M mkpart primary ext4 30M 100%
89
+#echo "Creating partition on raw disk"
90
+#if [ $SWAP_PARTITION_SIZE -gt 0 ] 
91
+#then
92
+#      sgdisk -n 1::+8M -n 2::+${ROOT_PARTITION_SIZE}G -n 3: -p $DISK_DEVICE >> $LOGFILE
93
+#else
94
+#      sgdisk -n 1::+8M -n 2: -p $DISK_DEVICE >> $LOGFILE
95
+#fi
96
+
97
+#if [ $BOOT_FIRM_WARE = "efi" ]
98
+#then
99
+#    echo "EFI boot partition"
100
+#    sgdisk -t1:ef00 $DISK_DEVICE >> $LOGFILE
101
+#else
102
+#    echo "BIOS boot partition"
103
+#    sgdisk -t1:ef02 $DISK_DEVICE >> $LOGFILE
104
+#fi
105
+echo "Mapping device partition to loop device"
106
+kpartx -avs $DISK_DEVICE >> $LOGFILE
107
+
108
+DEVICE_NAME=`echo $DISK_DEVICE|cut -c6- `
109
+
110
+echo "Adding file system to device partition"
111
+mkfs -t ext4 /dev/mapper/${DEVICE_NAME}p2
112
+
113
+echo "DISK_DEVICE=$DISK_DEVICE"
114
+echo "ROOT_PARTITION=/dev/mapper/${DEVICE_NAME}p2"
115
+
116
+
0 117
new file mode 100644
... ...
@@ -0,0 +1,7 @@
0
+[photon-dev]
1
+name=VMware Photon Linux 2.0(aarch64)
2
+baseurl=https://dl.bintray.com/vmware/photon_dev_$basearch
3
+gpgkey=file:///etc/pki/rpm-gpg/VMWARE-RPM-GPG-KEY
4
+gpgcheck=0
5
+enabled=1
6
+skip_if_unavailable=True
0 7
new file mode 100644
... ...
@@ -0,0 +1,15 @@
0
+[Unit]
1
+Description=Resizes rootfs and creates swap partition
2
+DefaultDependencies=no
3
+Conflicts=shutdown.target
4
+After=systemd-remount-fs.service
5
+Before=systemd-sysusers.service sysinit.target shutdown.target
6
+ConditionPathExists=!/dev/mmcblk0p3
7
+
8
+[Service]
9
+Type=oneshot
10
+RemainAfterExit=yes
11
+ExecStart=/usr/local/bin/resizefs.sh
12
+
13
+[Install]
14
+WantedBy=multi-user.target
0 15
new file mode 100755
... ...
@@ -0,0 +1,6 @@
0
+#! /bin/bash
1
+
2
+parted /dev/mmcblk0 resizepart 2 90%
3
+parted /dev/mmcblk0 mkpart primary linux-swap 90% 100%
4
+partprobe
5
+resize2fs /dev/mmcblk0p2
0 6
new file mode 100755
... ...
@@ -0,0 +1,14 @@
0
+#!/bin/bash
1
+
2
+echo -e "changeme\nchangeme" | passwd root
3
+chage -d 0 -M 999 root
4
+
5
+(cd /etc/yum.repos.d; rm `ls | grep -v photon-dev`)
6
+
7
+echo "/dev/mmcblk0p3 none swap defaults 0 0" >> /etc/fstab
8
+
9
+chmod +x /usr/local/bin/resizefs.sh
10
+ln -s /lib/systemd/system/resizefs.service /etc/systemd/system/multi-user.target.wants/resizefs.service
11
+ln -s /lib/systemd/system/sshd-keygen.service /etc/systemd/system/multi-user.target.wants/sshd-keygen.service
12
+ln -s /lib/systemd/system/sshd.service /etc/systemd/system/multi-user.target.wants/sshd.service
13
+
0 14
new file mode 100644
... ...
@@ -0,0 +1,23 @@
0
+{
1
+	"hostname": "photon-machine",
2
+	"password":
3
+		{
4
+			"crypted": false,
5
+			"text": "PASSWORD"
6
+		},
7
+	"type": "minimal",
8
+    "size": {"root": "1", "swap": "0"},
9
+    "boot":"efi",
10
+    "public_key":"<ssh-key-here>",
11
+    "postinstallscripts": ["rpi3-custom-patch.sh"],
12
+    "additionalfiles": [
13
+                            {"root/boot/grub2/arm64-efi": "/boot/grub2/arm64-efi"},
14
+                            {"root/boot/dtb-4.4.36-8": "/boot/dtb"},
15
+                            {"photon-dev.repo": "/etc/yum.repos.d/photon-dev.repo"},
16
+                            {"resizefs.sh": "/usr/local/bin/resizefs.sh"},
17
+                            {"resizefs.service": "/lib/systemd/system/resizefs.service"}
18
+                       ],
19
+    "artifacttype": "xz",
20
+    "keeprawdisk": "true"
21
+}
22
+
... ...
@@ -47,6 +47,7 @@ class Utils(object):
47 47
         return data
48 48
 
49 49
     def runshellcommand(self, cmd, ignore_errors=False):
50
+        print cmd
50 51
         command=cmd.split()
51 52
         p = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
52 53
         output, err = p.communicate()
... ...
@@ -130,7 +130,7 @@ class ToolChainUtils(object):
130 130
                     rpmFile=pkgUtils.findRPMFileForGivenPackage(package)
131 131
             if rpmFile is None:
132 132
                 # sqlite-autoconf package was renamed, but it still published as sqlite-autoconf
133
-                if package == "sqlite":
133
+                if (package == "sqlite") and (platform.machine() == "x86_64"):
134 134
                     package = "sqlite-autoconf"
135 135
                 rpmFile=self.findRPMFileInGivenLocation(package, constants.prevPublishRPMRepo)
136 136
                 if rpmFile is None:
... ...
@@ -192,7 +192,7 @@ class ToolChainUtils(object):
192 192
             rpmFile = pkgUtils.findRPMFileForGivenPackage(package)
193 193
             if rpmFile is None:
194 194
                 # sqlite-autoconf package was renamed, but it still published as sqlite-autoconf
195
-#                if package == "sqlite":
195
+#                if (package == "sqlite") and (platform.machine() == "x86_64"):
196 196
 #                    package = "sqlite-autoconf"
197 197
                 rpmFile = self.findRPMFileInGivenLocation(package, constants.prevPublishRPMRepo)
198 198
                 if rpmFile is None:
... ...
@@ -368,6 +368,8 @@ class constants(object):
368 368
             "aufs-util.spec",
369 369
             # open-vm-tools does not support aarch64
370 370
             "open-vm-tools.spec",
371
+            # syslinux does not support aarch64
372
+            "syslinux.spec",
371 373
             # TODO: mariadb build hangs on amd64
372 374
             "mariadb.spec",
373 375
             # TODO: mysql fails on amd64 with fpic
... ...
@@ -406,7 +408,36 @@ class constants(object):
406 406
             # sysdig for aarch64 requires luajit, skip it and falco
407 407
             # https://github.com/draios/sysdig/issues/833
408 408
             "sysdig.spec",
409
-            "falco.spec"
409
+            "falco.spec",
410
+
411
+            # VIVACE packages
412
+            # need to update to mono-4.5
413
+            "mono.spec",
414
+            "banshee.spec",
415
+            "dbus-sharp.spec",
416
+            "dbus-sharp-glib.spec",
417
+            "gnome-keyring-sharp.spec",
418
+            "gnome-sharp.spec",
419
+            "gtk-sharp2.spec",
420
+            "mono-addins.spec",
421
+            "monodevelop.spec",
422
+            "nuget.spec",
423
+            "nunit.spec",
424
+            "pinta.spec",
425
+            "taglib-sharp.spec",
426
+            "tomboy.spec",
427
+            "totem.spec",
428
+            "webkit-sharp.spec",
429
+            # compilation issues with libwebkit
430
+            "libwebkit.spec",
431
+            "xf86-video-vmware.spec",
432
+            "xf86-video-intel.spec",
433
+            "xf86-input-vmmouse.spec",
434
+            # does not recognize aarch64
435
+            "thunderbird.spec",
436
+            #
437
+            "open-vm-tools-vivace.spec"
438
+
410 439
         ]
411 440
     }
412 441
 
... ...
@@ -14,10 +14,11 @@ if [ $# -lt 1 ]; then
14 14
 fi
15 15
 
16 16
 PUBLISHRPMSPATHDIR=$1
17
+INPUTFILE=xrpmfilelist-$(uname -m)
17 18
 
18 19
 if [ $# -eq 2 ]; then
19 20
    PUBLISHCACHE=$2
20
-   while read FILE; do cp -r $PUBLISHCACHE/$FILE $PUBLISHRPMSPATHDIR/$FILE; done < xrpmfilelist
21
+   while read FILE; do cp -r $PUBLISHCACHE/$FILE $PUBLISHRPMSPATHDIR/$FILE; done < $INPUTFILE
21 22
 else
22
-   cat xrpmfilelist | awk '{print "https://bintray.com/artifact/download/vmware/photon_publish_x_rpms/"$1}' | xargs -n 1 -P 10 wget --user-agent Mozilla/4.0 -c -nv -nc -r -nH --cut-dirs=4 -P ${PUBLISHRPMSPATHDIR}
23
+   cat $INPUTFILE | awk '{print "https://bintray.com/artifact/download/vmware/photon_publish_x_rpms/"$1}' | xargs -n 1 -P 10 wget --user-agent Mozilla/4.0 -c -nv -nc -r -nH --cut-dirs=4 -P ${PUBLISHRPMSPATHDIR}
23 24
 fi
... ...
@@ -14,10 +14,11 @@ if [ $# -lt 1 ]; then
14 14
 fi
15 15
 
16 16
 PUBLISHRPMSPATHDIR=$1
17
+INPUTFILE=rpmfilelist-$(uname -m)
17 18
 
18 19
 if [ $# -eq 2 ]; then
19 20
    PUBLISHCACHE=$2
20
-   while read FILE; do cp -r $PUBLISHCACHE/$FILE $PUBLISHRPMSPATHDIR/$FILE; done < rpmfilelist
21
+   while read FILE; do cp -r $PUBLISHCACHE/$FILE $PUBLISHRPMSPATHDIR/$FILE; done < $INPUTFILE
21 22
 else
22
-   cat rpmfilelist | awk '{print "https://bintray.com/artifact/download/vmware/photon_publish_rpms/"$1}' | xargs -n 1 -P 10 wget --user-agent Mozilla/4.0 -c -nv -nc -r -nH --cut-dirs=4 -P ${PUBLISHRPMSPATHDIR}
23
+   cat $INPUTFILE | awk '{print "https://bintray.com/artifact/download/vmware/photon_publish_rpms/"$1}' | xargs -n 1 -P 10 wget --user-agent Mozilla/4.0 -c -nv -nc -r -nH --cut-dirs=4 -P ${PUBLISHRPMSPATHDIR}
23 24
 fi
24 25
deleted file mode 100644
... ...
@@ -1,87 +0,0 @@
1
-noarch/linux-api-headers-4.2.0-1.ph1.noarch.rpm
2
-noarch/man-pages-3.59-1.ph1.noarch.rpm
3
-noarch/apache-maven-3.3.9-4.ph1.noarch.rpm
4
-x86_64/python2-devel-2.7.11-1.ph1.x86_64.rpm
5
-x86_64/nspr-4.11-1.ph1.x86_64.rpm
6
-x86_64/rpm-4.13.0.1-5.ph2.x86_64.rpm
7
-x86_64/rpm-libs-4.13.0.1-5.ph2.x86_64.rpm
8
-x86_64/binutils-devel-2.25.1-1.ph1.x86_64.rpm
9
-x86_64/nss-3.21-1.ph1.x86_64.rpm
10
-x86_64/mpfr-devel-3.1.3-1.ph1.x86_64.rpm
11
-x86_64/cpio-2.12-1.ph1.x86_64.rpm
12
-x86_64/sed-4.2.2-1.ph1.x86_64.rpm
13
-x86_64/libffi-3.2.1-1.ph1.x86_64.rpm
14
-x86_64/gmp-6.0.0a-1.ph1.x86_64.rpm
15
-x86_64/diffutils-3.3-2.ph1.x86_64.rpm
16
-x86_64/gcc-5.3.0-1.ph1.x86_64.rpm
17
-x86_64/gmp-devel-6.0.0a-1.ph1.x86_64.rpm
18
-x86_64/automake-1.15-1.ph1.x86_64.rpm
19
-x86_64/groff-1.22.2-1.ph1.x86_64.rpm
20
-x86_64/readline-7.0-1.ph1.x86_64.rpm
21
-x86_64/gettext-0.19.5.1-1.ph1.x86_64.rpm
22
-x86_64/perl-5.22.1-2.ph1.x86_64.rpm
23
-x86_64/man-db-2.7.5-1.ph1.x86_64.rpm
24
-x86_64/elfutils-libelf-0.165-1.ph1.x86_64.rpm
25
-x86_64/gdbm-1.11-1.ph1.x86_64.rpm
26
-x86_64/autoconf-2.69-3.ph1.x86_64.rpm
27
-x86_64/rpm-devel-4.13.0.1-5.ph2.x86_64.rpm
28
-x86_64/file-5.24-1.ph1.x86_64.rpm
29
-x86_64/mpfr-3.1.3-1.ph1.x86_64.rpm
30
-x86_64/zlib-devel-1.2.8-2.ph1.x86_64.rpm
31
-x86_64/libgcc-devel-5.3.0-1.ph1.x86_64.rpm
32
-x86_64/bison-3.0.4-1.ph1.x86_64.rpm
33
-x86_64/lua-5.3.2-1.ph1.x86_64.rpm
34
-x86_64/util-linux-2.27.1-1.ph1.x86_64.rpm
35
-x86_64/rpm-build-4.13.0.1-5.ph2.x86_64.rpm
36
-x86_64/procps-ng-3.3.11-1.ph1.x86_64.rpm
37
-x86_64/coreutils-8.24-1.ph1.x86_64.rpm
38
-x86_64/util-linux-devel-2.27.1-1.ph1.x86_64.rpm
39
-x86_64/m4-1.4.17-1.ph1.x86_64.rpm
40
-x86_64/grep-2.21-1.ph1.x86_64.rpm
41
-x86_64/tar-1.28-1.ph1.x86_64.rpm
42
-x86_64/bash-4.4-1.ph1.x86_64.rpm
43
-x86_64/ncurses-devel-6.0-1.ph1.x86_64.rpm
44
-x86_64/gawk-4.1.3-4.ph1.x86_64.rpm
45
-x86_64/libtool-2.4.6-1.ph1.x86_64.rpm
46
-x86_64/zlib-1.2.8-2.ph1.x86_64.rpm
47
-x86_64/python2-libs-2.7.11-1.ph1.x86_64.rpm
48
-x86_64/libgomp-5.3.0-1.ph1.x86_64.rpm
49
-x86_64/readline-devel-7.0-1.ph1.x86_64.rpm
50
-x86_64/sqlite-autoconf-3.11.0-1.ph1.x86_64.rpm
51
-x86_64/flex-2.5.39-1.ph1.x86_64.rpm
52
-x86_64/libstdc++-devel-5.3.0-1.ph1.x86_64.rpm
53
-x86_64/openssl-1.0.2g-1.ph1.x86_64.rpm
54
-x86_64/elfutils-0.165-1.ph1.x86_64.rpm
55
-x86_64/expat-2.1.0-1.ph1.x86_64.rpm
56
-x86_64/popt-1.16-1.ph1.x86_64.rpm
57
-x86_64/mpc-1.0.3-1.ph1.x86_64.rpm
58
-x86_64/bzip2-1.0.6-4.ph1.x86_64.rpm
59
-x86_64/glibc-2.22-3.ph1.x86_64.rpm
60
-x86_64/python2-2.7.11-1.ph1.x86_64.rpm
61
-x86_64/elfutils-devel-0.165-1.ph1.x86_64.rpm
62
-x86_64/patch-2.7.5-1.ph1.x86_64.rpm
63
-x86_64/xz-5.2.2-1.ph1.x86_64.rpm
64
-x86_64/binutils-2.25.1-1.ph1.x86_64.rpm
65
-x86_64/libgomp-devel-5.3.0-1.ph1.x86_64.rpm
66
-x86_64/bzip2-devel-1.0.6-4.ph1.x86_64.rpm
67
-x86_64/libgcc-5.3.0-1.ph1.x86_64.rpm
68
-x86_64/gzip-1.6-1.ph1.x86_64.rpm
69
-x86_64/elfutils-libelf-devel-0.165-1.ph1.x86_64.rpm
70
-x86_64/openssl-devel-1.0.2g-1.ph1.x86_64.rpm
71
-x86_64/pkg-config-0.28-1.ph1.x86_64.rpm
72
-x86_64/popt-devel-1.16-1.ph1.x86_64.rpm
73
-x86_64/flex-devel-2.5.39-1.ph1.x86_64.rpm
74
-x86_64/findutils-4.4.2-1.ph1.x86_64.rpm
75
-x86_64/libstdc++-5.3.0-1.ph1.x86_64.rpm
76
-x86_64/libpipeline-1.4.1-1.ph1.x86_64.rpm
77
-x86_64/make-4.1-1.ph1.x86_64.rpm
78
-x86_64/glibc-devel-2.22-3.ph1.x86_64.rpm
79
-x86_64/lua-devel-5.3.2-1.ph1.x86_64.rpm
80
-x86_64/ncurses-6.0-1.ph1.x86_64.rpm
81
-x86_64/texinfo-6.1-1.ph1.x86_64.rpm
82
-x86_64/nss-devel-3.21-1.ph1.x86_64.rpm
83
-x86_64/libcap-2.25-1.ph1.x86_64.rpm
84
-x86_64/go-1.4.2-5.ph1.x86_64.rpm
85
-x86_64/filesystem-1.0-7.ph1.x86_64.rpm
86
-x86_64/libdb-5.3.28-1.ph2dev.x86_64.rpm
87
-x86_64/libdb-devel-5.3.28-1.ph2dev.x86_64.rpm
88 1
new file mode 100644
... ...
@@ -0,0 +1,98 @@
0
+aarch64/bash-4.4-5.ph2.aarch64.rpm
1
+aarch64/binutils-2.29-3.ph2.aarch64.rpm
2
+aarch64/binutils-devel-2.29-3.ph2.aarch64.rpm
3
+aarch64/bison-3.0.4-3.ph2.aarch64.rpm
4
+aarch64/bzip2-1.0.6-8.ph2.aarch64.rpm
5
+aarch64/bzip2-devel-1.0.6-8.ph2.aarch64.rpm
6
+aarch64/bzip2-libs-1.0.6-8.ph2.aarch64.rpm
7
+aarch64/coreutils-8.27-2.ph2.aarch64.rpm
8
+aarch64/cpio-2.12-3.ph2.aarch64.rpm
9
+aarch64/diffutils-3.5-1.ph2.aarch64.rpm
10
+aarch64/elfutils-0.169-2.ph2.aarch64.rpm
11
+aarch64/elfutils-devel-0.169-2.ph2.aarch64.rpm
12
+aarch64/elfutils-libelf-0.169-2.ph2.aarch64.rpm
13
+aarch64/elfutils-libelf-devel-0.169-2.ph2.aarch64.rpm
14
+aarch64/expat-2.2.0-2.ph2.aarch64.rpm
15
+aarch64/expat-libs-2.2.0-2.ph2.aarch64.rpm
16
+aarch64/file-5.30-2.ph2.aarch64.rpm
17
+aarch64/file-devel-5.30-2.ph2.aarch64.rpm
18
+aarch64/filesystem-1.1-1.ph2.aarch64.rpm
19
+aarch64/findutils-4.6.0-3.ph2.aarch64.rpm
20
+aarch64/flex-2.6.4-2.ph2.aarch64.rpm
21
+aarch64/flex-devel-2.6.4-2.ph2.aarch64.rpm
22
+aarch64/gawk-4.1.4-1.ph2.aarch64.rpm
23
+aarch64/gcc-6.3.0-5.ph2.aarch64.rpm
24
+aarch64/gdbm-1.13-3.ph2.aarch64.rpm
25
+aarch64/gettext-0.19.8-1.ph2.aarch64.rpm
26
+aarch64/glibc-2.26-4.ph2.aarch64.rpm
27
+aarch64/glibc-devel-2.26-4.ph2.aarch64.rpm
28
+aarch64/glibc-iconv-2.26-4.ph2.aarch64.rpm
29
+aarch64/glibc-tools-2.26-4.ph2.aarch64.rpm
30
+aarch64/gmp-6.1.2-2.ph2.aarch64.rpm
31
+aarch64/gmp-devel-6.1.2-2.ph2.aarch64.rpm
32
+aarch64/go-1.8.1-2.ph2.aarch64.rpm
33
+aarch64/grep-3.0-3.ph2.aarch64.rpm
34
+aarch64/groff-1.22.3-2.ph2.aarch64.rpm
35
+aarch64/gzip-1.8-1.ph2.aarch64.rpm
36
+aarch64/libcap-2.25-7.ph2.aarch64.rpm
37
+aarch64/libdb-5.3.28-1.ph2.aarch64.rpm
38
+aarch64/libdb-devel-5.3.28-1.ph2.aarch64.rpm
39
+aarch64/libffi-3.2.1-5.ph2.aarch64.rpm
40
+aarch64/libgcc-6.3.0-5.ph2.aarch64.rpm
41
+aarch64/libgcc-devel-6.3.0-5.ph2.aarch64.rpm
42
+aarch64/libgomp-6.3.0-5.ph2.aarch64.rpm
43
+aarch64/libgomp-devel-6.3.0-5.ph2.aarch64.rpm
44
+aarch64/libpipeline-1.4.1-2.ph2.aarch64.rpm
45
+aarch64/libstdc++-6.3.0-5.ph2.aarch64.rpm
46
+aarch64/libstdc++-devel-6.3.0-5.ph2.aarch64.rpm
47
+aarch64/libtool-2.4.6-3.ph2.aarch64.rpm
48
+aarch64/lua-5.3.4-1.ph2.aarch64.rpm
49
+aarch64/lua-devel-5.3.4-1.ph2.aarch64.rpm
50
+aarch64/m4-1.4.18-1.ph2.aarch64.rpm
51
+aarch64/make-4.2.1-1.ph2.aarch64.rpm
52
+aarch64/man-db-2.7.6-4.ph2.aarch64.rpm
53
+aarch64/mpc-1.0.3-3.ph2.aarch64.rpm
54
+aarch64/mpfr-3.1.5-1.ph2.aarch64.rpm
55
+aarch64/mpfr-devel-3.1.5-1.ph2.aarch64.rpm
56
+aarch64/ncurses-6.0-11.ph2.aarch64.rpm
57
+aarch64/ncurses-devel-6.0-11.ph2.aarch64.rpm
58
+aarch64/ncurses-libs-6.0-11.ph2.aarch64.rpm
59
+aarch64/nspr-4.15-1.ph2.aarch64.rpm
60
+aarch64/nspr-devel-4.15-1.ph2.aarch64.rpm
61
+aarch64/nss-3.31-3.ph2.aarch64.rpm
62
+aarch64/nss-devel-3.31-3.ph2.aarch64.rpm
63
+aarch64/nss-libs-3.31-3.ph2.aarch64.rpm
64
+aarch64/openssl-1.0.2l-1.ph2.aarch64.rpm
65
+aarch64/openssl-devel-1.0.2l-1.ph2.aarch64.rpm
66
+aarch64/patch-2.7.5-4.ph2.aarch64.rpm
67
+aarch64/perl-5.24.1-3.ph2.aarch64.rpm
68
+aarch64/pkg-config-0.29.2-1.ph2.aarch64.rpm
69
+aarch64/popt-1.16-4.ph2.aarch64.rpm
70
+aarch64/popt-devel-1.16-4.ph2.aarch64.rpm
71
+aarch64/procps-ng-3.3.12-2.ph2.aarch64.rpm
72
+aarch64/python2-2.7.13-10.ph2.aarch64.rpm
73
+aarch64/python2-devel-2.7.13-10.ph2.aarch64.rpm
74
+aarch64/python2-libs-2.7.13-10.ph2.aarch64.rpm
75
+aarch64/readline-7.0-2.ph2.aarch64.rpm
76
+aarch64/readline-devel-7.0-2.ph2.aarch64.rpm
77
+aarch64/rpm-4.13.0.1-5.ph2.aarch64.rpm
78
+aarch64/rpm-build-4.13.0.1-5.ph2.aarch64.rpm
79
+aarch64/rpm-devel-4.13.0.1-5.ph2.aarch64.rpm
80
+aarch64/rpm-libs-4.13.0.1-5.ph2.aarch64.rpm
81
+aarch64/sed-4.4-2.ph2.aarch64.rpm
82
+aarch64/sqlite-3.19.3-1.ph2.aarch64.rpm
83
+aarch64/sqlite-libs-3.19.3-1.ph2.aarch64.rpm
84
+aarch64/tar-1.29-1.ph2.aarch64.rpm
85
+aarch64/texinfo-6.3-3.ph2.aarch64.rpm
86
+aarch64/util-linux-2.29.2-4.ph2.aarch64.rpm
87
+aarch64/util-linux-devel-2.29.2-4.ph2.aarch64.rpm
88
+aarch64/util-linux-libs-2.29.2-4.ph2.aarch64.rpm
89
+aarch64/xz-5.2.3-2.ph2.aarch64.rpm
90
+aarch64/xz-libs-5.2.3-2.ph2.aarch64.rpm
91
+aarch64/zlib-1.2.11-1.ph2.aarch64.rpm
92
+aarch64/zlib-devel-1.2.11-1.ph2.aarch64.rpm
93
+noarch/apache-maven-3.3.9-4.ph1.noarch.rpm
94
+noarch/autoconf-2.69-6.ph2.noarch.rpm
95
+noarch/automake-1.15-4.ph2.noarch.rpm
96
+noarch/linux-api-headers-4.9.47-1.ph2.noarch.rpm
97
+noarch/man-pages-4.10-1.ph2.noarch.rpm
0 98
new file mode 100644
... ...
@@ -0,0 +1,87 @@
0
+noarch/linux-api-headers-4.2.0-1.ph1.noarch.rpm
1
+noarch/man-pages-3.59-1.ph1.noarch.rpm
2
+noarch/apache-maven-3.3.9-4.ph1.noarch.rpm
3
+x86_64/python2-devel-2.7.11-1.ph1.x86_64.rpm
4
+x86_64/nspr-4.11-1.ph1.x86_64.rpm
5
+x86_64/rpm-4.13.0.1-5.ph2.x86_64.rpm
6
+x86_64/rpm-libs-4.13.0.1-5.ph2.x86_64.rpm
7
+x86_64/binutils-devel-2.25.1-1.ph1.x86_64.rpm
8
+x86_64/nss-3.21-1.ph1.x86_64.rpm
9
+x86_64/mpfr-devel-3.1.3-1.ph1.x86_64.rpm
10
+x86_64/cpio-2.12-1.ph1.x86_64.rpm
11
+x86_64/sed-4.2.2-1.ph1.x86_64.rpm
12
+x86_64/libffi-3.2.1-1.ph1.x86_64.rpm
13
+x86_64/gmp-6.0.0a-1.ph1.x86_64.rpm
14
+x86_64/diffutils-3.3-2.ph1.x86_64.rpm
15
+x86_64/gcc-5.3.0-1.ph1.x86_64.rpm
16
+x86_64/gmp-devel-6.0.0a-1.ph1.x86_64.rpm
17
+x86_64/automake-1.15-1.ph1.x86_64.rpm
18
+x86_64/groff-1.22.2-1.ph1.x86_64.rpm
19
+x86_64/readline-7.0-1.ph1.x86_64.rpm
20
+x86_64/gettext-0.19.5.1-1.ph1.x86_64.rpm
21
+x86_64/perl-5.22.1-2.ph1.x86_64.rpm
22
+x86_64/man-db-2.7.5-1.ph1.x86_64.rpm
23
+x86_64/elfutils-libelf-0.165-1.ph1.x86_64.rpm
24
+x86_64/gdbm-1.11-1.ph1.x86_64.rpm
25
+x86_64/autoconf-2.69-3.ph1.x86_64.rpm
26
+x86_64/rpm-devel-4.13.0.1-5.ph2.x86_64.rpm
27
+x86_64/file-5.24-1.ph1.x86_64.rpm
28
+x86_64/mpfr-3.1.3-1.ph1.x86_64.rpm
29
+x86_64/zlib-devel-1.2.8-2.ph1.x86_64.rpm
30
+x86_64/libgcc-devel-5.3.0-1.ph1.x86_64.rpm
31
+x86_64/bison-3.0.4-1.ph1.x86_64.rpm
32
+x86_64/lua-5.3.2-1.ph1.x86_64.rpm
33
+x86_64/util-linux-2.27.1-1.ph1.x86_64.rpm
34
+x86_64/rpm-build-4.13.0.1-5.ph2.x86_64.rpm
35
+x86_64/procps-ng-3.3.11-1.ph1.x86_64.rpm
36
+x86_64/coreutils-8.24-1.ph1.x86_64.rpm
37
+x86_64/util-linux-devel-2.27.1-1.ph1.x86_64.rpm
38
+x86_64/m4-1.4.17-1.ph1.x86_64.rpm
39
+x86_64/grep-2.21-1.ph1.x86_64.rpm
40
+x86_64/tar-1.28-1.ph1.x86_64.rpm
41
+x86_64/bash-4.4-1.ph1.x86_64.rpm
42
+x86_64/ncurses-devel-6.0-1.ph1.x86_64.rpm
43
+x86_64/gawk-4.1.3-4.ph1.x86_64.rpm
44
+x86_64/libtool-2.4.6-1.ph1.x86_64.rpm
45
+x86_64/zlib-1.2.8-2.ph1.x86_64.rpm
46
+x86_64/python2-libs-2.7.11-1.ph1.x86_64.rpm
47
+x86_64/libgomp-5.3.0-1.ph1.x86_64.rpm
48
+x86_64/readline-devel-7.0-1.ph1.x86_64.rpm
49
+x86_64/sqlite-autoconf-3.11.0-1.ph1.x86_64.rpm
50
+x86_64/flex-2.5.39-1.ph1.x86_64.rpm
51
+x86_64/libstdc++-devel-5.3.0-1.ph1.x86_64.rpm
52
+x86_64/openssl-1.0.2g-1.ph1.x86_64.rpm
53
+x86_64/elfutils-0.165-1.ph1.x86_64.rpm
54
+x86_64/expat-2.1.0-1.ph1.x86_64.rpm
55
+x86_64/popt-1.16-1.ph1.x86_64.rpm
56
+x86_64/mpc-1.0.3-1.ph1.x86_64.rpm
57
+x86_64/bzip2-1.0.6-4.ph1.x86_64.rpm
58
+x86_64/glibc-2.22-3.ph1.x86_64.rpm
59
+x86_64/python2-2.7.11-1.ph1.x86_64.rpm
60
+x86_64/elfutils-devel-0.165-1.ph1.x86_64.rpm
61
+x86_64/patch-2.7.5-1.ph1.x86_64.rpm
62
+x86_64/xz-5.2.2-1.ph1.x86_64.rpm
63
+x86_64/binutils-2.25.1-1.ph1.x86_64.rpm
64
+x86_64/libgomp-devel-5.3.0-1.ph1.x86_64.rpm
65
+x86_64/bzip2-devel-1.0.6-4.ph1.x86_64.rpm
66
+x86_64/libgcc-5.3.0-1.ph1.x86_64.rpm
67
+x86_64/gzip-1.6-1.ph1.x86_64.rpm
68
+x86_64/elfutils-libelf-devel-0.165-1.ph1.x86_64.rpm
69
+x86_64/openssl-devel-1.0.2g-1.ph1.x86_64.rpm
70
+x86_64/pkg-config-0.28-1.ph1.x86_64.rpm
71
+x86_64/popt-devel-1.16-1.ph1.x86_64.rpm
72
+x86_64/flex-devel-2.5.39-1.ph1.x86_64.rpm
73
+x86_64/findutils-4.4.2-1.ph1.x86_64.rpm
74
+x86_64/libstdc++-5.3.0-1.ph1.x86_64.rpm
75
+x86_64/libpipeline-1.4.1-1.ph1.x86_64.rpm
76
+x86_64/make-4.1-1.ph1.x86_64.rpm
77
+x86_64/glibc-devel-2.22-3.ph1.x86_64.rpm
78
+x86_64/lua-devel-5.3.2-1.ph1.x86_64.rpm
79
+x86_64/ncurses-6.0-1.ph1.x86_64.rpm
80
+x86_64/texinfo-6.1-1.ph1.x86_64.rpm
81
+x86_64/nss-devel-3.21-1.ph1.x86_64.rpm
82
+x86_64/libcap-2.25-1.ph1.x86_64.rpm
83
+x86_64/go-1.4.2-5.ph1.x86_64.rpm
84
+x86_64/filesystem-1.0-7.ph1.x86_64.rpm
85
+x86_64/libdb-5.3.28-1.ph2dev.x86_64.rpm
86
+x86_64/libdb-devel-5.3.28-1.ph2dev.x86_64.rpm
0 87
deleted file mode 100644
... ...
@@ -1,39 +0,0 @@
1
-noarch/proto-7.7-1.noarch.rpm
2
-noarch/util-macros-1.19.0-1.noarch.rpm
3
-x86_64/openjdk-1.8.0.112-1.x86_64.rpm
4
-x86_64/openjre-1.8.0.112-1.x86_64.rpm
5
-x86_64/alsa-lib-1.0.29-1.x86_64.rpm
6
-x86_64/alsa-lib-devel-1.0.29-1.x86_64.rpm
7
-x86_64/fontconfig-2.11.1-1.x86_64.rpm
8
-x86_64/fontconfig-devel-2.11.1-1.x86_64.rpm
9
-x86_64/freetype2-2.5.5-1.x86_64.rpm
10
-x86_64/freetype2-devel-2.5.5-1.x86_64.rpm
11
-x86_64/glib-2.48.2-1.ph1.x86_64.rpm
12
-x86_64/glib-devel-2.48.2-1.ph1.x86_64.rpm
13
-x86_64/harfbuzz-0.9.40-1.x86_64.rpm
14
-x86_64/harfbuzz-devel-0.9.40-1.x86_64.rpm
15
-x86_64/icu-55.1-1.x86_64.rpm
16
-x86_64/icu-devel-55.1-1.x86_64.rpm
17
-x86_64/libICE-1.0.9-1.x86_64.rpm
18
-x86_64/libICE-devel-1.0.9-1.x86_64.rpm
19
-x86_64/libSM-1.2.2-1.x86_64.rpm
20
-x86_64/libSM-devel-1.2.2-1.x86_64.rpm
21
-x86_64/libX11-1.6.3-1.x86_64.rpm
22
-x86_64/libX11-devel-1.6.3-1.x86_64.rpm
23
-x86_64/libXau-1.0.8-1.x86_64.rpm
24
-x86_64/libXau-devel-1.0.8-1.x86_64.rpm
25
-x86_64/libXdmcp-1.1.2-1.x86_64.rpm
26
-x86_64/libXdmcp-devel-1.1.2-1.x86_64.rpm
27
-x86_64/libXext-1.3.3-1.x86_64.rpm
28
-x86_64/libXext-devel-1.3.3-1.x86_64.rpm
29
-x86_64/libXmu-1.1.2-1.x86_64.rpm
30
-x86_64/libXmu-devel-1.1.2-1.x86_64.rpm
31
-x86_64/libXrender-0.9.8-1.x86_64.rpm
32
-x86_64/libXrender-devel-0.9.8-1.x86_64.rpm
33
-x86_64/libXt-1.1.4-1.x86_64.rpm
34
-x86_64/libXt-devel-1.1.4-1.x86_64.rpm
35
-x86_64/libxcb-1.11-1.x86_64.rpm
36
-x86_64/libxcb-devel-1.11-1.x86_64.rpm
37
-x86_64/xcb-proto-1.11-1.x86_64.rpm
38
-x86_64/xtrans-1.3.5-1.x86_64.rpm
39
-x86_64/xtrans-devel-1.3.5-1.x86_64.rpm
40 1
new file mode 100644
... ...
@@ -0,0 +1,2 @@
0
+noarch/proto-7.7-1.noarch.rpm
1
+noarch/util-macros-1.19.0-1.noarch.rpm
0 2
new file mode 100644
... ...
@@ -0,0 +1,39 @@
0
+noarch/proto-7.7-1.noarch.rpm
1
+noarch/util-macros-1.19.0-1.noarch.rpm
2
+x86_64/openjdk-1.8.0.112-1.x86_64.rpm
3
+x86_64/openjre-1.8.0.112-1.x86_64.rpm
4
+x86_64/alsa-lib-1.0.29-1.x86_64.rpm
5
+x86_64/alsa-lib-devel-1.0.29-1.x86_64.rpm
6
+x86_64/fontconfig-2.11.1-1.x86_64.rpm
7
+x86_64/fontconfig-devel-2.11.1-1.x86_64.rpm
8
+x86_64/freetype2-2.5.5-1.x86_64.rpm
9
+x86_64/freetype2-devel-2.5.5-1.x86_64.rpm
10
+x86_64/glib-2.48.2-1.ph1.x86_64.rpm
11
+x86_64/glib-devel-2.48.2-1.ph1.x86_64.rpm
12
+x86_64/harfbuzz-0.9.40-1.x86_64.rpm
13
+x86_64/harfbuzz-devel-0.9.40-1.x86_64.rpm
14
+x86_64/icu-55.1-1.x86_64.rpm
15
+x86_64/icu-devel-55.1-1.x86_64.rpm
16
+x86_64/libICE-1.0.9-1.x86_64.rpm
17
+x86_64/libICE-devel-1.0.9-1.x86_64.rpm
18
+x86_64/libSM-1.2.2-1.x86_64.rpm
19
+x86_64/libSM-devel-1.2.2-1.x86_64.rpm
20
+x86_64/libX11-1.6.3-1.x86_64.rpm
21
+x86_64/libX11-devel-1.6.3-1.x86_64.rpm
22
+x86_64/libXau-1.0.8-1.x86_64.rpm
23
+x86_64/libXau-devel-1.0.8-1.x86_64.rpm
24
+x86_64/libXdmcp-1.1.2-1.x86_64.rpm
25
+x86_64/libXdmcp-devel-1.1.2-1.x86_64.rpm
26
+x86_64/libXext-1.3.3-1.x86_64.rpm
27
+x86_64/libXext-devel-1.3.3-1.x86_64.rpm
28
+x86_64/libXmu-1.1.2-1.x86_64.rpm
29
+x86_64/libXmu-devel-1.1.2-1.x86_64.rpm
30
+x86_64/libXrender-0.9.8-1.x86_64.rpm
31
+x86_64/libXrender-devel-0.9.8-1.x86_64.rpm
32
+x86_64/libXt-1.1.4-1.x86_64.rpm
33
+x86_64/libXt-devel-1.1.4-1.x86_64.rpm
34
+x86_64/libxcb-1.11-1.x86_64.rpm
35
+x86_64/libxcb-devel-1.11-1.x86_64.rpm
36
+x86_64/xcb-proto-1.11-1.x86_64.rpm
37
+x86_64/xtrans-1.3.5-1.x86_64.rpm
38
+x86_64/xtrans-devel-1.3.5-1.x86_64.rpm