From c9cfa65a37408ee10436e53a5a71befb153241b0 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 23 Feb 2016 14:51:52 +0100 Subject: [PATCH] Initial --- .gitignore | 52 + acpi/events/powerbtn-acpi-support | 2 + acpi/powerbtn-acpi-support.sh | 33 + adduser.conf | 85 + aliases | 2 + aliases.db | Bin 0 -> 12288 bytes alternatives/README | 2 + alternatives/aptitude | 1 + alternatives/aptitude.8.gz | 1 + alternatives/aptitude.cs.8.gz | 1 + alternatives/aptitude.de.8.gz | 1 + alternatives/aptitude.es.8.gz | 1 + alternatives/aptitude.fi.8.gz | 1 + alternatives/aptitude.fr.8.gz | 1 + alternatives/aptitude.gl.8.gz | 1 + alternatives/aptitude.it.8.gz | 1 + alternatives/aptitude.ja.8.gz | 1 + alternatives/aptitude.pl.8.gz | 1 + alternatives/awk | 1 + alternatives/awk.1.gz | 1 + alternatives/builtins.7.gz | 1 + alternatives/dhcpcd | 1 + alternatives/dhcpcd.8.gz | 1 + alternatives/editor | 1 + alternatives/editor.1.gz | 1 + alternatives/ex | 1 + alternatives/ex.1.gz | 1 + alternatives/ex.fr.1.gz | 1 + alternatives/ex.it.1.gz | 1 + alternatives/ex.ja.1.gz | 1 + alternatives/ex.pl.1.gz | 1 + alternatives/ex.ru.1.gz | 1 + alternatives/from | 1 + alternatives/from.1.gz | 1 + alternatives/lft | 1 + alternatives/lft.1.gz | 1 + alternatives/mt | 1 + alternatives/mt.1.gz | 1 + alternatives/nawk | 1 + alternatives/nawk.1.gz | 1 + alternatives/nc | 1 + alternatives/nc.1.gz | 1 + alternatives/netcat | 1 + alternatives/netcat.1.gz | 1 + alternatives/pager | 1 + alternatives/pager.1.gz | 1 + alternatives/pico | 1 + alternatives/pico.1.gz | 1 + alternatives/rcp | 1 + alternatives/rcp.1.gz | 1 + alternatives/rename | 1 + alternatives/rename.1.gz | 1 + alternatives/rlogin | 1 + alternatives/rlogin.1.gz | 1 + alternatives/rmt | 1 + alternatives/rmt.8.gz | 1 + alternatives/rsh | 1 + alternatives/rsh.1.gz | 1 + alternatives/rview | 1 + alternatives/rvim | 1 + alternatives/tcptraceroute | 1 + alternatives/tcptraceroute.8.gz | 1 + alternatives/traceproto | 1 + alternatives/traceproto.1.gz | 1 + alternatives/traceroute | 1 + alternatives/traceroute.1.gz | 1 + alternatives/traceroute.sbin | 1 + alternatives/traceroute6 | 1 + alternatives/traceroute6.1.gz | 1 + alternatives/vi | 1 + alternatives/vi.1.gz | 1 + alternatives/vi.fr.1.gz | 1 + alternatives/vi.it.1.gz | 1 + alternatives/vi.ja.1.gz | 1 + alternatives/vi.pl.1.gz | 1 + alternatives/vi.ru.1.gz | 1 + alternatives/view | 1 + alternatives/view.1.gz | 1 + alternatives/view.fr.1.gz | 1 + alternatives/view.it.1.gz | 1 + alternatives/view.ja.1.gz | 1 + alternatives/view.pl.1.gz | 1 + alternatives/view.ru.1.gz | 1 + alternatives/vim | 1 + alternatives/vimdiff | 1 + alternatives/w | 1 + alternatives/w.1.gz | 1 + alternatives/write | 1 + alternatives/write.1.gz | 1 + apm/event.d/01chrony | 17 + apt/apt.conf.d/00CDMountPoint | 4 + apt/apt.conf.d/00trustcdrom | 1 + apt/apt.conf.d/01autoremove | 40 + apt/apt.conf.d/01autoremove-kernels | 37 + apt/apt.conf.d/70debconf | 3 + apt/sources.list | 13 + .../debian-archive-jessie-automatic.gpg | Bin 0 -> 5138 bytes ...bian-archive-jessie-security-automatic.gpg | Bin 0 -> 5147 bytes .../debian-archive-jessie-stable.gpg | Bin 0 -> 2775 bytes .../debian-archive-squeeze-automatic.gpg | Bin 0 -> 4084 bytes .../debian-archive-squeeze-stable.gpg | Bin 0 -> 2853 bytes .../debian-archive-wheezy-automatic.gpg | Bin 0 -> 3780 bytes .../debian-archive-wheezy-stable.gpg | Bin 0 -> 2851 bytes bash.bashrc | 55 + bash_completion | 1 + bash_completion.d/debconf | 12 + bash_completion.d/git-prompt | 11 + bash_completion.d/grub | 495 ++ bash_completion.d/initramfs-tools | 26 + bash_completion.d/insserv | 36 + bash_completion.d/whiptail | 6 + bindresvport.blacklist | 15 + ca-certificates.conf | 184 + calendar/default | 15 + chrony/chrony.conf | 104 + chrony/chrony.keys | 1 + console-setup/cached_Lat15-Fixed16.psf.gz | Bin 0 -> 2427 bytes console-setup/cached_UTF-8_del.kmap.gz | Bin 0 -> 4352 bytes console-setup/compose.ARMSCII-8.inc | 1 + console-setup/compose.CP1251.inc | 1 + console-setup/compose.CP1255.inc | 1 + console-setup/compose.CP1256.inc | 1 + console-setup/compose.GEORGIAN-ACADEMY.inc | 1 + console-setup/compose.GEORGIAN-PS.inc | 1 + console-setup/compose.IBM1133.inc | 1 + console-setup/compose.ISIRI-3342.inc | 1 + console-setup/compose.ISO-8859-1.inc | 173 + console-setup/compose.ISO-8859-10.inc | 1 + console-setup/compose.ISO-8859-11.inc | 1 + console-setup/compose.ISO-8859-13.inc | 169 + console-setup/compose.ISO-8859-14.inc | 133 + console-setup/compose.ISO-8859-15.inc | 159 + console-setup/compose.ISO-8859-16.inc | 1 + console-setup/compose.ISO-8859-2.inc | 165 + console-setup/compose.ISO-8859-3.inc | 167 + console-setup/compose.ISO-8859-4.inc | 125 + console-setup/compose.ISO-8859-5.inc | 1 + console-setup/compose.ISO-8859-6.inc | 1 + console-setup/compose.ISO-8859-7.inc | 91 + console-setup/compose.ISO-8859-8.inc | 1 + console-setup/compose.ISO-8859-9.inc | 174 + console-setup/compose.KOI8-R.inc | 1 + console-setup/compose.KOI8-U.inc | 1 + console-setup/compose.TIS-620.inc | 1 + console-setup/compose.VISCII.inc | 1 + console-setup/remap.inc | 32 + cron.d/.placeholder | 2 + cron.daily/.placeholder | 2 + cron.daily/apt | 507 ++ cron.daily/aptitude | 11 + cron.daily/bsdmainutils | 16 + cron.daily/dpkg | 47 + cron.daily/logrotate | 4 + cron.daily/man-db | 44 + cron.daily/passwd | 9 + cron.hourly/.placeholder | 2 + cron.monthly/.placeholder | 2 + cron.weekly/.placeholder | 2 + cron.weekly/man-db | 31 + crontab | 15 + .../system.d/org.freedesktop.hostname1.conf | 27 + dbus-1/system.d/org.freedesktop.locale1.conf | 27 + dbus-1/system.d/org.freedesktop.login1.conf | 186 + dbus-1/system.d/org.freedesktop.machine1.conf | 66 + dbus-1/system.d/org.freedesktop.systemd1.conf | 100 + .../system.d/org.freedesktop.timedate1.conf | 27 + debconf.conf | 83 + debian_version | 1 + default/acpid | 11 + default/bsdmainutils | 4 + default/console-setup | 16 + default/cron | 28 + default/devpts | 5 + default/grub | 32 + default/halt | 2 + default/hwclock | 19 + default/keyboard | 10 + default/locale | 3 + default/networking | 11 + default/nss | 37 + default/rcS | 24 + default/rsync | 41 + default/rsyslog | 4 + default/ssh | 5 + default/tmpfs | 33 + default/useradd | 37 + deluser.conf | 20 + dhcp/dhclient-enter-hooks.d/resolvconf | 81 + dhcpcd.conf | 37 + dhcpcd.duid | 1 + dictionaries-common/default.aff | 1 + dictionaries-common/default.hash | 1 + dictionaries-common/ispell-default | 1 + dictionaries-common/words | 1 + discover-modprobe.conf | 13 + discover.conf.d/00discover | 15 + dpkg/dpkg.cfg | 13 + dpkg/origins/debian | 3 + dpkg/origins/default | 1 + emacs/site-start.d/00debian-vars.el | 57 + emacs/site-start.d/50dictionaries-common.el | 40 + emacs/site-start.el | 8 + environment | 0 fstab | 14 + gai.conf | 65 + groff/man.local | 21 + groff/mdoc.local | 21 + group | 51 + group- | 50 + grub.d/00_header | 390 ++ grub.d/05_debian_theme | 192 + grub.d/10_linux | 367 ++ grub.d/20_linux_xen | 288 ++ grub.d/30_os-prober | 371 ++ grub.d/30_uefi-firmware | 46 + grub.d/40_custom | 5 + grub.d/41_custom | 9 + grub.d/README | 11 + gshadow | 51 + gshadow- | 50 + gss/mech.d/README | 4 + host.conf | 1 + hostname | 1 + hosts | 7 + hosts.allow | 10 + hosts.deny | 17 + init.d/README | 60 + init.d/acpid | 81 + init.d/bootlogs | 60 + init.d/bootmisc.sh | 59 + init.d/checkfs.sh | 155 + init.d/checkroot-bootclean.sh | 43 + init.d/checkroot.sh | 365 ++ init.d/chrony | 103 + init.d/console-setup | 62 + init.d/cron | 92 + init.d/dhcpcd | 96 + init.d/halt | 83 + init.d/hostname.sh | 68 + init.d/hwclock.sh | 123 + init.d/kbd | 278 + init.d/keyboard-setup | 66 + init.d/killprocs | 62 + init.d/kmod | 92 + init.d/lvm2 | 33 + init.d/mountall-bootclean.sh | 35 + init.d/mountall.sh | 95 + init.d/mountdevsubfs.sh | 68 + init.d/mountkernfs.sh | 75 + init.d/mountnfs-bootclean.sh | 35 + init.d/mountnfs.sh | 106 + init.d/networking | 212 + init.d/postfix | 269 + init.d/procps | 54 + init.d/rc | 261 + init.d/rc.local | 43 + init.d/rcS | 8 + init.d/reboot | 41 + init.d/resolvconf | 135 + init.d/rmnologin | 59 + init.d/rsync | 152 + init.d/rsyslog | 126 + init.d/sendsigs | 126 + init.d/single | 35 + init.d/skeleton | 27 + init.d/ssh | 174 + init.d/udev | 266 + init.d/udev-finish | 22 + init.d/umountfs | 130 + init.d/umountnfs.sh | 100 + init.d/umountroot | 49 + init.d/urandom | 106 + init/network-interface-container.conf | 19 + init/network-interface-security.conf | 37 + init/network-interface.conf | 34 + init/networking.conf | 80 + init/resolvconf.conf | 19 + init/ssh.conf | 29 + init/startpar-bridge.conf | 15 + init/udev-fallback-graphics.conf | 21 + init/udev-finish.conf | 24 + init/udev.conf | 14 + init/udevmonitor.conf | 13 + init/udevtrigger.conf | 16 + initramfs-tools/conf.d/driver-policy | 4 + initramfs-tools/initramfs.conf | 62 + initramfs-tools/modules | 11 + initramfs-tools/update-initramfs.conf | 20 + inittab | 69 + inputrc | 67 + insserv.conf | 36 + insserv.conf.d/postfix | 1 + iproute2/ematch_map | 7 + iproute2/group | 2 + iproute2/rt_dsfield | 27 + iproute2/rt_protos | 30 + iproute2/rt_realms | 13 + iproute2/rt_scopes | 11 + iproute2/rt_tables | 11 + iscsi/iscsid.conf | 304 ++ issue | 2 + issue.net | 1 + kbd/config | 70 + kbd/remap | 5 + kernel-img.conf | 6 + kernel/postinst.d/apt-auto-removal | 85 + kernel/postinst.d/initramfs-tools | 35 + kernel/postinst.d/zz-update-grub | 26 + kernel/postrm.d/initramfs-tools | 35 + kernel/postrm.d/zz-update-grub | 26 + ld.so.conf | 2 + ld.so.conf.d/libc.conf | 2 + ld.so.conf.d/x86_64-linux-gnu.conf | 3 + ldap/ldap.conf | 17 + libaudit.conf | 7 + locale.alias | 73 + locale.gen | 479 ++ localtime | Bin 0 -> 2309 bytes logcheck/ignore.d.server/libsasl2-modules | 1 + logcheck/ignore.d.server/rsyslog | 5 + login.defs | 340 ++ logrotate.conf | 35 + logrotate.d/apt | 16 + logrotate.d/aptitude | 7 + logrotate.d/chrony | 17 + logrotate.d/dpkg | 18 + logrotate.d/rsyslog | 59 + lvm/lvm.conf | 1260 +++++ machine-id | 1 + magic | 3 + magic.mime | 3 + mailcap | 48 + mailcap.order | 10 + mailname | 1 + manpath.config | 131 + mime.types | 833 +++ mke2fs.conf | 53 + modprobe.d/fbdev-blacklist.conf | 20 + modules | 5 + modules-load.d/modules.conf | 1 + nanorc | 299 ++ network/if-down.d/postfix | 34 + network/if-down.d/resolvconf | 16 + network/if-down.d/upstart | 20 + network/if-up.d/000resolvconf | 47 + network/if-up.d/mountnfs | 185 + network/if-up.d/openssh-server | 43 + network/if-up.d/postfix | 43 + network/if-up.d/upstart | 54 + network/interfaces | 14 + networks | 4 + newt/palette.original | 0 nsswitch.conf | 20 + os-release | 1 + pam.conf | 15 + pam.d/chfn | 16 + pam.d/chpasswd | 5 + pam.d/chsh | 20 + pam.d/common-account | 25 + pam.d/common-auth | 25 + pam.d/common-password | 33 + pam.d/common-session | 25 + pam.d/common-session-noninteractive | 25 + pam.d/cron | 21 + pam.d/login | 111 + pam.d/newusers | 5 + pam.d/other | 16 + pam.d/passwd | 6 + pam.d/runuser | 5 + pam.d/runuser-l | 5 + pam.d/sshd | 55 + pam.d/su | 61 + pam.d/systemd-user | 9 + passwd | 24 + passwd- | 24 + perl/Net/libnet.cfg | 21 + postfix/dynamicmaps.cf | 7 + postfix/main.cf | 41 + postfix/master.cf | 124 + postfix/post-install | 869 ++++ postfix/postfix-files | 442 ++ postfix/postfix-script | 380 ++ ppp/ip-down.d/000resolvconf | 21 + ppp/ip-down.d/chrony | 18 + ppp/ip-down.d/postfix | 34 + ppp/ip-up.d/000resolvconf | 33 + ppp/ip-up.d/chrony | 17 + ppp/ip-up.d/postfix | 43 + profile | 34 + profile.d/bash_completion.sh | 16 + profile.d/fbrehm.sh | 150 + protocols | 64 + python/debian_config | 3 + python2.7/sitecustomize.py | 7 + rc.local | 14 + rc0.d/K01chrony | 1 + rc0.d/K01dhcpcd | 1 + rc0.d/K01postfix | 1 + rc0.d/K01resolvconf | 1 + rc0.d/K01urandom | 1 + rc0.d/K02sendsigs | 1 + rc0.d/K03rsyslog | 1 + rc0.d/K04hwclock.sh | 1 + rc0.d/K04umountnfs.sh | 1 + rc0.d/K05networking | 1 + rc0.d/K06umountfs | 1 + rc0.d/K07umountroot | 1 + rc0.d/K08halt | 1 + rc0.d/README | 11 + rc1.d/K01chrony | 1 + rc1.d/K01dhcpcd | 1 + rc1.d/K01postfix | 1 + rc1.d/K03rsyslog | 1 + rc1.d/README | 11 + rc1.d/S01killprocs | 1 + rc1.d/S01motd | 1 + rc1.d/S03bootlogs | 1 + rc1.d/S04single | 1 + rc2.d/K01dhcpcd | 1 + rc2.d/README | 15 + rc2.d/S01motd | 1 + rc2.d/S01rsyslog | 1 + rc2.d/S02acpid | 1 + rc2.d/S02chrony | 1 + rc2.d/S02cron | 1 + rc2.d/S02postfix | 1 + rc2.d/S02rsync | 1 + rc2.d/S02ssh | 1 + rc2.d/S03bootlogs | 1 + rc2.d/S04rc.local | 1 + rc2.d/S04rmnologin | 1 + rc3.d/K01dhcpcd | 1 + rc3.d/README | 15 + rc3.d/S01motd | 1 + rc3.d/S01rsyslog | 1 + rc3.d/S02acpid | 1 + rc3.d/S02chrony | 1 + rc3.d/S02cron | 1 + rc3.d/S02postfix | 1 + rc3.d/S02rsync | 1 + rc3.d/S02ssh | 1 + rc3.d/S03bootlogs | 1 + rc3.d/S04rc.local | 1 + rc3.d/S04rmnologin | 1 + rc4.d/K01dhcpcd | 1 + rc4.d/README | 15 + rc4.d/S01motd | 1 + rc4.d/S01rsyslog | 1 + rc4.d/S02acpid | 1 + rc4.d/S02chrony | 1 + rc4.d/S02cron | 1 + rc4.d/S02postfix | 1 + rc4.d/S02rsync | 1 + rc4.d/S02ssh | 1 + rc4.d/S03bootlogs | 1 + rc4.d/S04rc.local | 1 + rc4.d/S04rmnologin | 1 + rc5.d/K01dhcpcd | 1 + rc5.d/README | 15 + rc5.d/S01motd | 1 + rc5.d/S01rsyslog | 1 + rc5.d/S02acpid | 1 + rc5.d/S02chrony | 1 + rc5.d/S02cron | 1 + rc5.d/S02postfix | 1 + rc5.d/S02rsync | 1 + rc5.d/S02ssh | 1 + rc5.d/S03bootlogs | 1 + rc5.d/S04rc.local | 1 + rc5.d/S04rmnologin | 1 + rc6.d/K01chrony | 1 + rc6.d/K01dhcpcd | 1 + rc6.d/K01postfix | 1 + rc6.d/K01resolvconf | 1 + rc6.d/K01urandom | 1 + rc6.d/K02sendsigs | 1 + rc6.d/K03rsyslog | 1 + rc6.d/K04hwclock.sh | 1 + rc6.d/K04umountnfs.sh | 1 + rc6.d/K05networking | 1 + rc6.d/K06umountfs | 1 + rc6.d/K07umountroot | 1 + rc6.d/K08reboot | 1 + rc6.d/README | 11 + rcS.d/README | 12 + rcS.d/S01hostname.sh | 1 + rcS.d/S01mountkernfs.sh | 1 + rcS.d/S02udev | 1 + rcS.d/S03keyboard-setup | 1 + rcS.d/S04mountdevsubfs.sh | 1 + rcS.d/S05hwclock.sh | 1 + rcS.d/S05lvm2 | 1 + rcS.d/S06checkroot.sh | 1 + rcS.d/S07checkfs.sh | 1 + rcS.d/S08checkroot-bootclean.sh | 1 + rcS.d/S08kmod | 1 + rcS.d/S09mountall.sh | 1 + rcS.d/S10mountall-bootclean.sh | 1 + rcS.d/S11procps | 1 + rcS.d/S11resolvconf | 1 + rcS.d/S11udev-finish | 1 + rcS.d/S11urandom | 1 + rcS.d/S12networking | 1 + rcS.d/S13mountnfs.sh | 1 + rcS.d/S14mountnfs-bootclean.sh | 1 + rcS.d/S15kbd | 1 + rcS.d/S16console-setup | 1 + rcS.d/S17bootmisc.sh | 1 + resolv.conf | 1 + resolvconf/interface-order | 23 + resolvconf/resolv.conf.d/base | 0 resolvconf/resolv.conf.d/head | 2 + resolvconf/resolv.conf.d/original | 4 + resolvconf/resolv.conf.d/tail | 0 resolvconf/run | 1 + resolvconf/update-libc.d/postfix | 13 + resolvconf/update.d/libc | 161 + rmt | 8 + rpc | 40 + rsyslog.conf | 142 + rsyslog.d/60-default.conf | 36 + rsyslog.d/70-pb.conf | 31 + rsyslog.d/postfix.conf | 4 + securetty | 400 ++ security/access.conf | 122 + security/group.conf | 106 + security/limits.conf | 56 + security/namespace.conf | 28 + security/namespace.init | 25 + security/opasswd | 0 security/pam_env.conf | 73 + security/sepermit.conf | 11 + security/time.conf | 65 + selinux/semanage.conf | 41 + services | 612 +++ sgml/catalog | 1 + sgml/xml-core.cat | 1 + shadow | 24 + shadow- | 24 + shells | 5 + skel/.bash_logout | 7 + skel/.bashrc | 113 + skel/.profile | 22 + ssh/moduli | 261 + ssh/ssh_config | 54 + ssh/ssh_host_dsa_key | 12 + ssh/ssh_host_dsa_key.pub | 1 + ssh/ssh_host_ecdsa_key | 7 + ssh/ssh_host_ecdsa_key.pub | 1 + ssh/ssh_host_ed25519_key | 7 + ssh/ssh_host_ed25519_key.pub | 1 + ssh/ssh_host_rsa_key | 51 + ssh/ssh_host_rsa_key.pub | 1 + ssh/sshd_config | 88 + ssl/certs/00673b5b.0 | 1 + ssl/certs/024dc131.0 | 1 + ssl/certs/02b73561.0 | 1 + ssl/certs/034868d6.0 | 1 + ssl/certs/039c618a.0 | 1 + ssl/certs/03f2b8cf.0 | 1 + ssl/certs/052e396b.0 | 1 + ssl/certs/062cdee6.0 | 1 + ssl/certs/064e0aa9.0 | 1 + ssl/certs/080911ac.0 | 1 + ssl/certs/0810ba98.0 | 1 + ssl/certs/08aef7bb.0 | 1 + ssl/certs/09789157.0 | 1 + ssl/certs/0b759015.0 | 1 + ssl/certs/0ba01d19.0 | 1 + ssl/certs/0c4c9b6c.0 | 1 + ssl/certs/0d188d89.0 | 1 + ssl/certs/0d1b923b.0 | 1 + ssl/certs/0dad9736.0 | 1 + ssl/certs/10531352.0 | 1 + ssl/certs/111e6273.0 | 1 + ssl/certs/116bf586.0 | 1 + ssl/certs/119afc2e.0 | 1 + ssl/certs/11f154d6.0 | 1 + ssl/certs/124bbd54.0 | 1 + ssl/certs/128805a3.0 | 1 + ssl/certs/12d55845.0 | 1 + ssl/certs/157753a5.0 | 1 + ssl/certs/1636090b.0 | 1 + ssl/certs/1676090a.0 | 1 + ssl/certs/17b51fe6.0 | 1 + ssl/certs/1874d4aa.0 | 1 + ssl/certs/18856ac4.0 | 1 + ssl/certs/1dac3003.0 | 1 + ssl/certs/1dcd6f4c.0 | 1 + ssl/certs/1df5a75f.0 | 1 + ssl/certs/1e09d511.0 | 1 + ssl/certs/1e1eab7c.0 | 1 + ssl/certs/1e8e7201.0 | 1 + ssl/certs/1eb37bdf.0 | 1 + ssl/certs/1ec4d31a.0 | 1 + ssl/certs/1f58a078.0 | 1 + ssl/certs/201cada0.0 | 1 + ssl/certs/21855f49.0 | 1 + ssl/certs/219d9499.0 | 1 + ssl/certs/2251b13a.0 | 1 + ssl/certs/23f4c490.0 | 1 + ssl/certs/244b5494.0 | 1 + ssl/certs/24ad0b63.0 | 1 + ssl/certs/27af790d.0 | 1 + ssl/certs/2ab3b959.0 | 1 + ssl/certs/2ae6433e.0 | 1 + ssl/certs/2afc57aa.0 | 1 + ssl/certs/2b349938.0 | 1 + ssl/certs/2c543cd1.0 | 1 + ssl/certs/2d9dafe4.0 | 1 + ssl/certs/2e4eed3c.0 | 1 + ssl/certs/2e5ac55d.0 | 1 + ssl/certs/2edf7016.0 | 1 + ssl/certs/2fa87019.0 | 1 + ssl/certs/2fb1850a.0 | 1 + ssl/certs/33815e15.0 | 1 + ssl/certs/33815e15.1 | 1 + ssl/certs/343eb6cb.0 | 1 + ssl/certs/349f2832.0 | 1 + ssl/certs/3513523f.0 | 1 + ssl/certs/381ce4dd.0 | 1 + ssl/certs/399e7759.0 | 1 + ssl/certs/3a3b02ce.0 | 1 + ssl/certs/3ad48a91.0 | 1 + ssl/certs/3b2716e5.0 | 1 + ssl/certs/3bde41ac.0 | 1 + ssl/certs/3c58f906.0 | 1 + ssl/certs/3c860d51.0 | 1 + ssl/certs/3c9a4d3b.0 | 1 + ssl/certs/3d441de8.0 | 1 + ssl/certs/3e45d192.0 | 1 + ssl/certs/3e7271e8.0 | 1 + ssl/certs/3ee7e181.0 | 1 + ssl/certs/3efd4dc0.0 | 1 + ssl/certs/40547a79.0 | 1 + ssl/certs/40dc992e.0 | 1 + ssl/certs/415660c1.0 | 1 + ssl/certs/415660c1.1 | 1 + ssl/certs/418595b9.0 | 1 + ssl/certs/4304c5e5.0 | 1 + ssl/certs/442adcac.0 | 1 + ssl/certs/450c6e38.0 | 1 + ssl/certs/46b2fd3b.0 | 1 + ssl/certs/480720ec.0 | 1 + ssl/certs/48a195d8.0 | 1 + ssl/certs/48bec511.0 | 1 + ssl/certs/4a6481c9.0 | 1 + ssl/certs/4bfab552.0 | 1 + ssl/certs/4d654d1d.0 | 1 + ssl/certs/4e18c148.0 | 1 + ssl/certs/4f316efb.0 | 1 + ssl/certs/4fbd6bfa.0 | 1 + ssl/certs/5021a0a2.0 | 1 + ssl/certs/5046c355.0 | 1 + ssl/certs/524d9b43.0 | 1 + ssl/certs/5273a94c.0 | 1 + ssl/certs/52b525c7.0 | 1 + ssl/certs/5443e9e3.0 | 1 + ssl/certs/54657681.0 | 1 + ssl/certs/553c356e | 1 + ssl/certs/5620c4aa.0 | 1 + ssl/certs/56657bde.0 | 1 + ssl/certs/56b8a0b6.0 | 1 + ssl/certs/56e29e75.0 | 1 + ssl/certs/57692373.0 | 1 + ssl/certs/578d5c04.0 | 1 + ssl/certs/57bbd831.0 | 1 + ssl/certs/57bcb2da.0 | 1 + ssl/certs/58a44af1.0 | 1 + ssl/certs/592c0a9a.0 | 1 + ssl/certs/594f1775.0 | 1 + ssl/certs/5a3f0ff8.0 | 1 + ssl/certs/5a5372fc.0 | 1 + ssl/certs/5ad8a5d6.0 | 1 + ssl/certs/5c44d531.0 | 1 + ssl/certs/5cd81ad7.0 | 1 + ssl/certs/5cf9d536.0 | 1 + ssl/certs/5d63b0ae.0 | 1 + ssl/certs/5e4e69e7.0 | 1 + ssl/certs/5f15c80c.0 | 1 + ssl/certs/5f47b495.0 | 1 + ssl/certs/607986c7.0 | 1 + ssl/certs/60afe812.0 | 1 + ssl/certs/635ccfd5.0 | 1 + ssl/certs/63a2c897.0 | 1 + ssl/certs/6410666e.0 | 1 + ssl/certs/653b494a.0 | 1 + ssl/certs/65b876bd.0 | 1 + ssl/certs/667c66d4.0 | 1 + ssl/certs/67495436.0 | 1 + ssl/certs/67d559d1.0 | 1 + ssl/certs/69105f4f.0 | 1 + ssl/certs/6b99d060.0 | 1 + ssl/certs/6cc3c4c3.0 | 1 + ssl/certs/6e8bf996.0 | 1 + ssl/certs/6f2c1157.0 | 1 + ssl/certs/6fcc125d.0 | 1 + ssl/certs/706f604c.0 | 1 + ssl/certs/72f369af.0 | 1 + ssl/certs/72fa7371.0 | 1 + ssl/certs/749e9e03.0 | 1 + ssl/certs/74c26bd0.0 | 1 + ssl/certs/755f7420.0 | 1 + ssl/certs/75680d2e.0 | 1 + ssl/certs/75d1b2ed.0 | 1 + ssl/certs/7651b327.0 | 1 + ssl/certs/7651b327.1 | 1 + ssl/certs/76579174.0 | 1 + ssl/certs/7672ac4b.0 | 1 + ssl/certs/76cb8f92.0 | 1 + ssl/certs/76faf6c0.0 | 1 + ssl/certs/778e3cb0.0 | 1 + ssl/certs/790a7190.0 | 1 + ssl/certs/7999be0d.0 | 1 + ssl/certs/79ad8b43.0 | 1 + ssl/certs/7a481e66.0 | 1 + ssl/certs/7a819ef2.0 | 1 + ssl/certs/7d0b38bd.0 | 1 + ssl/certs/7d453d8f.0 | 1 + ssl/certs/7d5a75e4.0 | 1 + ssl/certs/7f3d5d1d.0 | 1 + ssl/certs/8096d0a9.0 | 1 + ssl/certs/812e17de.0 | 1 + ssl/certs/8160b96c.0 | 1 + ssl/certs/81b9768f.0 | 1 + ssl/certs/82223c44.0 | 1 + ssl/certs/8317b10c.0 | 1 + ssl/certs/8470719d.0 | 1 + ssl/certs/84cba82f.0 | 1 + ssl/certs/85cde254.0 | 1 + ssl/certs/861a399d.0 | 1 + ssl/certs/861e0100.0 | 1 + ssl/certs/86212b19.0 | 1 + ssl/certs/876f1e28.0 | 1 + ssl/certs/87753b0d.0 | 1 + ssl/certs/882de061.0 | 1 + ssl/certs/8867006a.0 | 1 + ssl/certs/88f89ea7.0 | 1 + ssl/certs/895cad1a.0 | 1 + ssl/certs/89c02a45.0 | 1 + ssl/certs/8b59b1ad.0 | 1 + ssl/certs/8c24b137.0 | 1 + ssl/certs/8d6437c3.0 | 1 + ssl/certs/8d86cdd1.0 | 1 + ssl/certs/8e52d3cd.0 | 1 + ssl/certs/9007ae68.0 | 1 + ssl/certs/91739615.0 | 1 + ssl/certs/930ac5d2.0 | 1 + ssl/certs/9339512a.0 | 1 + ssl/certs/93bc0acc.0 | 1 + ssl/certs/9576d26b.0 | 1 + ssl/certs/95aff9e3.0 | 1 + ssl/certs/961f5451.0 | 1 + ssl/certs/9685a493.0 | 1 + ssl/certs/9772ca32.0 | 1 + ssl/certs/988a38cb.0 | 1 + ssl/certs/98ec67f0.0 | 1 + ssl/certs/9ab62355.0 | 1 + ssl/certs/9c2e7d30.0 | 1 + ssl/certs/9c472bf7.0 | 1 + ssl/certs/9c8dfbd4.0 | 1 + ssl/certs/9d04f354.0 | 1 + ssl/certs/9d520b32.0 | 1 + ssl/certs/9d6523ce.0 | 1 + ssl/certs/9dbefe7b.0 | 1 + ssl/certs/9ec3a561.0 | 1 + ssl/certs/9f533518.0 | 1 + ssl/certs/9f541fb4.0 | 1 + ssl/certs/A-Trust-nQual-03.pem | 1 + ssl/certs/ACCVRAIZ1.pem | 1 + ssl/certs/ACEDICOM_Root.pem | 1 + ...C_Ra\303\255z_Certic\303\241mara_S.A..pem" | 1 + ssl/certs/Actalis_Authentication_Root_CA.pem | 1 + ssl/certs/AddTrust_External_Root.pem | 1 + .../AddTrust_Low-Value_Services_Root.pem | 1 + ssl/certs/AddTrust_Public_Services_Root.pem | 1 + .../AddTrust_Qualified_Certificates_Root.pem | 1 + ssl/certs/AffirmTrust_Commercial.pem | 1 + ssl/certs/AffirmTrust_Networking.pem | 1 + ssl/certs/AffirmTrust_Premium.pem | 1 + ssl/certs/AffirmTrust_Premium_ECC.pem | 1 + ..._Online_Root_Certification_Authority_1.pem | 1 + ..._Online_Root_Certification_Authority_2.pem | 1 + .../ApplicationCA_-_Japanese_Government.pem | 1 + ssl/certs/Atos_TrustedRoot_2011.pem | 1 + ...icacion_Firmaprofesional_CIF_A62634068.pem | 1 + ssl/certs/Baltimore_CyberTrust_Root.pem | 1 + ssl/certs/Buypass_Class_2_CA_1.pem | 1 + ssl/certs/Buypass_Class_2_Root_CA.pem | 1 + ssl/certs/Buypass_Class_3_CA_1.pem | 1 + ssl/certs/Buypass_Class_3_Root_CA.pem | 1 + ssl/certs/CA_Disig.pem | 1 + ssl/certs/CA_Disig_Root_R1.pem | 1 + ssl/certs/CA_Disig_Root_R2.pem | 1 + ssl/certs/CNNIC_ROOT.pem | 1 + ssl/certs/COMODO_Certification_Authority.pem | 1 + .../COMODO_ECC_Certification_Authority.pem | 1 + .../Camerfirma_Chambers_of_Commerce_Root.pem | 1 + .../Camerfirma_Global_Chambersign_Root.pem | 1 + ssl/certs/Certigna.pem | 1 + .../Certinomis_-_Autorit\303\251_Racine.pem" | 1 + ssl/certs/Certplus_Class_2_Primary_CA.pem | 1 + ssl/certs/Certum_Root_CA.pem | 1 + ssl/certs/Certum_Trusted_Network_CA.pem | 1 + .../Chambers_of_Commerce_Root_-_2008.pem | 1 + ...nformation_Center_EV_Certificates_Root.pem | 1 + ssl/certs/ComSign_CA.pem | 1 + ssl/certs/ComSign_Secured_CA.pem | 1 + ssl/certs/Comodo_AAA_Services_root.pem | 1 + ssl/certs/Comodo_Secure_Services_root.pem | 1 + ssl/certs/Comodo_Trusted_Services_root.pem | 1 + ssl/certs/Cybertrust_Global_Root.pem | 1 + ssl/certs/D-TRUST_Root_Class_3_CA_2_2009.pem | 1 + .../D-TRUST_Root_Class_3_CA_2_EV_2009.pem | 1 + ssl/certs/DST_ACES_CA_X6.pem | 1 + ssl/certs/DST_Root_CA_X3.pem | 1 + ssl/certs/Deutsche_Telekom_Root_CA_2.pem | 1 + ssl/certs/DigiCert_Assured_ID_Root_CA.pem | 1 + ssl/certs/DigiCert_Assured_ID_Root_G2.pem | 1 + ssl/certs/DigiCert_Assured_ID_Root_G3.pem | 1 + ssl/certs/DigiCert_Global_Root_CA.pem | 1 + ssl/certs/DigiCert_Global_Root_G2.pem | 1 + ssl/certs/DigiCert_Global_Root_G3.pem | 1 + .../DigiCert_High_Assurance_EV_Root_CA.pem | 1 + ssl/certs/DigiCert_Trusted_Root_G4.pem | 1 + ...igital_Signature_Trust_Co._Global_CA_1.pem | 1 + ...igital_Signature_Trust_Co._Global_CA_3.pem | 1 + ...lektronik_Sertifika_Hizmet_Saglayicisi.pem | 1 + ssl/certs/E-Tugra_Certification_Authority.pem | 1 + ...\304\237lay\304\261c\304\261s\304\261.pem" | 1 + ssl/certs/EC-ACC.pem | 1 + ssl/certs/EE_Certification_Centre_Root_CA.pem | 1 + ...rust.net_Premium_2048_Secure_Server_CA.pem | 1 + .../Entrust_Root_Certification_Authority.pem | 1 + ssl/certs/Equifax_Secure_CA.pem | 1 + .../Equifax_Secure_Global_eBusiness_CA.pem | 1 + ssl/certs/Equifax_Secure_eBusiness_CA_1.pem | 1 + ssl/certs/GTE_CyberTrust_Global_Root.pem | 1 + ssl/certs/GeoTrust_Global_CA.pem | 1 + ssl/certs/GeoTrust_Global_CA_2.pem | 1 + ...oTrust_Primary_Certification_Authority.pem | 1 + ...t_Primary_Certification_Authority_-_G2.pem | 1 + ...t_Primary_Certification_Authority_-_G3.pem | 1 + ssl/certs/GeoTrust_Universal_CA.pem | 1 + ssl/certs/GeoTrust_Universal_CA_2.pem | 1 + ssl/certs/GlobalSign_Root_CA.pem | 1 + ssl/certs/GlobalSign_Root_CA_-_R2.pem | 1 + ssl/certs/GlobalSign_Root_CA_-_R3.pem | 1 + ssl/certs/Global_Chambersign_Root_-_2008.pem | 1 + ssl/certs/Go_Daddy_Class_2_CA.pem | 1 + ..._Daddy_Root_Certificate_Authority_-_G2.pem | 1 + ..._and_Research_Institutions_RootCA_2011.pem | 1 + ssl/certs/Hongkong_Post_Root_CA_1.pem | 1 + ssl/certs/IGC_A.pem | 1 + ssl/certs/Izenpe.com.pem | 1 + ssl/certs/Juur-SK.pem | 1 + ssl/certs/Microsec_e-Szigno_Root_CA.pem | 1 + ssl/certs/Microsec_e-Szigno_Root_CA_2009.pem | 1 + ...5\221tan\303\272s\303\255tv\303\241ny.pem" | 1 + ssl/certs/NetLock_Business_=Class_B=_Root.pem | 1 + ssl/certs/NetLock_Express_=Class_C=_Root.pem | 1 + ssl/certs/NetLock_Notary_=Class_A=_Root.pem | 1 + .../NetLock_Qualified_=Class_QA=_Root.pem | 1 + ...etwork_Solutions_Certificate_Authority.pem | 1 + ssl/certs/OISTE_WISeKey_Global_Root_GA_CA.pem | 1 + ssl/certs/PSCProcert.pem | 1 + ssl/certs/QuoVadis_Root_CA.pem | 1 + ssl/certs/QuoVadis_Root_CA_1_G3.pem | 1 + ssl/certs/QuoVadis_Root_CA_2.pem | 1 + ssl/certs/QuoVadis_Root_CA_2_G3.pem | 1 + ssl/certs/QuoVadis_Root_CA_3.pem | 1 + ssl/certs/QuoVadis_Root_CA_3_G3.pem | 1 + ssl/certs/RSA_Security_2048_v3.pem | 1 + ssl/certs/Root_CA_Generalitat_Valenciana.pem | 1 + ...ication_and_Encryption_Root_CA_2005_PN.pem | 1 + ssl/certs/SG_TRUST_SERVICES_RACINE.pem | 1 + ssl/certs/SecureSign_RootCA11.pem | 1 + ssl/certs/SecureTrust_CA.pem | 1 + ssl/certs/Secure_Global_CA.pem | 1 + .../Security_Communication_EV_RootCA1.pem | 1 + ssl/certs/Security_Communication_RootCA2.pem | 1 + ssl/certs/Security_Communication_Root_CA.pem | 1 + ssl/certs/Sonera_Class_1_Root_CA.pem | 1 + ssl/certs/Sonera_Class_2_Root_CA.pem | 1 + ssl/certs/Staat_der_Nederlanden_Root_CA.pem | 1 + .../Staat_der_Nederlanden_Root_CA_-_G2.pem | 1 + ssl/certs/Starfield_Class_2_CA.pem | 1 + ...rfield_Root_Certificate_Authority_-_G2.pem | 1 + ...rvices_Root_Certificate_Authority_-_G2.pem | 1 + .../StartCom_Certification_Authority.pem | 1 + .../StartCom_Certification_Authority_2.pem | 1 + .../StartCom_Certification_Authority_G2.pem | 1 + ssl/certs/SwissSign_Gold_CA_-_G2.pem | 1 + ssl/certs/SwissSign_Platinum_CA_-_G2.pem | 1 + ssl/certs/SwissSign_Silver_CA_-_G2.pem | 1 + ssl/certs/Swisscom_Root_CA_1.pem | 1 + ssl/certs/Swisscom_Root_CA_2.pem | 1 + ssl/certs/Swisscom_Root_EV_CA_2.pem | 1 + ssl/certs/T-TeleSec_GlobalRoot_Class_2.pem | 1 + ssl/certs/T-TeleSec_GlobalRoot_Class_3.pem | 1 + ssl/certs/TC_TrustCenter_Class_2_CA_II.pem | 1 + ssl/certs/TC_TrustCenter_Class_3_CA_II.pem | 1 + ssl/certs/TC_TrustCenter_Universal_CA_I.pem | 1 + ...T_Certificate_Services_Provider_Root_1.pem | 1 + ...T_Certificate_Services_Provider_Root_2.pem | 1 + ...ertificate_Services_Provider_Root_2007.pem | 1 + ssl/certs/TWCA_Global_Root_CA.pem | 1 + .../TWCA_Root_Certification_Authority.pem | 1 + ssl/certs/Taiwan_GRCA.pem | 1 + ssl/certs/TeliaSonera_Root_CA_v1.pem | 1 + ssl/certs/Thawte_Premium_Server_CA.pem | 1 + ssl/certs/Thawte_Server_CA.pem | 1 + ssl/certs/Trustis_FPS_Root_CA.pem | 1 + ...\261s\304\261_-_S\303\274r\303\274m_3.pem" | 1 + ssl/certs/UTN_DATACorp_SGC_Root_CA.pem | 1 + ssl/certs/UTN_USERFirst_Email_Root_CA.pem | 1 + ssl/certs/UTN_USERFirst_Hardware_Root_CA.pem | 1 + ...c_Primary_Certification_Authority_-_G4.pem | 1 + ...c_Primary_Certification_Authority_-_G5.pem | 1 + ...Universal_Root_Certification_Authority.pem | 1 + ...Public_Primary_Certification_Authority.pem | 1 + ...c_Primary_Certification_Authority_-_G2.pem | 1 + ...c_Primary_Certification_Authority_-_G3.pem | 1 + ...c_Primary_Certification_Authority_-_G2.pem | 1 + ...c_Primary_Certification_Authority_-_G3.pem | 1 + ...Public_Primary_Certification_Authority.pem | 1 + ...c_Primary_Certification_Authority_-_G2.pem | 1 + ...c_Primary_Certification_Authority_-_G3.pem | 1 + ...blic_Primary_Certification_Authority_2.pem | 1 + ...c_Primary_Certification_Authority_-_G3.pem | 1 + ssl/certs/Visa_eCommerce_Root.pem | 1 + ...cure_Public_Root_Certificate_Authority.pem | 1 + ssl/certs/WoSign.pem | 1 + ssl/certs/WoSign_China.pem | 1 + ssl/certs/XRamp_Global_CA_Root.pem | 1 + ssl/certs/a0bc6fbb.0 | 1 + ssl/certs/a15b3b6b.0 | 1 + ssl/certs/a2c66da8.0 | 1 + ssl/certs/a2df7ad7.0 | 1 + ssl/certs/a3896b44.0 | 1 + ssl/certs/a5fd78f0.0 | 1 + ssl/certs/a6a593ba.0 | 1 + ssl/certs/a7605362.0 | 1 + ssl/certs/a760e1bd.0 | 1 + ssl/certs/a7d2cf64.0 | 1 + ssl/certs/a8dee976.0 | 1 + ssl/certs/a94d09e5.0 | 1 + ssl/certs/ab5346f4.0 | 1 + ssl/certs/ad088e1d.0 | 1 + ssl/certs/add67345.0 | 1 + ssl/certs/ae8153b9.0 | 1 + ssl/certs/ae8153b9.1 | 1 + ssl/certs/aeb67534.0 | 1 + ssl/certs/aee5f10d.0 | 1 + ssl/certs/b0ed035a.0 | 1 + ssl/certs/b0f3e76e.0 | 1 + ssl/certs/b1159c4c.0 | 1 + ssl/certs/b13cc6df.0 | 1 + ssl/certs/b1b8a7f3.0 | 1 + ssl/certs/b204d74a.0 | 1 + ssl/certs/b42ff584.0 | 1 + ssl/certs/b66938e9.0 | 1 + ssl/certs/b6c5745d.0 | 1 + ssl/certs/b727005e.0 | 1 + ssl/certs/b7a5b843.0 | 1 + ssl/certs/b7db1890.0 | 1 + ssl/certs/b7e7231a.0 | 1 + ssl/certs/b872f2b4.0 | 1 + ssl/certs/b8e83700.0 | 1 + ssl/certs/ba89ed3b.0 | 1 + ssl/certs/bad35b78.0 | 1 + ssl/certs/bb2d49a0.0 | 1 + ssl/certs/bc3f2570.0 | 1 + ssl/certs/bd1910d4.0 | 1 + ssl/certs/bda4cc84.0 | 1 + ssl/certs/bdacca6f.0 | 1 + ssl/certs/bf64f35b.0 | 1 + ssl/certs/c01cdfa2.0 | 1 + ssl/certs/c089bbbd.0 | 1 + ssl/certs/c0ff1f52.0 | 1 + ssl/certs/c19d42c7.0 | 1 + ssl/certs/c215bc69.0 | 1 + ssl/certs/c28a8a30.0 | 1 + ssl/certs/c33a80d4.0 | 1 + ssl/certs/c3a6a9ad.0 | 1 + ssl/certs/c47d9980.0 | 1 + ssl/certs/c491639e.0 | 1 + ssl/certs/c51c224c.0 | 1 + ssl/certs/c527e4ab.0 | 1 + ssl/certs/c5d3212a.0 | 1 + ssl/certs/c5e082db.0 | 1 + ssl/certs/c692a373.0 | 1 + ssl/certs/c7e2a638.0 | 1 + ssl/certs/c8763593.0 | 1 + ssl/certs/c8841d13.0 | 1 + ssl/certs/c90bc37d.0 | 1 + ssl/certs/c99398f3.0 | 1 + ssl/certs/c9f83a1c.0 | 1 + ssl/certs/ca-certificates.crt | 4486 +++++++++++++++++ ssl/certs/ca6e4ad9.0 | 1 + ssl/certs/cb156124.0 | 1 + ssl/certs/cb357862.0 | 1 + ssl/certs/cb59f961.0 | 1 + ssl/certs/cbeee9e2.0 | 1 + ssl/certs/cbf06781.0 | 1 + ssl/certs/cc450945.0 | 1 + ssl/certs/ccc52f49.0 | 1 + ssl/certs/cd58d51e.0 | 1 + ssl/certs/cdaebb72.0 | 1 + ssl/certs/certSIGN_ROOT_CA.pem | 1 + ssl/certs/cf701eeb.0 | 1 + ssl/certs/cfa1c2ee.0 | 1 + ssl/certs/d06393bb.0 | 1 + ssl/certs/d16a5865.0 | 1 + ssl/certs/d4dae3dd.0 | 1 + ssl/certs/d59297b8.0 | 1 + ssl/certs/d64f06f3.0 | 1 + ssl/certs/d66b55d9.0 | 1 + ssl/certs/d7746a63.0 | 1 + ssl/certs/d78a75c7.0 | 1 + ssl/certs/d7e8dc79.0 | 1 + ssl/certs/d853d49e.0 | 1 + ssl/certs/d957f522.0 | 1 + ssl/certs/d9d12c58.0 | 1 + ssl/certs/dbc54cab.0 | 1 + ssl/certs/dc45b0bd.0 | 1 + ssl/certs/dd8e9d41.0 | 1 + ssl/certs/ddc328ff.0 | 1 + ssl/certs/e113c810.0 | 1 + ssl/certs/e18bfb83.0 | 1 + ssl/certs/e268a4c5.0 | 1 + ssl/certs/e2799e36.0 | 1 + ssl/certs/e36a6752.0 | 1 + ssl/certs/e442e424.0 | 1 + ssl/certs/e48193cf.0 | 1 + ssl/certs/e536d871.0 | 1 + ssl/certs/e60bf0c0.0 | 1 + ssl/certs/e775ed2d.0 | 1 + ssl/certs/e7b8d656.0 | 1 + ssl/certs/e8651083.0 | 1 + ssl/certs/e8de2f56.0 | 1 + .../ePKI_Root_Certification_Authority.pem | 1 + ssl/certs/ea169617.0 | 1 + ssl/certs/eacdeb40.0 | 1 + ssl/certs/eb375c3e.0 | 1 + ssl/certs/ec87c655.0 | 1 + ssl/certs/ed39abd0.0 | 1 + ssl/certs/ed62f4e3.0 | 1 + ssl/certs/ee1365c0.0 | 1 + ssl/certs/ee64a828.0 | 1 + ssl/certs/ee7cd6fb.0 | 1 + ssl/certs/ee90b008.0 | 1 + ssl/certs/eed8c118.0 | 1 + ssl/certs/ef2f636c.0 | 1 + ssl/certs/f060240e.0 | 1 + ssl/certs/f081611a.0 | 1 + ssl/certs/f3377b1b.0 | 1 + ssl/certs/f387163d.0 | 1 + ssl/certs/f39fc864.0 | 1 + ssl/certs/f559733c.0 | 1 + ssl/certs/f58a60fe.0 | 1 + ssl/certs/f61bff45.0 | 1 + ssl/certs/f80cc7f6.0 | 1 + ssl/certs/f90208f7.0 | 1 + ssl/certs/fac084d7.0 | 1 + ssl/certs/facacbc6.0 | 1 + ssl/certs/fb126c6d.0 | 1 + ssl/certs/fcac10e3.0 | 1 + ssl/certs/fde84897.0 | 1 + ssl/certs/ff588423.0 | 1 + ssl/certs/ff783690.0 | 1 + ssl/certs/spi-cacert-2008.pem | 1 + ssl/certs/ssl-cert-snakeoil.pem | 17 + ssl/certs/thawte_Primary_Root_CA.pem | 1 + ssl/certs/thawte_Primary_Root_CA_-_G2.pem | 1 + ssl/certs/thawte_Primary_Root_CA_-_G3.pem | 1 + ssl/openssl.cnf | 350 ++ ssl/private/ssl-cert-snakeoil.key | 28 + staff-group-for-usr-local | 16 + subgid | 6 + subgid- | 5 + subuid | 6 + subuid- | 5 + sysctl.conf | 60 + sysctl.d/99-sysctl.conf | 1 + sysctl.d/README.sysctl | 13 + systemd/bootchart.conf | 21 + systemd/journald.conf | 35 + systemd/logind.conf | 28 + systemd/resolved.conf | 11 + systemd/system.conf | 53 + .../getty.target.wants/getty@tty1.service | 1 + .../halt.target.wants/hwclock-save.service | 1 + .../lvm2-activation-early.service | 1 + .../lvm2-activation.service | 1 + .../multi-user.target.wants/cron.service | 1 + .../multi-user.target.wants/remote-fs.target | 1 + .../multi-user.target.wants/rsyslog.service | 1 + .../multi-user.target.wants/ssh.service | 1 + systemd/system/paths.target.wants/acpid.path | 1 + .../hwclock-save.service | 1 + .../reboot.target.wants/hwclock-save.service | 1 + .../system/sockets.target.wants/acpid.socket | 1 + .../sockets.target.wants/dm-event.socket | 1 + systemd/system/sshd.service | 1 + .../sysinit.target.wants/lvm2-lvmetad.socket | 1 + .../sysinit.target.wants/lvm2-monitor.service | 1 + .../sysinit.target.wants/resolvconf.service | 1 + systemd/system/syslog.service | 1 + systemd/timesyncd.conf | 11 + systemd/user.conf | 41 + terminfo/README | 3 + timezone | 1 + ucf.conf | 39 + udev/rules.d/80-hotplug_cpu_mem.rules | 2 + udev/udev.conf | 6 + ufw/applications.d/openssh-server | 4 + ufw/applications.d/postfix | 14 + vim/vimrc | 52 + vim/vimrc.local | 39 + vim/vimrc.tiny | 13 + wgetrc | 135 + xdg/systemd/user | 1 + xml/catalog | 9 + xml/xml-core.xml | 9 + 1125 files changed, 28738 insertions(+) create mode 100644 .gitignore create mode 100644 acpi/events/powerbtn-acpi-support create mode 100755 acpi/powerbtn-acpi-support.sh create mode 100644 adduser.conf create mode 100644 aliases create mode 100644 aliases.db create mode 100644 alternatives/README create mode 120000 alternatives/aptitude create mode 120000 alternatives/aptitude.8.gz create mode 120000 alternatives/aptitude.cs.8.gz create mode 120000 alternatives/aptitude.de.8.gz create mode 120000 alternatives/aptitude.es.8.gz create mode 120000 alternatives/aptitude.fi.8.gz create mode 120000 alternatives/aptitude.fr.8.gz create mode 120000 alternatives/aptitude.gl.8.gz create mode 120000 alternatives/aptitude.it.8.gz create mode 120000 alternatives/aptitude.ja.8.gz create mode 120000 alternatives/aptitude.pl.8.gz create mode 120000 alternatives/awk create mode 120000 alternatives/awk.1.gz create mode 120000 alternatives/builtins.7.gz create mode 120000 alternatives/dhcpcd create mode 120000 alternatives/dhcpcd.8.gz create mode 120000 alternatives/editor create mode 120000 alternatives/editor.1.gz create mode 120000 alternatives/ex create mode 120000 alternatives/ex.1.gz create mode 120000 alternatives/ex.fr.1.gz create mode 120000 alternatives/ex.it.1.gz create mode 120000 alternatives/ex.ja.1.gz create mode 120000 alternatives/ex.pl.1.gz create mode 120000 alternatives/ex.ru.1.gz create mode 120000 alternatives/from create mode 120000 alternatives/from.1.gz create mode 120000 alternatives/lft create mode 120000 alternatives/lft.1.gz create mode 120000 alternatives/mt create mode 120000 alternatives/mt.1.gz create mode 120000 alternatives/nawk create mode 120000 alternatives/nawk.1.gz create mode 120000 alternatives/nc create mode 120000 alternatives/nc.1.gz create mode 120000 alternatives/netcat create mode 120000 alternatives/netcat.1.gz create mode 120000 alternatives/pager create mode 120000 alternatives/pager.1.gz create mode 120000 alternatives/pico create mode 120000 alternatives/pico.1.gz create mode 120000 alternatives/rcp create mode 120000 alternatives/rcp.1.gz create mode 120000 alternatives/rename create mode 120000 alternatives/rename.1.gz create mode 120000 alternatives/rlogin create mode 120000 alternatives/rlogin.1.gz create mode 120000 alternatives/rmt create mode 120000 alternatives/rmt.8.gz create mode 120000 alternatives/rsh create mode 120000 alternatives/rsh.1.gz create mode 120000 alternatives/rview create mode 120000 alternatives/rvim create mode 120000 alternatives/tcptraceroute create mode 120000 alternatives/tcptraceroute.8.gz create mode 120000 alternatives/traceproto create mode 120000 alternatives/traceproto.1.gz create mode 120000 alternatives/traceroute create mode 120000 alternatives/traceroute.1.gz create mode 120000 alternatives/traceroute.sbin create mode 120000 alternatives/traceroute6 create mode 120000 alternatives/traceroute6.1.gz create mode 120000 alternatives/vi create mode 120000 alternatives/vi.1.gz create mode 120000 alternatives/vi.fr.1.gz create mode 120000 alternatives/vi.it.1.gz create mode 120000 alternatives/vi.ja.1.gz create mode 120000 alternatives/vi.pl.1.gz create mode 120000 alternatives/vi.ru.1.gz create mode 120000 alternatives/view create mode 120000 alternatives/view.1.gz create mode 120000 alternatives/view.fr.1.gz create mode 120000 alternatives/view.it.1.gz create mode 120000 alternatives/view.ja.1.gz create mode 120000 alternatives/view.pl.1.gz create mode 120000 alternatives/view.ru.1.gz create mode 120000 alternatives/vim create mode 120000 alternatives/vimdiff create mode 120000 alternatives/w create mode 120000 alternatives/w.1.gz create mode 120000 alternatives/write create mode 120000 alternatives/write.1.gz create mode 100755 apm/event.d/01chrony create mode 100644 apt/apt.conf.d/00CDMountPoint create mode 100644 apt/apt.conf.d/00trustcdrom create mode 100644 apt/apt.conf.d/01autoremove create mode 100644 apt/apt.conf.d/01autoremove-kernels create mode 100644 apt/apt.conf.d/70debconf create mode 100644 apt/sources.list create mode 100644 apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg create mode 100644 apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg create mode 100644 apt/trusted.gpg.d/debian-archive-jessie-stable.gpg create mode 100644 apt/trusted.gpg.d/debian-archive-squeeze-automatic.gpg create mode 100644 apt/trusted.gpg.d/debian-archive-squeeze-stable.gpg create mode 100644 apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg create mode 100644 apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg create mode 100644 bash.bashrc create mode 100644 bash_completion create mode 100644 bash_completion.d/debconf create mode 100644 bash_completion.d/git-prompt create mode 100644 bash_completion.d/grub create mode 100644 bash_completion.d/initramfs-tools create mode 100644 bash_completion.d/insserv create mode 100644 bash_completion.d/whiptail create mode 100644 bindresvport.blacklist create mode 100644 ca-certificates.conf create mode 100644 calendar/default create mode 100644 chrony/chrony.conf create mode 100644 chrony/chrony.keys create mode 100644 console-setup/cached_Lat15-Fixed16.psf.gz create mode 100644 console-setup/cached_UTF-8_del.kmap.gz create mode 100644 console-setup/compose.ARMSCII-8.inc create mode 100644 console-setup/compose.CP1251.inc create mode 100644 console-setup/compose.CP1255.inc create mode 100644 console-setup/compose.CP1256.inc create mode 100644 console-setup/compose.GEORGIAN-ACADEMY.inc create mode 100644 console-setup/compose.GEORGIAN-PS.inc create mode 100644 console-setup/compose.IBM1133.inc create mode 100644 console-setup/compose.ISIRI-3342.inc create mode 100644 console-setup/compose.ISO-8859-1.inc create mode 100644 console-setup/compose.ISO-8859-10.inc create mode 100644 console-setup/compose.ISO-8859-11.inc create mode 100644 console-setup/compose.ISO-8859-13.inc create mode 100644 console-setup/compose.ISO-8859-14.inc create mode 100644 console-setup/compose.ISO-8859-15.inc create mode 100644 console-setup/compose.ISO-8859-16.inc create mode 100644 console-setup/compose.ISO-8859-2.inc create mode 100644 console-setup/compose.ISO-8859-3.inc create mode 100644 console-setup/compose.ISO-8859-4.inc create mode 100644 console-setup/compose.ISO-8859-5.inc create mode 100644 console-setup/compose.ISO-8859-6.inc create mode 100644 console-setup/compose.ISO-8859-7.inc create mode 100644 console-setup/compose.ISO-8859-8.inc create mode 100644 console-setup/compose.ISO-8859-9.inc create mode 100644 console-setup/compose.KOI8-R.inc create mode 100644 console-setup/compose.KOI8-U.inc create mode 100644 console-setup/compose.TIS-620.inc create mode 100644 console-setup/compose.VISCII.inc create mode 100644 console-setup/remap.inc create mode 100644 cron.d/.placeholder create mode 100644 cron.daily/.placeholder create mode 100755 cron.daily/apt create mode 100755 cron.daily/aptitude create mode 100755 cron.daily/bsdmainutils create mode 100755 cron.daily/dpkg create mode 100755 cron.daily/logrotate create mode 100755 cron.daily/man-db create mode 100755 cron.daily/passwd create mode 100644 cron.hourly/.placeholder create mode 100644 cron.monthly/.placeholder create mode 100644 cron.weekly/.placeholder create mode 100755 cron.weekly/man-db create mode 100644 crontab create mode 100644 dbus-1/system.d/org.freedesktop.hostname1.conf create mode 100644 dbus-1/system.d/org.freedesktop.locale1.conf create mode 100644 dbus-1/system.d/org.freedesktop.login1.conf create mode 100644 dbus-1/system.d/org.freedesktop.machine1.conf create mode 100644 dbus-1/system.d/org.freedesktop.systemd1.conf create mode 100644 dbus-1/system.d/org.freedesktop.timedate1.conf create mode 100644 debconf.conf create mode 100644 debian_version create mode 100644 default/acpid create mode 100644 default/bsdmainutils create mode 100644 default/console-setup create mode 100644 default/cron create mode 100644 default/devpts create mode 100644 default/grub create mode 100644 default/halt create mode 100644 default/hwclock create mode 100644 default/keyboard create mode 100644 default/locale create mode 100644 default/networking create mode 100644 default/nss create mode 100644 default/rcS create mode 100644 default/rsync create mode 100644 default/rsyslog create mode 100644 default/ssh create mode 100644 default/tmpfs create mode 100644 default/useradd create mode 100644 deluser.conf create mode 100644 dhcp/dhclient-enter-hooks.d/resolvconf create mode 100644 dhcpcd.conf create mode 100644 dhcpcd.duid create mode 120000 dictionaries-common/default.aff create mode 120000 dictionaries-common/default.hash create mode 120000 dictionaries-common/ispell-default create mode 120000 dictionaries-common/words create mode 100644 discover-modprobe.conf create mode 100644 discover.conf.d/00discover create mode 100644 dpkg/dpkg.cfg create mode 100644 dpkg/origins/debian create mode 120000 dpkg/origins/default create mode 100644 emacs/site-start.d/00debian-vars.el create mode 100644 emacs/site-start.d/50dictionaries-common.el create mode 100644 emacs/site-start.el create mode 100644 environment create mode 100644 fstab create mode 100644 gai.conf create mode 100644 groff/man.local create mode 100644 groff/mdoc.local create mode 100644 group create mode 100644 group- create mode 100755 grub.d/00_header create mode 100755 grub.d/05_debian_theme create mode 100755 grub.d/10_linux create mode 100755 grub.d/20_linux_xen create mode 100755 grub.d/30_os-prober create mode 100755 grub.d/30_uefi-firmware create mode 100755 grub.d/40_custom create mode 100755 grub.d/41_custom create mode 100644 grub.d/README create mode 100644 gshadow create mode 100644 gshadow- create mode 100644 gss/mech.d/README create mode 100644 host.conf create mode 100644 hostname create mode 100644 hosts create mode 100644 hosts.allow create mode 100644 hosts.deny create mode 100644 init.d/README create mode 100755 init.d/acpid create mode 100755 init.d/bootlogs create mode 100755 init.d/bootmisc.sh create mode 100755 init.d/checkfs.sh create mode 100755 init.d/checkroot-bootclean.sh create mode 100755 init.d/checkroot.sh create mode 100755 init.d/chrony create mode 100755 init.d/console-setup create mode 100755 init.d/cron create mode 100755 init.d/dhcpcd create mode 100755 init.d/halt create mode 100755 init.d/hostname.sh create mode 100755 init.d/hwclock.sh create mode 100755 init.d/kbd create mode 100755 init.d/keyboard-setup create mode 100755 init.d/killprocs create mode 100755 init.d/kmod create mode 100755 init.d/lvm2 create mode 100755 init.d/mountall-bootclean.sh create mode 100755 init.d/mountall.sh create mode 100755 init.d/mountdevsubfs.sh create mode 100755 init.d/mountkernfs.sh create mode 100755 init.d/mountnfs-bootclean.sh create mode 100755 init.d/mountnfs.sh create mode 100755 init.d/networking create mode 100755 init.d/postfix create mode 100755 init.d/procps create mode 100755 init.d/rc create mode 100755 init.d/rc.local create mode 100755 init.d/rcS create mode 100755 init.d/reboot create mode 100755 init.d/resolvconf create mode 100755 init.d/rmnologin create mode 100755 init.d/rsync create mode 100755 init.d/rsyslog create mode 100755 init.d/sendsigs create mode 100755 init.d/single create mode 100644 init.d/skeleton create mode 100755 init.d/ssh create mode 100755 init.d/udev create mode 100755 init.d/udev-finish create mode 100755 init.d/umountfs create mode 100755 init.d/umountnfs.sh create mode 100755 init.d/umountroot create mode 100755 init.d/urandom create mode 100644 init/network-interface-container.conf create mode 100644 init/network-interface-security.conf create mode 100644 init/network-interface.conf create mode 100644 init/networking.conf create mode 100644 init/resolvconf.conf create mode 100644 init/ssh.conf create mode 100644 init/startpar-bridge.conf create mode 100644 init/udev-fallback-graphics.conf create mode 100644 init/udev-finish.conf create mode 100644 init/udev.conf create mode 100644 init/udevmonitor.conf create mode 100644 init/udevtrigger.conf create mode 100644 initramfs-tools/conf.d/driver-policy create mode 100644 initramfs-tools/initramfs.conf create mode 100644 initramfs-tools/modules create mode 100644 initramfs-tools/update-initramfs.conf create mode 100644 inittab create mode 100644 inputrc create mode 100644 insserv.conf create mode 100644 insserv.conf.d/postfix create mode 100644 iproute2/ematch_map create mode 100644 iproute2/group create mode 100644 iproute2/rt_dsfield create mode 100644 iproute2/rt_protos create mode 100644 iproute2/rt_realms create mode 100644 iproute2/rt_scopes create mode 100644 iproute2/rt_tables create mode 100644 iscsi/iscsid.conf create mode 100644 issue create mode 100644 issue.net create mode 100644 kbd/config create mode 100644 kbd/remap create mode 100644 kernel-img.conf create mode 100755 kernel/postinst.d/apt-auto-removal create mode 100755 kernel/postinst.d/initramfs-tools create mode 100755 kernel/postinst.d/zz-update-grub create mode 100755 kernel/postrm.d/initramfs-tools create mode 100755 kernel/postrm.d/zz-update-grub create mode 100644 ld.so.conf create mode 100644 ld.so.conf.d/libc.conf create mode 100644 ld.so.conf.d/x86_64-linux-gnu.conf create mode 100644 ldap/ldap.conf create mode 100644 libaudit.conf create mode 100644 locale.alias create mode 100644 locale.gen create mode 100644 localtime create mode 100755 logcheck/ignore.d.server/libsasl2-modules create mode 100644 logcheck/ignore.d.server/rsyslog create mode 100644 login.defs create mode 100644 logrotate.conf create mode 100644 logrotate.d/apt create mode 100644 logrotate.d/aptitude create mode 100644 logrotate.d/chrony create mode 100644 logrotate.d/dpkg create mode 100644 logrotate.d/rsyslog create mode 100644 lvm/lvm.conf create mode 100644 machine-id create mode 100644 magic create mode 100644 magic.mime create mode 100644 mailcap create mode 100644 mailcap.order create mode 100644 mailname create mode 100644 manpath.config create mode 100644 mime.types create mode 100644 mke2fs.conf create mode 100644 modprobe.d/fbdev-blacklist.conf create mode 100644 modules create mode 120000 modules-load.d/modules.conf create mode 100644 nanorc create mode 100755 network/if-down.d/postfix create mode 100755 network/if-down.d/resolvconf create mode 100755 network/if-down.d/upstart create mode 100755 network/if-up.d/000resolvconf create mode 100755 network/if-up.d/mountnfs create mode 100755 network/if-up.d/openssh-server create mode 100755 network/if-up.d/postfix create mode 100755 network/if-up.d/upstart create mode 100644 network/interfaces create mode 100644 networks create mode 100644 newt/palette.original create mode 100644 nsswitch.conf create mode 120000 os-release create mode 100644 pam.conf create mode 100644 pam.d/chfn create mode 100644 pam.d/chpasswd create mode 100644 pam.d/chsh create mode 100644 pam.d/common-account create mode 100644 pam.d/common-auth create mode 100644 pam.d/common-password create mode 100644 pam.d/common-session create mode 100644 pam.d/common-session-noninteractive create mode 100644 pam.d/cron create mode 100644 pam.d/login create mode 100644 pam.d/newusers create mode 100644 pam.d/other create mode 100644 pam.d/passwd create mode 100644 pam.d/runuser create mode 100644 pam.d/runuser-l create mode 100644 pam.d/sshd create mode 100644 pam.d/su create mode 100644 pam.d/systemd-user create mode 100644 passwd create mode 100644 passwd- create mode 100644 perl/Net/libnet.cfg create mode 100644 postfix/dynamicmaps.cf create mode 100644 postfix/main.cf create mode 100644 postfix/master.cf create mode 100755 postfix/post-install create mode 100644 postfix/postfix-files create mode 100755 postfix/postfix-script create mode 100755 ppp/ip-down.d/000resolvconf create mode 100755 ppp/ip-down.d/chrony create mode 100755 ppp/ip-down.d/postfix create mode 100755 ppp/ip-up.d/000resolvconf create mode 100755 ppp/ip-up.d/chrony create mode 100755 ppp/ip-up.d/postfix create mode 100644 profile create mode 100644 profile.d/bash_completion.sh create mode 100644 profile.d/fbrehm.sh create mode 100644 protocols create mode 100644 python/debian_config create mode 100644 python2.7/sitecustomize.py create mode 100755 rc.local create mode 120000 rc0.d/K01chrony create mode 120000 rc0.d/K01dhcpcd create mode 120000 rc0.d/K01postfix create mode 120000 rc0.d/K01resolvconf create mode 120000 rc0.d/K01urandom create mode 120000 rc0.d/K02sendsigs create mode 120000 rc0.d/K03rsyslog create mode 120000 rc0.d/K04hwclock.sh create mode 120000 rc0.d/K04umountnfs.sh create mode 120000 rc0.d/K05networking create mode 120000 rc0.d/K06umountfs create mode 120000 rc0.d/K07umountroot create mode 120000 rc0.d/K08halt create mode 100644 rc0.d/README create mode 120000 rc1.d/K01chrony create mode 120000 rc1.d/K01dhcpcd create mode 120000 rc1.d/K01postfix create mode 120000 rc1.d/K03rsyslog create mode 100644 rc1.d/README create mode 120000 rc1.d/S01killprocs create mode 120000 rc1.d/S01motd create mode 120000 rc1.d/S03bootlogs create mode 120000 rc1.d/S04single create mode 120000 rc2.d/K01dhcpcd create mode 100644 rc2.d/README create mode 120000 rc2.d/S01motd create mode 120000 rc2.d/S01rsyslog create mode 120000 rc2.d/S02acpid create mode 120000 rc2.d/S02chrony create mode 120000 rc2.d/S02cron create mode 120000 rc2.d/S02postfix create mode 120000 rc2.d/S02rsync create mode 120000 rc2.d/S02ssh create mode 120000 rc2.d/S03bootlogs create mode 120000 rc2.d/S04rc.local create mode 120000 rc2.d/S04rmnologin create mode 120000 rc3.d/K01dhcpcd create mode 100644 rc3.d/README create mode 120000 rc3.d/S01motd create mode 120000 rc3.d/S01rsyslog create mode 120000 rc3.d/S02acpid create mode 120000 rc3.d/S02chrony create mode 120000 rc3.d/S02cron create mode 120000 rc3.d/S02postfix create mode 120000 rc3.d/S02rsync create mode 120000 rc3.d/S02ssh create mode 120000 rc3.d/S03bootlogs create mode 120000 rc3.d/S04rc.local create mode 120000 rc3.d/S04rmnologin create mode 120000 rc4.d/K01dhcpcd create mode 100644 rc4.d/README create mode 120000 rc4.d/S01motd create mode 120000 rc4.d/S01rsyslog create mode 120000 rc4.d/S02acpid create mode 120000 rc4.d/S02chrony create mode 120000 rc4.d/S02cron create mode 120000 rc4.d/S02postfix create mode 120000 rc4.d/S02rsync create mode 120000 rc4.d/S02ssh create mode 120000 rc4.d/S03bootlogs create mode 120000 rc4.d/S04rc.local create mode 120000 rc4.d/S04rmnologin create mode 120000 rc5.d/K01dhcpcd create mode 100644 rc5.d/README create mode 120000 rc5.d/S01motd create mode 120000 rc5.d/S01rsyslog create mode 120000 rc5.d/S02acpid create mode 120000 rc5.d/S02chrony create mode 120000 rc5.d/S02cron create mode 120000 rc5.d/S02postfix create mode 120000 rc5.d/S02rsync create mode 120000 rc5.d/S02ssh create mode 120000 rc5.d/S03bootlogs create mode 120000 rc5.d/S04rc.local create mode 120000 rc5.d/S04rmnologin create mode 120000 rc6.d/K01chrony create mode 120000 rc6.d/K01dhcpcd create mode 120000 rc6.d/K01postfix create mode 120000 rc6.d/K01resolvconf create mode 120000 rc6.d/K01urandom create mode 120000 rc6.d/K02sendsigs create mode 120000 rc6.d/K03rsyslog create mode 120000 rc6.d/K04hwclock.sh create mode 120000 rc6.d/K04umountnfs.sh create mode 120000 rc6.d/K05networking create mode 120000 rc6.d/K06umountfs create mode 120000 rc6.d/K07umountroot create mode 120000 rc6.d/K08reboot create mode 100644 rc6.d/README create mode 100644 rcS.d/README create mode 120000 rcS.d/S01hostname.sh create mode 120000 rcS.d/S01mountkernfs.sh create mode 120000 rcS.d/S02udev create mode 120000 rcS.d/S03keyboard-setup create mode 120000 rcS.d/S04mountdevsubfs.sh create mode 120000 rcS.d/S05hwclock.sh create mode 120000 rcS.d/S05lvm2 create mode 120000 rcS.d/S06checkroot.sh create mode 120000 rcS.d/S07checkfs.sh create mode 120000 rcS.d/S08checkroot-bootclean.sh create mode 120000 rcS.d/S08kmod create mode 120000 rcS.d/S09mountall.sh create mode 120000 rcS.d/S10mountall-bootclean.sh create mode 120000 rcS.d/S11procps create mode 120000 rcS.d/S11resolvconf create mode 120000 rcS.d/S11udev-finish create mode 120000 rcS.d/S11urandom create mode 120000 rcS.d/S12networking create mode 120000 rcS.d/S13mountnfs.sh create mode 120000 rcS.d/S14mountnfs-bootclean.sh create mode 120000 rcS.d/S15kbd create mode 120000 rcS.d/S16console-setup create mode 120000 rcS.d/S17bootmisc.sh create mode 120000 resolv.conf create mode 100644 resolvconf/interface-order create mode 100644 resolvconf/resolv.conf.d/base create mode 100644 resolvconf/resolv.conf.d/head create mode 100644 resolvconf/resolv.conf.d/original create mode 100644 resolvconf/resolv.conf.d/tail create mode 120000 resolvconf/run create mode 100755 resolvconf/update-libc.d/postfix create mode 100755 resolvconf/update.d/libc create mode 100755 rmt create mode 100644 rpc create mode 100644 rsyslog.conf create mode 100644 rsyslog.d/60-default.conf create mode 100644 rsyslog.d/70-pb.conf create mode 100644 rsyslog.d/postfix.conf create mode 100644 securetty create mode 100644 security/access.conf create mode 100644 security/group.conf create mode 100644 security/limits.conf create mode 100644 security/namespace.conf create mode 100755 security/namespace.init create mode 100644 security/opasswd create mode 100644 security/pam_env.conf create mode 100644 security/sepermit.conf create mode 100644 security/time.conf create mode 100644 selinux/semanage.conf create mode 100644 services create mode 120000 sgml/catalog create mode 100644 sgml/xml-core.cat create mode 100644 shadow create mode 100644 shadow- create mode 100644 shells create mode 100644 skel/.bash_logout create mode 100644 skel/.bashrc create mode 100644 skel/.profile create mode 100644 ssh/moduli create mode 100644 ssh/ssh_config create mode 100644 ssh/ssh_host_dsa_key create mode 100644 ssh/ssh_host_dsa_key.pub create mode 100644 ssh/ssh_host_ecdsa_key create mode 100644 ssh/ssh_host_ecdsa_key.pub create mode 100644 ssh/ssh_host_ed25519_key create mode 100644 ssh/ssh_host_ed25519_key.pub create mode 100644 ssh/ssh_host_rsa_key create mode 100644 ssh/ssh_host_rsa_key.pub create mode 100644 ssh/sshd_config create mode 120000 ssl/certs/00673b5b.0 create mode 120000 ssl/certs/024dc131.0 create mode 120000 ssl/certs/02b73561.0 create mode 120000 ssl/certs/034868d6.0 create mode 120000 ssl/certs/039c618a.0 create mode 120000 ssl/certs/03f2b8cf.0 create mode 120000 ssl/certs/052e396b.0 create mode 120000 ssl/certs/062cdee6.0 create mode 120000 ssl/certs/064e0aa9.0 create mode 120000 ssl/certs/080911ac.0 create mode 120000 ssl/certs/0810ba98.0 create mode 120000 ssl/certs/08aef7bb.0 create mode 120000 ssl/certs/09789157.0 create mode 120000 ssl/certs/0b759015.0 create mode 120000 ssl/certs/0ba01d19.0 create mode 120000 ssl/certs/0c4c9b6c.0 create mode 120000 ssl/certs/0d188d89.0 create mode 120000 ssl/certs/0d1b923b.0 create mode 120000 ssl/certs/0dad9736.0 create mode 120000 ssl/certs/10531352.0 create mode 120000 ssl/certs/111e6273.0 create mode 120000 ssl/certs/116bf586.0 create mode 120000 ssl/certs/119afc2e.0 create mode 120000 ssl/certs/11f154d6.0 create mode 120000 ssl/certs/124bbd54.0 create mode 120000 ssl/certs/128805a3.0 create mode 120000 ssl/certs/12d55845.0 create mode 120000 ssl/certs/157753a5.0 create mode 120000 ssl/certs/1636090b.0 create mode 120000 ssl/certs/1676090a.0 create mode 120000 ssl/certs/17b51fe6.0 create mode 120000 ssl/certs/1874d4aa.0 create mode 120000 ssl/certs/18856ac4.0 create mode 120000 ssl/certs/1dac3003.0 create mode 120000 ssl/certs/1dcd6f4c.0 create mode 120000 ssl/certs/1df5a75f.0 create mode 120000 ssl/certs/1e09d511.0 create mode 120000 ssl/certs/1e1eab7c.0 create mode 120000 ssl/certs/1e8e7201.0 create mode 120000 ssl/certs/1eb37bdf.0 create mode 120000 ssl/certs/1ec4d31a.0 create mode 120000 ssl/certs/1f58a078.0 create mode 120000 ssl/certs/201cada0.0 create mode 120000 ssl/certs/21855f49.0 create mode 120000 ssl/certs/219d9499.0 create mode 120000 ssl/certs/2251b13a.0 create mode 120000 ssl/certs/23f4c490.0 create mode 120000 ssl/certs/244b5494.0 create mode 120000 ssl/certs/24ad0b63.0 create mode 120000 ssl/certs/27af790d.0 create mode 120000 ssl/certs/2ab3b959.0 create mode 120000 ssl/certs/2ae6433e.0 create mode 120000 ssl/certs/2afc57aa.0 create mode 120000 ssl/certs/2b349938.0 create mode 120000 ssl/certs/2c543cd1.0 create mode 120000 ssl/certs/2d9dafe4.0 create mode 120000 ssl/certs/2e4eed3c.0 create mode 120000 ssl/certs/2e5ac55d.0 create mode 120000 ssl/certs/2edf7016.0 create mode 120000 ssl/certs/2fa87019.0 create mode 120000 ssl/certs/2fb1850a.0 create mode 120000 ssl/certs/33815e15.0 create mode 120000 ssl/certs/33815e15.1 create mode 120000 ssl/certs/343eb6cb.0 create mode 120000 ssl/certs/349f2832.0 create mode 120000 ssl/certs/3513523f.0 create mode 120000 ssl/certs/381ce4dd.0 create mode 120000 ssl/certs/399e7759.0 create mode 120000 ssl/certs/3a3b02ce.0 create mode 120000 ssl/certs/3ad48a91.0 create mode 120000 ssl/certs/3b2716e5.0 create mode 120000 ssl/certs/3bde41ac.0 create mode 120000 ssl/certs/3c58f906.0 create mode 120000 ssl/certs/3c860d51.0 create mode 120000 ssl/certs/3c9a4d3b.0 create mode 120000 ssl/certs/3d441de8.0 create mode 120000 ssl/certs/3e45d192.0 create mode 120000 ssl/certs/3e7271e8.0 create mode 120000 ssl/certs/3ee7e181.0 create mode 120000 ssl/certs/3efd4dc0.0 create mode 120000 ssl/certs/40547a79.0 create mode 120000 ssl/certs/40dc992e.0 create mode 120000 ssl/certs/415660c1.0 create mode 120000 ssl/certs/415660c1.1 create mode 120000 ssl/certs/418595b9.0 create mode 120000 ssl/certs/4304c5e5.0 create mode 120000 ssl/certs/442adcac.0 create mode 120000 ssl/certs/450c6e38.0 create mode 120000 ssl/certs/46b2fd3b.0 create mode 120000 ssl/certs/480720ec.0 create mode 120000 ssl/certs/48a195d8.0 create mode 120000 ssl/certs/48bec511.0 create mode 120000 ssl/certs/4a6481c9.0 create mode 120000 ssl/certs/4bfab552.0 create mode 120000 ssl/certs/4d654d1d.0 create mode 120000 ssl/certs/4e18c148.0 create mode 120000 ssl/certs/4f316efb.0 create mode 120000 ssl/certs/4fbd6bfa.0 create mode 120000 ssl/certs/5021a0a2.0 create mode 120000 ssl/certs/5046c355.0 create mode 120000 ssl/certs/524d9b43.0 create mode 120000 ssl/certs/5273a94c.0 create mode 120000 ssl/certs/52b525c7.0 create mode 120000 ssl/certs/5443e9e3.0 create mode 120000 ssl/certs/54657681.0 create mode 120000 ssl/certs/553c356e create mode 120000 ssl/certs/5620c4aa.0 create mode 120000 ssl/certs/56657bde.0 create mode 120000 ssl/certs/56b8a0b6.0 create mode 120000 ssl/certs/56e29e75.0 create mode 120000 ssl/certs/57692373.0 create mode 120000 ssl/certs/578d5c04.0 create mode 120000 ssl/certs/57bbd831.0 create mode 120000 ssl/certs/57bcb2da.0 create mode 120000 ssl/certs/58a44af1.0 create mode 120000 ssl/certs/592c0a9a.0 create mode 120000 ssl/certs/594f1775.0 create mode 120000 ssl/certs/5a3f0ff8.0 create mode 120000 ssl/certs/5a5372fc.0 create mode 120000 ssl/certs/5ad8a5d6.0 create mode 120000 ssl/certs/5c44d531.0 create mode 120000 ssl/certs/5cd81ad7.0 create mode 120000 ssl/certs/5cf9d536.0 create mode 120000 ssl/certs/5d63b0ae.0 create mode 120000 ssl/certs/5e4e69e7.0 create mode 120000 ssl/certs/5f15c80c.0 create mode 120000 ssl/certs/5f47b495.0 create mode 120000 ssl/certs/607986c7.0 create mode 120000 ssl/certs/60afe812.0 create mode 120000 ssl/certs/635ccfd5.0 create mode 120000 ssl/certs/63a2c897.0 create mode 120000 ssl/certs/6410666e.0 create mode 120000 ssl/certs/653b494a.0 create mode 120000 ssl/certs/65b876bd.0 create mode 120000 ssl/certs/667c66d4.0 create mode 120000 ssl/certs/67495436.0 create mode 120000 ssl/certs/67d559d1.0 create mode 120000 ssl/certs/69105f4f.0 create mode 120000 ssl/certs/6b99d060.0 create mode 120000 ssl/certs/6cc3c4c3.0 create mode 120000 ssl/certs/6e8bf996.0 create mode 120000 ssl/certs/6f2c1157.0 create mode 120000 ssl/certs/6fcc125d.0 create mode 120000 ssl/certs/706f604c.0 create mode 120000 ssl/certs/72f369af.0 create mode 120000 ssl/certs/72fa7371.0 create mode 120000 ssl/certs/749e9e03.0 create mode 120000 ssl/certs/74c26bd0.0 create mode 120000 ssl/certs/755f7420.0 create mode 120000 ssl/certs/75680d2e.0 create mode 120000 ssl/certs/75d1b2ed.0 create mode 120000 ssl/certs/7651b327.0 create mode 120000 ssl/certs/7651b327.1 create mode 120000 ssl/certs/76579174.0 create mode 120000 ssl/certs/7672ac4b.0 create mode 120000 ssl/certs/76cb8f92.0 create mode 120000 ssl/certs/76faf6c0.0 create mode 120000 ssl/certs/778e3cb0.0 create mode 120000 ssl/certs/790a7190.0 create mode 120000 ssl/certs/7999be0d.0 create mode 120000 ssl/certs/79ad8b43.0 create mode 120000 ssl/certs/7a481e66.0 create mode 120000 ssl/certs/7a819ef2.0 create mode 120000 ssl/certs/7d0b38bd.0 create mode 120000 ssl/certs/7d453d8f.0 create mode 120000 ssl/certs/7d5a75e4.0 create mode 120000 ssl/certs/7f3d5d1d.0 create mode 120000 ssl/certs/8096d0a9.0 create mode 120000 ssl/certs/812e17de.0 create mode 120000 ssl/certs/8160b96c.0 create mode 120000 ssl/certs/81b9768f.0 create mode 120000 ssl/certs/82223c44.0 create mode 120000 ssl/certs/8317b10c.0 create mode 120000 ssl/certs/8470719d.0 create mode 120000 ssl/certs/84cba82f.0 create mode 120000 ssl/certs/85cde254.0 create mode 120000 ssl/certs/861a399d.0 create mode 120000 ssl/certs/861e0100.0 create mode 120000 ssl/certs/86212b19.0 create mode 120000 ssl/certs/876f1e28.0 create mode 120000 ssl/certs/87753b0d.0 create mode 120000 ssl/certs/882de061.0 create mode 120000 ssl/certs/8867006a.0 create mode 120000 ssl/certs/88f89ea7.0 create mode 120000 ssl/certs/895cad1a.0 create mode 120000 ssl/certs/89c02a45.0 create mode 120000 ssl/certs/8b59b1ad.0 create mode 120000 ssl/certs/8c24b137.0 create mode 120000 ssl/certs/8d6437c3.0 create mode 120000 ssl/certs/8d86cdd1.0 create mode 120000 ssl/certs/8e52d3cd.0 create mode 120000 ssl/certs/9007ae68.0 create mode 120000 ssl/certs/91739615.0 create mode 120000 ssl/certs/930ac5d2.0 create mode 120000 ssl/certs/9339512a.0 create mode 120000 ssl/certs/93bc0acc.0 create mode 120000 ssl/certs/9576d26b.0 create mode 120000 ssl/certs/95aff9e3.0 create mode 120000 ssl/certs/961f5451.0 create mode 120000 ssl/certs/9685a493.0 create mode 120000 ssl/certs/9772ca32.0 create mode 120000 ssl/certs/988a38cb.0 create mode 120000 ssl/certs/98ec67f0.0 create mode 120000 ssl/certs/9ab62355.0 create mode 120000 ssl/certs/9c2e7d30.0 create mode 120000 ssl/certs/9c472bf7.0 create mode 120000 ssl/certs/9c8dfbd4.0 create mode 120000 ssl/certs/9d04f354.0 create mode 120000 ssl/certs/9d520b32.0 create mode 120000 ssl/certs/9d6523ce.0 create mode 120000 ssl/certs/9dbefe7b.0 create mode 120000 ssl/certs/9ec3a561.0 create mode 120000 ssl/certs/9f533518.0 create mode 120000 ssl/certs/9f541fb4.0 create mode 120000 ssl/certs/A-Trust-nQual-03.pem create mode 120000 ssl/certs/ACCVRAIZ1.pem create mode 120000 ssl/certs/ACEDICOM_Root.pem create mode 120000 "ssl/certs/AC_Ra\303\255z_Certic\303\241mara_S.A..pem" create mode 120000 ssl/certs/Actalis_Authentication_Root_CA.pem create mode 120000 ssl/certs/AddTrust_External_Root.pem create mode 120000 ssl/certs/AddTrust_Low-Value_Services_Root.pem create mode 120000 ssl/certs/AddTrust_Public_Services_Root.pem create mode 120000 ssl/certs/AddTrust_Qualified_Certificates_Root.pem create mode 120000 ssl/certs/AffirmTrust_Commercial.pem create mode 120000 ssl/certs/AffirmTrust_Networking.pem create mode 120000 ssl/certs/AffirmTrust_Premium.pem create mode 120000 ssl/certs/AffirmTrust_Premium_ECC.pem create mode 120000 ssl/certs/America_Online_Root_Certification_Authority_1.pem create mode 120000 ssl/certs/America_Online_Root_Certification_Authority_2.pem create mode 120000 ssl/certs/ApplicationCA_-_Japanese_Government.pem create mode 120000 ssl/certs/Atos_TrustedRoot_2011.pem create mode 120000 ssl/certs/Autoridad_de_Certificacion_Firmaprofesional_CIF_A62634068.pem create mode 120000 ssl/certs/Baltimore_CyberTrust_Root.pem create mode 120000 ssl/certs/Buypass_Class_2_CA_1.pem create mode 120000 ssl/certs/Buypass_Class_2_Root_CA.pem create mode 120000 ssl/certs/Buypass_Class_3_CA_1.pem create mode 120000 ssl/certs/Buypass_Class_3_Root_CA.pem create mode 120000 ssl/certs/CA_Disig.pem create mode 120000 ssl/certs/CA_Disig_Root_R1.pem create mode 120000 ssl/certs/CA_Disig_Root_R2.pem create mode 120000 ssl/certs/CNNIC_ROOT.pem create mode 120000 ssl/certs/COMODO_Certification_Authority.pem create mode 120000 ssl/certs/COMODO_ECC_Certification_Authority.pem create mode 120000 ssl/certs/Camerfirma_Chambers_of_Commerce_Root.pem create mode 120000 ssl/certs/Camerfirma_Global_Chambersign_Root.pem create mode 120000 ssl/certs/Certigna.pem create mode 120000 "ssl/certs/Certinomis_-_Autorit\303\251_Racine.pem" create mode 120000 ssl/certs/Certplus_Class_2_Primary_CA.pem create mode 120000 ssl/certs/Certum_Root_CA.pem create mode 120000 ssl/certs/Certum_Trusted_Network_CA.pem create mode 120000 ssl/certs/Chambers_of_Commerce_Root_-_2008.pem create mode 120000 ssl/certs/China_Internet_Network_Information_Center_EV_Certificates_Root.pem create mode 120000 ssl/certs/ComSign_CA.pem create mode 120000 ssl/certs/ComSign_Secured_CA.pem create mode 120000 ssl/certs/Comodo_AAA_Services_root.pem create mode 120000 ssl/certs/Comodo_Secure_Services_root.pem create mode 120000 ssl/certs/Comodo_Trusted_Services_root.pem create mode 120000 ssl/certs/Cybertrust_Global_Root.pem create mode 120000 ssl/certs/D-TRUST_Root_Class_3_CA_2_2009.pem create mode 120000 ssl/certs/D-TRUST_Root_Class_3_CA_2_EV_2009.pem create mode 120000 ssl/certs/DST_ACES_CA_X6.pem create mode 120000 ssl/certs/DST_Root_CA_X3.pem create mode 120000 ssl/certs/Deutsche_Telekom_Root_CA_2.pem create mode 120000 ssl/certs/DigiCert_Assured_ID_Root_CA.pem create mode 120000 ssl/certs/DigiCert_Assured_ID_Root_G2.pem create mode 120000 ssl/certs/DigiCert_Assured_ID_Root_G3.pem create mode 120000 ssl/certs/DigiCert_Global_Root_CA.pem create mode 120000 ssl/certs/DigiCert_Global_Root_G2.pem create mode 120000 ssl/certs/DigiCert_Global_Root_G3.pem create mode 120000 ssl/certs/DigiCert_High_Assurance_EV_Root_CA.pem create mode 120000 ssl/certs/DigiCert_Trusted_Root_G4.pem create mode 120000 ssl/certs/Digital_Signature_Trust_Co._Global_CA_1.pem create mode 120000 ssl/certs/Digital_Signature_Trust_Co._Global_CA_3.pem create mode 120000 ssl/certs/E-Guven_Kok_Elektronik_Sertifika_Hizmet_Saglayicisi.pem create mode 120000 ssl/certs/E-Tugra_Certification_Authority.pem create mode 120000 "ssl/certs/EBG_Elektronik_Sertifika_Hizmet_Sa\304\237lay\304\261c\304\261s\304\261.pem" create mode 120000 ssl/certs/EC-ACC.pem create mode 120000 ssl/certs/EE_Certification_Centre_Root_CA.pem create mode 120000 ssl/certs/Entrust.net_Premium_2048_Secure_Server_CA.pem create mode 120000 ssl/certs/Entrust_Root_Certification_Authority.pem create mode 120000 ssl/certs/Equifax_Secure_CA.pem create mode 120000 ssl/certs/Equifax_Secure_Global_eBusiness_CA.pem create mode 120000 ssl/certs/Equifax_Secure_eBusiness_CA_1.pem create mode 120000 ssl/certs/GTE_CyberTrust_Global_Root.pem create mode 120000 ssl/certs/GeoTrust_Global_CA.pem create mode 120000 ssl/certs/GeoTrust_Global_CA_2.pem create mode 120000 ssl/certs/GeoTrust_Primary_Certification_Authority.pem create mode 120000 ssl/certs/GeoTrust_Primary_Certification_Authority_-_G2.pem create mode 120000 ssl/certs/GeoTrust_Primary_Certification_Authority_-_G3.pem create mode 120000 ssl/certs/GeoTrust_Universal_CA.pem create mode 120000 ssl/certs/GeoTrust_Universal_CA_2.pem create mode 120000 ssl/certs/GlobalSign_Root_CA.pem create mode 120000 ssl/certs/GlobalSign_Root_CA_-_R2.pem create mode 120000 ssl/certs/GlobalSign_Root_CA_-_R3.pem create mode 120000 ssl/certs/Global_Chambersign_Root_-_2008.pem create mode 120000 ssl/certs/Go_Daddy_Class_2_CA.pem create mode 120000 ssl/certs/Go_Daddy_Root_Certificate_Authority_-_G2.pem create mode 120000 ssl/certs/Hellenic_Academic_and_Research_Institutions_RootCA_2011.pem create mode 120000 ssl/certs/Hongkong_Post_Root_CA_1.pem create mode 120000 ssl/certs/IGC_A.pem create mode 120000 ssl/certs/Izenpe.com.pem create mode 120000 ssl/certs/Juur-SK.pem create mode 120000 ssl/certs/Microsec_e-Szigno_Root_CA.pem create mode 120000 ssl/certs/Microsec_e-Szigno_Root_CA_2009.pem create mode 120000 "ssl/certs/NetLock_Arany_=Class_Gold=_F\305\221tan\303\272s\303\255tv\303\241ny.pem" create mode 120000 ssl/certs/NetLock_Business_=Class_B=_Root.pem create mode 120000 ssl/certs/NetLock_Express_=Class_C=_Root.pem create mode 120000 ssl/certs/NetLock_Notary_=Class_A=_Root.pem create mode 120000 ssl/certs/NetLock_Qualified_=Class_QA=_Root.pem create mode 120000 ssl/certs/Network_Solutions_Certificate_Authority.pem create mode 120000 ssl/certs/OISTE_WISeKey_Global_Root_GA_CA.pem create mode 120000 ssl/certs/PSCProcert.pem create mode 120000 ssl/certs/QuoVadis_Root_CA.pem create mode 120000 ssl/certs/QuoVadis_Root_CA_1_G3.pem create mode 120000 ssl/certs/QuoVadis_Root_CA_2.pem create mode 120000 ssl/certs/QuoVadis_Root_CA_2_G3.pem create mode 120000 ssl/certs/QuoVadis_Root_CA_3.pem create mode 120000 ssl/certs/QuoVadis_Root_CA_3_G3.pem create mode 120000 ssl/certs/RSA_Security_2048_v3.pem create mode 120000 ssl/certs/Root_CA_Generalitat_Valenciana.pem create mode 120000 ssl/certs/S-TRUST_Authentication_and_Encryption_Root_CA_2005_PN.pem create mode 120000 ssl/certs/SG_TRUST_SERVICES_RACINE.pem create mode 120000 ssl/certs/SecureSign_RootCA11.pem create mode 120000 ssl/certs/SecureTrust_CA.pem create mode 120000 ssl/certs/Secure_Global_CA.pem create mode 120000 ssl/certs/Security_Communication_EV_RootCA1.pem create mode 120000 ssl/certs/Security_Communication_RootCA2.pem create mode 120000 ssl/certs/Security_Communication_Root_CA.pem create mode 120000 ssl/certs/Sonera_Class_1_Root_CA.pem create mode 120000 ssl/certs/Sonera_Class_2_Root_CA.pem create mode 120000 ssl/certs/Staat_der_Nederlanden_Root_CA.pem create mode 120000 ssl/certs/Staat_der_Nederlanden_Root_CA_-_G2.pem create mode 120000 ssl/certs/Starfield_Class_2_CA.pem create mode 120000 ssl/certs/Starfield_Root_Certificate_Authority_-_G2.pem create mode 120000 ssl/certs/Starfield_Services_Root_Certificate_Authority_-_G2.pem create mode 120000 ssl/certs/StartCom_Certification_Authority.pem create mode 120000 ssl/certs/StartCom_Certification_Authority_2.pem create mode 120000 ssl/certs/StartCom_Certification_Authority_G2.pem create mode 120000 ssl/certs/SwissSign_Gold_CA_-_G2.pem create mode 120000 ssl/certs/SwissSign_Platinum_CA_-_G2.pem create mode 120000 ssl/certs/SwissSign_Silver_CA_-_G2.pem create mode 120000 ssl/certs/Swisscom_Root_CA_1.pem create mode 120000 ssl/certs/Swisscom_Root_CA_2.pem create mode 120000 ssl/certs/Swisscom_Root_EV_CA_2.pem create mode 120000 ssl/certs/T-TeleSec_GlobalRoot_Class_2.pem create mode 120000 ssl/certs/T-TeleSec_GlobalRoot_Class_3.pem create mode 120000 ssl/certs/TC_TrustCenter_Class_2_CA_II.pem create mode 120000 ssl/certs/TC_TrustCenter_Class_3_CA_II.pem create mode 120000 ssl/certs/TC_TrustCenter_Universal_CA_I.pem create mode 120000 ssl/certs/TURKTRUST_Certificate_Services_Provider_Root_1.pem create mode 120000 ssl/certs/TURKTRUST_Certificate_Services_Provider_Root_2.pem create mode 120000 ssl/certs/TURKTRUST_Certificate_Services_Provider_Root_2007.pem create mode 120000 ssl/certs/TWCA_Global_Root_CA.pem create mode 120000 ssl/certs/TWCA_Root_Certification_Authority.pem create mode 120000 ssl/certs/Taiwan_GRCA.pem create mode 120000 ssl/certs/TeliaSonera_Root_CA_v1.pem create mode 120000 ssl/certs/Thawte_Premium_Server_CA.pem create mode 120000 ssl/certs/Thawte_Server_CA.pem create mode 120000 ssl/certs/Trustis_FPS_Root_CA.pem create mode 120000 "ssl/certs/T\303\234B\304\260TAK_UEKAE_K\303\266k_Sertifika_Hizmet_Sa\304\237lay\304\261c\304\261s\304\261_-_S\303\274r\303\274m_3.pem" create mode 120000 ssl/certs/UTN_DATACorp_SGC_Root_CA.pem create mode 120000 ssl/certs/UTN_USERFirst_Email_Root_CA.pem create mode 120000 ssl/certs/UTN_USERFirst_Hardware_Root_CA.pem create mode 120000 ssl/certs/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G4.pem create mode 120000 ssl/certs/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G5.pem create mode 120000 ssl/certs/VeriSign_Universal_Root_Certification_Authority.pem create mode 120000 ssl/certs/Verisign_Class_1_Public_Primary_Certification_Authority.pem create mode 120000 ssl/certs/Verisign_Class_1_Public_Primary_Certification_Authority_-_G2.pem create mode 120000 ssl/certs/Verisign_Class_1_Public_Primary_Certification_Authority_-_G3.pem create mode 120000 ssl/certs/Verisign_Class_2_Public_Primary_Certification_Authority_-_G2.pem create mode 120000 ssl/certs/Verisign_Class_2_Public_Primary_Certification_Authority_-_G3.pem create mode 120000 ssl/certs/Verisign_Class_3_Public_Primary_Certification_Authority.pem create mode 120000 ssl/certs/Verisign_Class_3_Public_Primary_Certification_Authority_-_G2.pem create mode 120000 ssl/certs/Verisign_Class_3_Public_Primary_Certification_Authority_-_G3.pem create mode 120000 ssl/certs/Verisign_Class_3_Public_Primary_Certification_Authority_2.pem create mode 120000 ssl/certs/Verisign_Class_4_Public_Primary_Certification_Authority_-_G3.pem create mode 120000 ssl/certs/Visa_eCommerce_Root.pem create mode 120000 ssl/certs/WellsSecure_Public_Root_Certificate_Authority.pem create mode 120000 ssl/certs/WoSign.pem create mode 120000 ssl/certs/WoSign_China.pem create mode 120000 ssl/certs/XRamp_Global_CA_Root.pem create mode 120000 ssl/certs/a0bc6fbb.0 create mode 120000 ssl/certs/a15b3b6b.0 create mode 120000 ssl/certs/a2c66da8.0 create mode 120000 ssl/certs/a2df7ad7.0 create mode 120000 ssl/certs/a3896b44.0 create mode 120000 ssl/certs/a5fd78f0.0 create mode 120000 ssl/certs/a6a593ba.0 create mode 120000 ssl/certs/a7605362.0 create mode 120000 ssl/certs/a760e1bd.0 create mode 120000 ssl/certs/a7d2cf64.0 create mode 120000 ssl/certs/a8dee976.0 create mode 120000 ssl/certs/a94d09e5.0 create mode 120000 ssl/certs/ab5346f4.0 create mode 120000 ssl/certs/ad088e1d.0 create mode 120000 ssl/certs/add67345.0 create mode 120000 ssl/certs/ae8153b9.0 create mode 120000 ssl/certs/ae8153b9.1 create mode 120000 ssl/certs/aeb67534.0 create mode 120000 ssl/certs/aee5f10d.0 create mode 120000 ssl/certs/b0ed035a.0 create mode 120000 ssl/certs/b0f3e76e.0 create mode 120000 ssl/certs/b1159c4c.0 create mode 120000 ssl/certs/b13cc6df.0 create mode 120000 ssl/certs/b1b8a7f3.0 create mode 120000 ssl/certs/b204d74a.0 create mode 120000 ssl/certs/b42ff584.0 create mode 120000 ssl/certs/b66938e9.0 create mode 120000 ssl/certs/b6c5745d.0 create mode 120000 ssl/certs/b727005e.0 create mode 120000 ssl/certs/b7a5b843.0 create mode 120000 ssl/certs/b7db1890.0 create mode 120000 ssl/certs/b7e7231a.0 create mode 120000 ssl/certs/b872f2b4.0 create mode 120000 ssl/certs/b8e83700.0 create mode 120000 ssl/certs/ba89ed3b.0 create mode 120000 ssl/certs/bad35b78.0 create mode 120000 ssl/certs/bb2d49a0.0 create mode 120000 ssl/certs/bc3f2570.0 create mode 120000 ssl/certs/bd1910d4.0 create mode 120000 ssl/certs/bda4cc84.0 create mode 120000 ssl/certs/bdacca6f.0 create mode 120000 ssl/certs/bf64f35b.0 create mode 120000 ssl/certs/c01cdfa2.0 create mode 120000 ssl/certs/c089bbbd.0 create mode 120000 ssl/certs/c0ff1f52.0 create mode 120000 ssl/certs/c19d42c7.0 create mode 120000 ssl/certs/c215bc69.0 create mode 120000 ssl/certs/c28a8a30.0 create mode 120000 ssl/certs/c33a80d4.0 create mode 120000 ssl/certs/c3a6a9ad.0 create mode 120000 ssl/certs/c47d9980.0 create mode 120000 ssl/certs/c491639e.0 create mode 120000 ssl/certs/c51c224c.0 create mode 120000 ssl/certs/c527e4ab.0 create mode 120000 ssl/certs/c5d3212a.0 create mode 120000 ssl/certs/c5e082db.0 create mode 120000 ssl/certs/c692a373.0 create mode 120000 ssl/certs/c7e2a638.0 create mode 120000 ssl/certs/c8763593.0 create mode 120000 ssl/certs/c8841d13.0 create mode 120000 ssl/certs/c90bc37d.0 create mode 120000 ssl/certs/c99398f3.0 create mode 120000 ssl/certs/c9f83a1c.0 create mode 100644 ssl/certs/ca-certificates.crt create mode 120000 ssl/certs/ca6e4ad9.0 create mode 120000 ssl/certs/cb156124.0 create mode 120000 ssl/certs/cb357862.0 create mode 120000 ssl/certs/cb59f961.0 create mode 120000 ssl/certs/cbeee9e2.0 create mode 120000 ssl/certs/cbf06781.0 create mode 120000 ssl/certs/cc450945.0 create mode 120000 ssl/certs/ccc52f49.0 create mode 120000 ssl/certs/cd58d51e.0 create mode 120000 ssl/certs/cdaebb72.0 create mode 120000 ssl/certs/certSIGN_ROOT_CA.pem create mode 120000 ssl/certs/cf701eeb.0 create mode 120000 ssl/certs/cfa1c2ee.0 create mode 120000 ssl/certs/d06393bb.0 create mode 120000 ssl/certs/d16a5865.0 create mode 120000 ssl/certs/d4dae3dd.0 create mode 120000 ssl/certs/d59297b8.0 create mode 120000 ssl/certs/d64f06f3.0 create mode 120000 ssl/certs/d66b55d9.0 create mode 120000 ssl/certs/d7746a63.0 create mode 120000 ssl/certs/d78a75c7.0 create mode 120000 ssl/certs/d7e8dc79.0 create mode 120000 ssl/certs/d853d49e.0 create mode 120000 ssl/certs/d957f522.0 create mode 120000 ssl/certs/d9d12c58.0 create mode 120000 ssl/certs/dbc54cab.0 create mode 120000 ssl/certs/dc45b0bd.0 create mode 120000 ssl/certs/dd8e9d41.0 create mode 120000 ssl/certs/ddc328ff.0 create mode 120000 ssl/certs/e113c810.0 create mode 120000 ssl/certs/e18bfb83.0 create mode 120000 ssl/certs/e268a4c5.0 create mode 120000 ssl/certs/e2799e36.0 create mode 120000 ssl/certs/e36a6752.0 create mode 120000 ssl/certs/e442e424.0 create mode 120000 ssl/certs/e48193cf.0 create mode 120000 ssl/certs/e536d871.0 create mode 120000 ssl/certs/e60bf0c0.0 create mode 120000 ssl/certs/e775ed2d.0 create mode 120000 ssl/certs/e7b8d656.0 create mode 120000 ssl/certs/e8651083.0 create mode 120000 ssl/certs/e8de2f56.0 create mode 120000 ssl/certs/ePKI_Root_Certification_Authority.pem create mode 120000 ssl/certs/ea169617.0 create mode 120000 ssl/certs/eacdeb40.0 create mode 120000 ssl/certs/eb375c3e.0 create mode 120000 ssl/certs/ec87c655.0 create mode 120000 ssl/certs/ed39abd0.0 create mode 120000 ssl/certs/ed62f4e3.0 create mode 120000 ssl/certs/ee1365c0.0 create mode 120000 ssl/certs/ee64a828.0 create mode 120000 ssl/certs/ee7cd6fb.0 create mode 120000 ssl/certs/ee90b008.0 create mode 120000 ssl/certs/eed8c118.0 create mode 120000 ssl/certs/ef2f636c.0 create mode 120000 ssl/certs/f060240e.0 create mode 120000 ssl/certs/f081611a.0 create mode 120000 ssl/certs/f3377b1b.0 create mode 120000 ssl/certs/f387163d.0 create mode 120000 ssl/certs/f39fc864.0 create mode 120000 ssl/certs/f559733c.0 create mode 120000 ssl/certs/f58a60fe.0 create mode 120000 ssl/certs/f61bff45.0 create mode 120000 ssl/certs/f80cc7f6.0 create mode 120000 ssl/certs/f90208f7.0 create mode 120000 ssl/certs/fac084d7.0 create mode 120000 ssl/certs/facacbc6.0 create mode 120000 ssl/certs/fb126c6d.0 create mode 120000 ssl/certs/fcac10e3.0 create mode 120000 ssl/certs/fde84897.0 create mode 120000 ssl/certs/ff588423.0 create mode 120000 ssl/certs/ff783690.0 create mode 120000 ssl/certs/spi-cacert-2008.pem create mode 100644 ssl/certs/ssl-cert-snakeoil.pem create mode 120000 ssl/certs/thawte_Primary_Root_CA.pem create mode 120000 ssl/certs/thawte_Primary_Root_CA_-_G2.pem create mode 120000 ssl/certs/thawte_Primary_Root_CA_-_G3.pem create mode 100644 ssl/openssl.cnf create mode 100644 ssl/private/ssl-cert-snakeoil.key create mode 100644 staff-group-for-usr-local create mode 100644 subgid create mode 100644 subgid- create mode 100644 subuid create mode 100644 subuid- create mode 100644 sysctl.conf create mode 120000 sysctl.d/99-sysctl.conf create mode 100644 sysctl.d/README.sysctl create mode 100644 systemd/bootchart.conf create mode 100644 systemd/journald.conf create mode 100644 systemd/logind.conf create mode 100644 systemd/resolved.conf create mode 100644 systemd/system.conf create mode 120000 systemd/system/getty.target.wants/getty@tty1.service create mode 120000 systemd/system/halt.target.wants/hwclock-save.service create mode 120000 systemd/system/local-fs.target.wants/lvm2-activation-early.service create mode 120000 systemd/system/local-fs.target.wants/lvm2-activation.service create mode 120000 systemd/system/multi-user.target.wants/cron.service create mode 120000 systemd/system/multi-user.target.wants/remote-fs.target create mode 120000 systemd/system/multi-user.target.wants/rsyslog.service create mode 120000 systemd/system/multi-user.target.wants/ssh.service create mode 120000 systemd/system/paths.target.wants/acpid.path create mode 120000 systemd/system/poweroff.target.wants/hwclock-save.service create mode 120000 systemd/system/reboot.target.wants/hwclock-save.service create mode 120000 systemd/system/sockets.target.wants/acpid.socket create mode 120000 systemd/system/sockets.target.wants/dm-event.socket create mode 120000 systemd/system/sshd.service create mode 120000 systemd/system/sysinit.target.wants/lvm2-lvmetad.socket create mode 120000 systemd/system/sysinit.target.wants/lvm2-monitor.service create mode 120000 systemd/system/sysinit.target.wants/resolvconf.service create mode 120000 systemd/system/syslog.service create mode 100644 systemd/timesyncd.conf create mode 100644 systemd/user.conf create mode 100644 terminfo/README create mode 100644 timezone create mode 100644 ucf.conf create mode 100644 udev/rules.d/80-hotplug_cpu_mem.rules create mode 100644 udev/udev.conf create mode 100644 ufw/applications.d/openssh-server create mode 100644 ufw/applications.d/postfix create mode 100644 vim/vimrc create mode 100644 vim/vimrc.local create mode 100644 vim/vimrc.tiny create mode 100644 wgetrc create mode 120000 xdg/systemd/user create mode 100644 xml/catalog create mode 100644 xml/xml-core.xml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5023253 --- /dev/null +++ b/.gitignore @@ -0,0 +1,52 @@ +# begin section managed by etckeeper (do not edit this section by hand) + +# new and old versions of conffiles, stored by emerge +*.ebuild* + +# old versions of files +*.old + +motd + +# mount(8) records system state here, no need to store these +blkid.tab +blkid.tab.old + +# some other files in /etc that typically do not need to be tracked +nologin +ld.so.cache +prelink.cache +mtab +mtab.fuselock +.pwd.lock +*.LOCK +network/run +adjtime +lvm/cache +lvm/backup +lvm/archive +X11/xdm/authdir/authfiles/* +ntp.conf.dhcp +.initctl +webmin/fsdump/*.status +webmin/webmin/oscache +apparmor.d/cache/* +service/*/supervise/* +service/*/log/supervise/* +sv/*/supervise/* +sv/*/log/supervise/* +*.elc +*.pyc +*.pyo +init.d/.depend.* +openvpn/openvpn-status.log + +# editor temp files +*~ +.*.sw? +.sw? +\#*\# +DEADJOE + +# end section managed by etckeeper +motd diff --git a/acpi/events/powerbtn-acpi-support b/acpi/events/powerbtn-acpi-support new file mode 100644 index 0000000..3dd9a7e --- /dev/null +++ b/acpi/events/powerbtn-acpi-support @@ -0,0 +1,2 @@ +event=button[ /]power +action=/etc/acpi/powerbtn-acpi-support.sh diff --git a/acpi/powerbtn-acpi-support.sh b/acpi/powerbtn-acpi-support.sh new file mode 100755 index 0000000..ec66597 --- /dev/null +++ b/acpi/powerbtn-acpi-support.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +# This script initiates a shutdown when the power putton has been +# pressed. Loosely based on the sample that ships with the acpid package. +# If the acpid sample is present as a real config file (as it was in earlier +# versions of acpid), we skip this script. (Purging and reinstalling acpid +# resolves this situation, or simply deleting /etc/acpi/events/powerbtn.) + +if [ -f /etc/acpi/events/powerbtn -o -f /etc/acpi/events/powerbtn.dpkg-bak ] ; then + logger Acpi-support not handling power button, acpid handler exists at /etc/acpi/events/powerbtn or /etc/acpi/events/powerbtn.dpkg-bak. + exit 0 +fi + +[ -e /usr/share/acpi-support/policy-funcs ] || exit 0 + +. /usr/share/acpi-support/policy-funcs + +if { CheckPolicy || HasLogindAndSystemd1Manager; }; then + exit 0 +fi + +if [ -x /etc/acpi/powerbtn.sh ] ; then + # Compatibility with old config script from acpid package + /etc/acpi/powerbtn.sh +elif [ -x /etc/acpi/powerbtn.sh.dpkg-bak ] ; then + # Compatibility with old config script from acpid package + # which is still around because it was changed by the admin + /etc/acpi/powerbtn.sh.dpkg-bak +else + # Normal handling. + /sbin/shutdown -h -P now "Power button pressed" +fi + diff --git a/adduser.conf b/adduser.conf new file mode 100644 index 0000000..1626c04 --- /dev/null +++ b/adduser.conf @@ -0,0 +1,85 @@ +# /etc/adduser.conf: `adduser' configuration. +# See adduser(8) and adduser.conf(5) for full documentation. + +# The DSHELL variable specifies the default login shell on your +# system. +DSHELL=/bin/bash + +# The DHOME variable specifies the directory containing users' home +# directories. +DHOME=/home + +# If GROUPHOMES is "yes", then the home directories will be created as +# /home/groupname/user. +GROUPHOMES=no + +# If LETTERHOMES is "yes", then the created home directories will have +# an extra directory - the first letter of the user name. For example: +# /home/u/user. +LETTERHOMES=no + +# The SKEL variable specifies the directory containing "skeletal" user +# files; in other words, files such as a sample .profile that will be +# copied to the new user's home directory when it is created. +SKEL=/etc/skel + +# FIRST_SYSTEM_[GU]ID to LAST_SYSTEM_[GU]ID inclusive is the range for UIDs +# for dynamically allocated administrative and system accounts/groups. +# Please note that system software, such as the users allocated by the base-passwd +# package, may assume that UIDs less than 100 are unallocated. +FIRST_SYSTEM_UID=100 +LAST_SYSTEM_UID=999 + +FIRST_SYSTEM_GID=100 +LAST_SYSTEM_GID=999 + +# FIRST_[GU]ID to LAST_[GU]ID inclusive is the range of UIDs of dynamically +# allocated user accounts/groups. +FIRST_UID=1000 +LAST_UID=29999 + +FIRST_GID=1000 +LAST_GID=29999 + +# The USERGROUPS variable can be either "yes" or "no". If "yes" each +# created user will be given their own group to use as a default. If +# "no", each created user will be placed in the group whose gid is +# USERS_GID (see below). +USERGROUPS=yes + +# If USERGROUPS is "no", then USERS_GID should be the GID of the group +# `users' (or the equivalent group) on your system. +USERS_GID=100 + +# If DIR_MODE is set, directories will be created with the specified +# mode. Otherwise the default mode 0755 will be used. +DIR_MODE=0755 + +# If SETGID_HOME is "yes" home directories for users with their own +# group the setgid bit will be set. This was the default for +# versions << 3.13 of adduser. Because it has some bad side effects we +# no longer do this per default. If you want it nevertheless you can +# still set it here. +SETGID_HOME=no + +# If QUOTAUSER is set, a default quota will be set from that user with +# `edquota -p QUOTAUSER newuser' +QUOTAUSER="" + +# If SKEL_IGNORE_REGEX is set, adduser will ignore files matching this +# regular expression when creating a new home directory +SKEL_IGNORE_REGEX="dpkg-(old|new|dist|save)" + +# Set this if you want the --add_extra_groups option to adduser to add +# new users to other groups. +# This is the list of groups that new non-system users will be added to +# Default: +#EXTRA_GROUPS="dialout cdrom floppy audio video plugdev users" + +# If ADD_EXTRA_GROUPS is set to something non-zero, the EXTRA_GROUPS +# option above will be default behavior for adding new, non-system users +#ADD_EXTRA_GROUPS=1 + + +# check user and group names also against this regular expression. +#NAME_REGEX="^[a-z][-a-z0-9_]*\$" diff --git a/aliases b/aliases new file mode 100644 index 0000000..93a3249 --- /dev/null +++ b/aliases @@ -0,0 +1,2 @@ +# See man 5 aliases for format +postmaster: root diff --git a/aliases.db b/aliases.db new file mode 100644 index 0000000000000000000000000000000000000000..f4498e9413b450dd4237477a3fb348aae1a834fc GIT binary patch literal 12288 zcmeI&F-ikL6oBD35+o_Yr11u}1~pm1E`h8Na7|*;2$Ch>lBCd;*~MFU5-Shj8N>_N zdxe1Dyeui)$|k1yA3L+dd$X_jx?xsC#Q32xJJ^?+E*gGRbs@4>ynfB?q5sC$&0+0! zbX1hI$EJ^FD!#|Z^I}@g7rU7eKmY**5I_I{1Q0*~0R#|0;J*dRXY{JPSgC*8mHo1x z_T9eOSL-tb0tg_000IagfB*srAbNGKg;sOiFwFc&AD6NWr=%A zTyvS4n_(Pv$CL0nzUoGyIcW!Hr>)>PIM>Rhuf)-y*T3k8J<}2YXz2OBbkE#l}s{jB1 literal 0 HcmV?d00001 diff --git a/alternatives/README b/alternatives/README new file mode 100644 index 0000000..54ef740 --- /dev/null +++ b/alternatives/README @@ -0,0 +1,2 @@ +Please read the update-alternatives(8) man page for information on this +directory and its contents. diff --git a/alternatives/aptitude b/alternatives/aptitude new file mode 120000 index 0000000..92636dd --- /dev/null +++ b/alternatives/aptitude @@ -0,0 +1 @@ +/usr/bin/aptitude-curses \ No newline at end of file diff --git a/alternatives/aptitude.8.gz b/alternatives/aptitude.8.gz new file mode 120000 index 0000000..7640372 --- /dev/null +++ b/alternatives/aptitude.8.gz @@ -0,0 +1 @@ +/usr/share/man/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.cs.8.gz b/alternatives/aptitude.cs.8.gz new file mode 120000 index 0000000..3d3cfd8 --- /dev/null +++ b/alternatives/aptitude.cs.8.gz @@ -0,0 +1 @@ +/usr/share/man/cs/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.de.8.gz b/alternatives/aptitude.de.8.gz new file mode 120000 index 0000000..677c423 --- /dev/null +++ b/alternatives/aptitude.de.8.gz @@ -0,0 +1 @@ +/usr/share/man/de/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.es.8.gz b/alternatives/aptitude.es.8.gz new file mode 120000 index 0000000..e9553a1 --- /dev/null +++ b/alternatives/aptitude.es.8.gz @@ -0,0 +1 @@ +/usr/share/man/es/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.fi.8.gz b/alternatives/aptitude.fi.8.gz new file mode 120000 index 0000000..7527ff1 --- /dev/null +++ b/alternatives/aptitude.fi.8.gz @@ -0,0 +1 @@ +/usr/share/man/fi/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.fr.8.gz b/alternatives/aptitude.fr.8.gz new file mode 120000 index 0000000..8732b80 --- /dev/null +++ b/alternatives/aptitude.fr.8.gz @@ -0,0 +1 @@ +/usr/share/man/fr/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.gl.8.gz b/alternatives/aptitude.gl.8.gz new file mode 120000 index 0000000..1be1613 --- /dev/null +++ b/alternatives/aptitude.gl.8.gz @@ -0,0 +1 @@ +/usr/share/man/gl/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.it.8.gz b/alternatives/aptitude.it.8.gz new file mode 120000 index 0000000..aa24c32 --- /dev/null +++ b/alternatives/aptitude.it.8.gz @@ -0,0 +1 @@ +/usr/share/man/it/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.ja.8.gz b/alternatives/aptitude.ja.8.gz new file mode 120000 index 0000000..0fadf14 --- /dev/null +++ b/alternatives/aptitude.ja.8.gz @@ -0,0 +1 @@ +/usr/share/man/ja/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/aptitude.pl.8.gz b/alternatives/aptitude.pl.8.gz new file mode 120000 index 0000000..1370bf5 --- /dev/null +++ b/alternatives/aptitude.pl.8.gz @@ -0,0 +1 @@ +/usr/share/man/pl/man8/aptitude-curses.8.gz \ No newline at end of file diff --git a/alternatives/awk b/alternatives/awk new file mode 120000 index 0000000..6190dcb --- /dev/null +++ b/alternatives/awk @@ -0,0 +1 @@ +/usr/bin/mawk \ No newline at end of file diff --git a/alternatives/awk.1.gz b/alternatives/awk.1.gz new file mode 120000 index 0000000..5d8f19b --- /dev/null +++ b/alternatives/awk.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/mawk.1.gz \ No newline at end of file diff --git a/alternatives/builtins.7.gz b/alternatives/builtins.7.gz new file mode 120000 index 0000000..96d1b74 --- /dev/null +++ b/alternatives/builtins.7.gz @@ -0,0 +1 @@ +/usr/share/man/man7/bash-builtins.7.gz \ No newline at end of file diff --git a/alternatives/dhcpcd b/alternatives/dhcpcd new file mode 120000 index 0000000..981de74 --- /dev/null +++ b/alternatives/dhcpcd @@ -0,0 +1 @@ +/sbin/dhcpcd5 \ No newline at end of file diff --git a/alternatives/dhcpcd.8.gz b/alternatives/dhcpcd.8.gz new file mode 120000 index 0000000..e8ddb34 --- /dev/null +++ b/alternatives/dhcpcd.8.gz @@ -0,0 +1 @@ +/usr/share/man/man8/dhcpcd5.8.gz \ No newline at end of file diff --git a/alternatives/editor b/alternatives/editor new file mode 120000 index 0000000..7a06612 --- /dev/null +++ b/alternatives/editor @@ -0,0 +1 @@ +/bin/nano \ No newline at end of file diff --git a/alternatives/editor.1.gz b/alternatives/editor.1.gz new file mode 120000 index 0000000..bb2d082 --- /dev/null +++ b/alternatives/editor.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/nano.1.gz \ No newline at end of file diff --git a/alternatives/ex b/alternatives/ex new file mode 120000 index 0000000..1d112da --- /dev/null +++ b/alternatives/ex @@ -0,0 +1 @@ +/usr/bin/vim.basic \ No newline at end of file diff --git a/alternatives/ex.1.gz b/alternatives/ex.1.gz new file mode 120000 index 0000000..e02a6af --- /dev/null +++ b/alternatives/ex.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/ex.fr.1.gz b/alternatives/ex.fr.1.gz new file mode 120000 index 0000000..af52858 --- /dev/null +++ b/alternatives/ex.fr.1.gz @@ -0,0 +1 @@ +/usr/share/man/fr/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/ex.it.1.gz b/alternatives/ex.it.1.gz new file mode 120000 index 0000000..4498a3d --- /dev/null +++ b/alternatives/ex.it.1.gz @@ -0,0 +1 @@ +/usr/share/man/it/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/ex.ja.1.gz b/alternatives/ex.ja.1.gz new file mode 120000 index 0000000..071acfb --- /dev/null +++ b/alternatives/ex.ja.1.gz @@ -0,0 +1 @@ +/usr/share/man/ja/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/ex.pl.1.gz b/alternatives/ex.pl.1.gz new file mode 120000 index 0000000..345590a --- /dev/null +++ b/alternatives/ex.pl.1.gz @@ -0,0 +1 @@ +/usr/share/man/pl/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/ex.ru.1.gz b/alternatives/ex.ru.1.gz new file mode 120000 index 0000000..ea9aa16 --- /dev/null +++ b/alternatives/ex.ru.1.gz @@ -0,0 +1 @@ +/usr/share/man/ru/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/from b/alternatives/from new file mode 120000 index 0000000..3ee6643 --- /dev/null +++ b/alternatives/from @@ -0,0 +1 @@ +/usr/bin/bsd-from \ No newline at end of file diff --git a/alternatives/from.1.gz b/alternatives/from.1.gz new file mode 120000 index 0000000..9c0d8d3 --- /dev/null +++ b/alternatives/from.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/bsd-from.1.gz \ No newline at end of file diff --git a/alternatives/lft b/alternatives/lft new file mode 120000 index 0000000..cbc6006 --- /dev/null +++ b/alternatives/lft @@ -0,0 +1 @@ +/usr/bin/lft.db \ No newline at end of file diff --git a/alternatives/lft.1.gz b/alternatives/lft.1.gz new file mode 120000 index 0000000..c1cf08c --- /dev/null +++ b/alternatives/lft.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/lft.db.1.gz \ No newline at end of file diff --git a/alternatives/mt b/alternatives/mt new file mode 120000 index 0000000..46c2596 --- /dev/null +++ b/alternatives/mt @@ -0,0 +1 @@ +/bin/mt-gnu \ No newline at end of file diff --git a/alternatives/mt.1.gz b/alternatives/mt.1.gz new file mode 120000 index 0000000..cac0e18 --- /dev/null +++ b/alternatives/mt.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/mt-gnu.1.gz \ No newline at end of file diff --git a/alternatives/nawk b/alternatives/nawk new file mode 120000 index 0000000..6190dcb --- /dev/null +++ b/alternatives/nawk @@ -0,0 +1 @@ +/usr/bin/mawk \ No newline at end of file diff --git a/alternatives/nawk.1.gz b/alternatives/nawk.1.gz new file mode 120000 index 0000000..5d8f19b --- /dev/null +++ b/alternatives/nawk.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/mawk.1.gz \ No newline at end of file diff --git a/alternatives/nc b/alternatives/nc new file mode 120000 index 0000000..242a418 --- /dev/null +++ b/alternatives/nc @@ -0,0 +1 @@ +/bin/nc.traditional \ No newline at end of file diff --git a/alternatives/nc.1.gz b/alternatives/nc.1.gz new file mode 120000 index 0000000..c8fdfa9 --- /dev/null +++ b/alternatives/nc.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/nc.traditional.1.gz \ No newline at end of file diff --git a/alternatives/netcat b/alternatives/netcat new file mode 120000 index 0000000..242a418 --- /dev/null +++ b/alternatives/netcat @@ -0,0 +1 @@ +/bin/nc.traditional \ No newline at end of file diff --git a/alternatives/netcat.1.gz b/alternatives/netcat.1.gz new file mode 120000 index 0000000..c8fdfa9 --- /dev/null +++ b/alternatives/netcat.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/nc.traditional.1.gz \ No newline at end of file diff --git a/alternatives/pager b/alternatives/pager new file mode 120000 index 0000000..cbce297 --- /dev/null +++ b/alternatives/pager @@ -0,0 +1 @@ +/bin/less \ No newline at end of file diff --git a/alternatives/pager.1.gz b/alternatives/pager.1.gz new file mode 120000 index 0000000..c1430af --- /dev/null +++ b/alternatives/pager.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/less.1.gz \ No newline at end of file diff --git a/alternatives/pico b/alternatives/pico new file mode 120000 index 0000000..7a06612 --- /dev/null +++ b/alternatives/pico @@ -0,0 +1 @@ +/bin/nano \ No newline at end of file diff --git a/alternatives/pico.1.gz b/alternatives/pico.1.gz new file mode 120000 index 0000000..bb2d082 --- /dev/null +++ b/alternatives/pico.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/nano.1.gz \ No newline at end of file diff --git a/alternatives/rcp b/alternatives/rcp new file mode 120000 index 0000000..594df9e --- /dev/null +++ b/alternatives/rcp @@ -0,0 +1 @@ +/usr/bin/scp \ No newline at end of file diff --git a/alternatives/rcp.1.gz b/alternatives/rcp.1.gz new file mode 120000 index 0000000..63bfff3 --- /dev/null +++ b/alternatives/rcp.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/scp.1.gz \ No newline at end of file diff --git a/alternatives/rename b/alternatives/rename new file mode 120000 index 0000000..97ed95d --- /dev/null +++ b/alternatives/rename @@ -0,0 +1 @@ +/usr/bin/file-rename \ No newline at end of file diff --git a/alternatives/rename.1.gz b/alternatives/rename.1.gz new file mode 120000 index 0000000..af4cffb --- /dev/null +++ b/alternatives/rename.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/file-rename.1p.gz \ No newline at end of file diff --git a/alternatives/rlogin b/alternatives/rlogin new file mode 120000 index 0000000..8db89a8 --- /dev/null +++ b/alternatives/rlogin @@ -0,0 +1 @@ +/usr/bin/slogin \ No newline at end of file diff --git a/alternatives/rlogin.1.gz b/alternatives/rlogin.1.gz new file mode 120000 index 0000000..be0c6db --- /dev/null +++ b/alternatives/rlogin.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/slogin.1.gz \ No newline at end of file diff --git a/alternatives/rmt b/alternatives/rmt new file mode 120000 index 0000000..82958a9 --- /dev/null +++ b/alternatives/rmt @@ -0,0 +1 @@ +/usr/sbin/rmt-tar \ No newline at end of file diff --git a/alternatives/rmt.8.gz b/alternatives/rmt.8.gz new file mode 120000 index 0000000..8c87e21 --- /dev/null +++ b/alternatives/rmt.8.gz @@ -0,0 +1 @@ +/usr/share/man/man8/rmt-tar.8.gz \ No newline at end of file diff --git a/alternatives/rsh b/alternatives/rsh new file mode 120000 index 0000000..50a1cff --- /dev/null +++ b/alternatives/rsh @@ -0,0 +1 @@ +/usr/bin/ssh \ No newline at end of file diff --git a/alternatives/rsh.1.gz b/alternatives/rsh.1.gz new file mode 120000 index 0000000..b3b36c0 --- /dev/null +++ b/alternatives/rsh.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/ssh.1.gz \ No newline at end of file diff --git a/alternatives/rview b/alternatives/rview new file mode 120000 index 0000000..1d112da --- /dev/null +++ b/alternatives/rview @@ -0,0 +1 @@ +/usr/bin/vim.basic \ No newline at end of file diff --git a/alternatives/rvim b/alternatives/rvim new file mode 120000 index 0000000..1d112da --- /dev/null +++ b/alternatives/rvim @@ -0,0 +1 @@ +/usr/bin/vim.basic \ No newline at end of file diff --git a/alternatives/tcptraceroute b/alternatives/tcptraceroute new file mode 120000 index 0000000..c828cd9 --- /dev/null +++ b/alternatives/tcptraceroute @@ -0,0 +1 @@ +/usr/sbin/tcptraceroute.db \ No newline at end of file diff --git a/alternatives/tcptraceroute.8.gz b/alternatives/tcptraceroute.8.gz new file mode 120000 index 0000000..815a50c --- /dev/null +++ b/alternatives/tcptraceroute.8.gz @@ -0,0 +1 @@ +/usr/share/man/man8/tcptraceroute.db.8.gz \ No newline at end of file diff --git a/alternatives/traceproto b/alternatives/traceproto new file mode 120000 index 0000000..d6973c9 --- /dev/null +++ b/alternatives/traceproto @@ -0,0 +1 @@ +/usr/bin/traceproto.db \ No newline at end of file diff --git a/alternatives/traceproto.1.gz b/alternatives/traceproto.1.gz new file mode 120000 index 0000000..3353595 --- /dev/null +++ b/alternatives/traceproto.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/traceproto.db.1.gz \ No newline at end of file diff --git a/alternatives/traceroute b/alternatives/traceroute new file mode 120000 index 0000000..fd69632 --- /dev/null +++ b/alternatives/traceroute @@ -0,0 +1 @@ +/usr/bin/traceroute.db \ No newline at end of file diff --git a/alternatives/traceroute.1.gz b/alternatives/traceroute.1.gz new file mode 120000 index 0000000..e9586f9 --- /dev/null +++ b/alternatives/traceroute.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/traceroute.db.1.gz \ No newline at end of file diff --git a/alternatives/traceroute.sbin b/alternatives/traceroute.sbin new file mode 120000 index 0000000..fd69632 --- /dev/null +++ b/alternatives/traceroute.sbin @@ -0,0 +1 @@ +/usr/bin/traceroute.db \ No newline at end of file diff --git a/alternatives/traceroute6 b/alternatives/traceroute6 new file mode 120000 index 0000000..7958fcf --- /dev/null +++ b/alternatives/traceroute6 @@ -0,0 +1 @@ +/usr/bin/traceroute6.db \ No newline at end of file diff --git a/alternatives/traceroute6.1.gz b/alternatives/traceroute6.1.gz new file mode 120000 index 0000000..7977291 --- /dev/null +++ b/alternatives/traceroute6.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/traceroute6.db.1.gz \ No newline at end of file diff --git a/alternatives/vi b/alternatives/vi new file mode 120000 index 0000000..1d112da --- /dev/null +++ b/alternatives/vi @@ -0,0 +1 @@ +/usr/bin/vim.basic \ No newline at end of file diff --git a/alternatives/vi.1.gz b/alternatives/vi.1.gz new file mode 120000 index 0000000..e02a6af --- /dev/null +++ b/alternatives/vi.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/vi.fr.1.gz b/alternatives/vi.fr.1.gz new file mode 120000 index 0000000..af52858 --- /dev/null +++ b/alternatives/vi.fr.1.gz @@ -0,0 +1 @@ +/usr/share/man/fr/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/vi.it.1.gz b/alternatives/vi.it.1.gz new file mode 120000 index 0000000..4498a3d --- /dev/null +++ b/alternatives/vi.it.1.gz @@ -0,0 +1 @@ +/usr/share/man/it/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/vi.ja.1.gz b/alternatives/vi.ja.1.gz new file mode 120000 index 0000000..071acfb --- /dev/null +++ b/alternatives/vi.ja.1.gz @@ -0,0 +1 @@ +/usr/share/man/ja/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/vi.pl.1.gz b/alternatives/vi.pl.1.gz new file mode 120000 index 0000000..345590a --- /dev/null +++ b/alternatives/vi.pl.1.gz @@ -0,0 +1 @@ +/usr/share/man/pl/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/vi.ru.1.gz b/alternatives/vi.ru.1.gz new file mode 120000 index 0000000..ea9aa16 --- /dev/null +++ b/alternatives/vi.ru.1.gz @@ -0,0 +1 @@ +/usr/share/man/ru/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/view b/alternatives/view new file mode 120000 index 0000000..1d112da --- /dev/null +++ b/alternatives/view @@ -0,0 +1 @@ +/usr/bin/vim.basic \ No newline at end of file diff --git a/alternatives/view.1.gz b/alternatives/view.1.gz new file mode 120000 index 0000000..e02a6af --- /dev/null +++ b/alternatives/view.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/view.fr.1.gz b/alternatives/view.fr.1.gz new file mode 120000 index 0000000..af52858 --- /dev/null +++ b/alternatives/view.fr.1.gz @@ -0,0 +1 @@ +/usr/share/man/fr/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/view.it.1.gz b/alternatives/view.it.1.gz new file mode 120000 index 0000000..4498a3d --- /dev/null +++ b/alternatives/view.it.1.gz @@ -0,0 +1 @@ +/usr/share/man/it/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/view.ja.1.gz b/alternatives/view.ja.1.gz new file mode 120000 index 0000000..071acfb --- /dev/null +++ b/alternatives/view.ja.1.gz @@ -0,0 +1 @@ +/usr/share/man/ja/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/view.pl.1.gz b/alternatives/view.pl.1.gz new file mode 120000 index 0000000..345590a --- /dev/null +++ b/alternatives/view.pl.1.gz @@ -0,0 +1 @@ +/usr/share/man/pl/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/view.ru.1.gz b/alternatives/view.ru.1.gz new file mode 120000 index 0000000..ea9aa16 --- /dev/null +++ b/alternatives/view.ru.1.gz @@ -0,0 +1 @@ +/usr/share/man/ru/man1/vim.1.gz \ No newline at end of file diff --git a/alternatives/vim b/alternatives/vim new file mode 120000 index 0000000..1d112da --- /dev/null +++ b/alternatives/vim @@ -0,0 +1 @@ +/usr/bin/vim.basic \ No newline at end of file diff --git a/alternatives/vimdiff b/alternatives/vimdiff new file mode 120000 index 0000000..1d112da --- /dev/null +++ b/alternatives/vimdiff @@ -0,0 +1 @@ +/usr/bin/vim.basic \ No newline at end of file diff --git a/alternatives/w b/alternatives/w new file mode 120000 index 0000000..11c34c4 --- /dev/null +++ b/alternatives/w @@ -0,0 +1 @@ +/usr/bin/w.procps \ No newline at end of file diff --git a/alternatives/w.1.gz b/alternatives/w.1.gz new file mode 120000 index 0000000..7391b64 --- /dev/null +++ b/alternatives/w.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/w.procps.1.gz \ No newline at end of file diff --git a/alternatives/write b/alternatives/write new file mode 120000 index 0000000..121ab03 --- /dev/null +++ b/alternatives/write @@ -0,0 +1 @@ +/usr/bin/bsd-write \ No newline at end of file diff --git a/alternatives/write.1.gz b/alternatives/write.1.gz new file mode 120000 index 0000000..9bcde45 --- /dev/null +++ b/alternatives/write.1.gz @@ -0,0 +1 @@ +/usr/share/man/man1/bsd-write.1.gz \ No newline at end of file diff --git a/apm/event.d/01chrony b/apm/event.d/01chrony new file mode 100755 index 0000000..df52908 --- /dev/null +++ b/apm/event.d/01chrony @@ -0,0 +1,17 @@ +#!/bin/sh + +# Placed in /etc/apm/event.d by the chrony package at the instruction of +# the apmd maintainer. If you don't have apm and don't intend to install +# apmd you may remove it. It needs to run after 00hwclock but before any +# other scripts. + + +[ -x /usr/sbin/chronyd ] || exit 0 + +if [ "$1" = suspend ]; then + invoke-rc.d chrony stop +elif [ "$1" = standby ]; then + invoke-rc.d chrony stop +elif [ "$1" = resume ]; then + invoke-rc.d chrony start +fi diff --git a/apt/apt.conf.d/00CDMountPoint b/apt/apt.conf.d/00CDMountPoint new file mode 100644 index 0000000..6a2c664 --- /dev/null +++ b/apt/apt.conf.d/00CDMountPoint @@ -0,0 +1,4 @@ +Acquire::cdrom { + mount "/media/cdrom"; +}; +Dir::Media::MountPath "/media/cdrom"; diff --git a/apt/apt.conf.d/00trustcdrom b/apt/apt.conf.d/00trustcdrom new file mode 100644 index 0000000..c7588cb --- /dev/null +++ b/apt/apt.conf.d/00trustcdrom @@ -0,0 +1 @@ +APT::Authentication::TrustCDROM "true"; diff --git a/apt/apt.conf.d/01autoremove b/apt/apt.conf.d/01autoremove new file mode 100644 index 0000000..fc02350 --- /dev/null +++ b/apt/apt.conf.d/01autoremove @@ -0,0 +1,40 @@ +APT +{ + NeverAutoRemove + { + "^firmware-linux.*"; + "^linux-firmware$"; + }; + + VersionedKernelPackages + { + # linux kernels + "linux-image"; + "linux-headers"; + "linux-image-extra"; + "linux-signed-image"; + # kfreebsd kernels + "kfreebsd-image"; + "kfreebsd-headers"; + # hurd kernels + "gnumach-image"; + # (out-of-tree) modules + ".*-modules"; + ".*-kernel"; + "linux-backports-modules-.*"; + # tools + "linux-tools"; + }; + + Never-MarkAuto-Sections + { + "metapackages"; + "restricted/metapackages"; + "universe/metapackages"; + "multiverse/metapackages"; + "oldlibs"; + "restricted/oldlibs"; + "universe/oldlibs"; + "multiverse/oldlibs"; + }; +}; diff --git a/apt/apt.conf.d/01autoremove-kernels b/apt/apt.conf.d/01autoremove-kernels new file mode 100644 index 0000000..3fb87d3 --- /dev/null +++ b/apt/apt.conf.d/01autoremove-kernels @@ -0,0 +1,37 @@ +// DO NOT EDIT! File autogenerated by /etc/kernel/postinst.d/apt-auto-removal +APT::NeverAutoRemove +{ + "^linux-image-3\.16\.0-30-generic$"; + "^linux-image-3\.16\.0-4-amd64$"; + "^linux-image-4\.1\.6-gridscale$"; + "^linux-headers-3\.16\.0-30-generic$"; + "^linux-headers-3\.16\.0-4-amd64$"; + "^linux-headers-4\.1\.6-gridscale$"; + "^linux-image-extra-3\.16\.0-30-generic$"; + "^linux-image-extra-3\.16\.0-4-amd64$"; + "^linux-image-extra-4\.1\.6-gridscale$"; + "^linux-signed-image-3\.16\.0-30-generic$"; + "^linux-signed-image-3\.16\.0-4-amd64$"; + "^linux-signed-image-4\.1\.6-gridscale$"; + "^kfreebsd-image-3\.16\.0-30-generic$"; + "^kfreebsd-image-3\.16\.0-4-amd64$"; + "^kfreebsd-image-4\.1\.6-gridscale$"; + "^kfreebsd-headers-3\.16\.0-30-generic$"; + "^kfreebsd-headers-3\.16\.0-4-amd64$"; + "^kfreebsd-headers-4\.1\.6-gridscale$"; + "^gnumach-image-3\.16\.0-30-generic$"; + "^gnumach-image-3\.16\.0-4-amd64$"; + "^gnumach-image-4\.1\.6-gridscale$"; + "^.*-modules-3\.16\.0-30-generic$"; + "^.*-modules-3\.16\.0-4-amd64$"; + "^.*-modules-4\.1\.6-gridscale$"; + "^.*-kernel-3\.16\.0-30-generic$"; + "^.*-kernel-3\.16\.0-4-amd64$"; + "^.*-kernel-4\.1\.6-gridscale$"; + "^linux-backports-modules-.*-3\.16\.0-30-generic$"; + "^linux-backports-modules-.*-3\.16\.0-4-amd64$"; + "^linux-backports-modules-.*-4\.1\.6-gridscale$"; + "^linux-tools-3\.16\.0-30-generic$"; + "^linux-tools-3\.16\.0-4-amd64$"; + "^linux-tools-4\.1\.6-gridscale$"; +}; diff --git a/apt/apt.conf.d/70debconf b/apt/apt.conf.d/70debconf new file mode 100644 index 0000000..0c8b4ca --- /dev/null +++ b/apt/apt.conf.d/70debconf @@ -0,0 +1,3 @@ +// Pre-configure all packages with debconf before they are installed. +// If you don't like it, comment it out. +DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt || true";}; diff --git a/apt/sources.list b/apt/sources.list new file mode 100644 index 0000000..e630c48 --- /dev/null +++ b/apt/sources.list @@ -0,0 +1,13 @@ +deb http://ftp.plusline.de/debian/ jessie main contrib non-free +deb-src http://ftp.plusline.de/debian/ jessie main contrib non-free + +deb http://security.debian.org/ jessie/updates main contrib non-free +deb-src http://security.debian.org/ jessie/updates main contrib non-free + +deb http://ftp.plusline.de/debian/ jessie-updates main contrib non-free +deb-src http://ftp.plusline.de/debian/ jessie-updates main contrib non-free + +# jessie-backports, previously on backports.debian.org +deb http://ftp.plusline.de/debian/ jessie-backports main contrib non-free +deb-src http://ftp.plusline.de/debian/ jessie-backports main contrib non-free + diff --git a/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg b/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg new file mode 100644 index 0000000000000000000000000000000000000000..fa4047c55cdd3cf3aa6c97195235d5786c66d3ff GIT binary patch literal 5138 zcmZYCWmgo8+6CZYf=0T#85lr98XN%!1e9*1Yv}HFP)bU=k&rIwkZwgfq(r)gdT4=H z&sk@^^#ks2*V=pE=|BRomU9U;1`(jkzj8QL$z_wS1180}s`f&WqVm=%josslrJSh| z*>?Wp2%}$%LlR*X==plm;_f4P|5k1og@BF>p7%j*1bqt?mH^F{S4&v@2SP;{z`fEAUxu^47_Z6<)$5z&sAq+IiMxmwwrd)QGJ zeoFPcO8XT(MSrn-5s(Nf`*9Y__{|`lIg%OPE%@?4GxJiddBi1TgKllE?8q}k^%e1= zapY#=o}WV-tg&!C4*?k&;I+mWTbCAGc`yA|g_|t3_|wzsuMUH<&0inSh-7OQY34pU z>v!b6-;h4SJvU$C#43&UyaGDP9~zB7ytoE984K@=uiTL3sAJvS)P40Oz>;_CU>Y0M z8`sftItDr_<3#kAG{#-iSOGFgT_x)FhN8Qj7G?M_!;$pJ zTY&gTrmpu1Sfw7iAgriC5ZW$|_f&A0Z}$p1o?qQJ!VuL&GM_w20`M{Io$FZKX2fqr zToAyjzkREgiP}@(&gcdZV*oHBfudkW3~T^11gPa+972g7g7G+=_)DqvxY=V(ur6`^ z<^y@nT^JAx0Kml|@)8@D=ZPODl3gZz(3=fxGf{v`>cjKJPG+%ZgQ}bfJ!tfP>Q5*~ z7*-GudurG`22yic!)}vVFMqo~Zse$_e&nRA1*Xias6R`rZ^zQCXxETO3xCdwQMaBY z7Z@d&2aLoixX)C>1wQ7U(b}+)oe&o1p6X_9KeJI7O43EBYRS0My7`<-zsaCxro^Vv zd^clZ@xyDObU*&RM_`%;sPDohN^?|2d()&|J6DTDJ<E|3X6w(;w!DoATGC)%mOd8I>SK4(IOOG9cW-)W2mq%djc zQmN?zAE?K_v_BIXe;#bjf-P>Ta`S?#g{v6BBex+D;5%^@qKR!FcV412U|eTG)4azv zD58R?vb%w=vJcvL zF1p_Z42T+Tkek5w87q1XURrlU%3xdeQ&Werz1g5*=;$tY04nMIAmOQ zE}06=c$G<|-f*=ZR*>j#HDJDkbj=g02L`xQq;bYp7o^i>`Nuc*s5DDqT%Sxd8W4Y9}7kgRrD|F8r;tVIzZ*3I9hn<1vI))W!> zDST6X8x)0(f)6L4b~YKZ8Xy4lzx9~?)pL8((eSKcDcNwL)oGF9yJ0Omd*A=j6aI<_ zkgO0AOWO9(l^!*xmc*uYQwGamEuz#-Wzuj|X$23<@Pt_aoUt|${T$cG>~01tN>TeMlYV|iaprz&`Q4`6#AV%*P)LH{)QXTS-^Plsz+~*@d}nadu&7cG+jUmZBJJ_Q+j!H{{Qs|{nZn) z>vf`}7Nxj5@^rUdltp8N?%MMI=y@_ocrV~9Q@i#&$xwPf zuL&(9rD5`^QIrs=0{yEeoMwEsQbs@WP@4faYDV;ulk@S-LhWyCO-Ey zNLl?*>+)@hG$VZ2)!8b1Li^|GKitLJ%;ax>nR~yxI0n&l;L$cggv-l`BUo$Wa*qWq zW!@+xuI%%Rhnjq4M0Fjo;u3`o5)gwYdfBM5;aHmN(v|&oq$5sU&4TN*y9^|86~I!~BG@t{kc!gZWaR}smvg|kVIF19O)C+ZA39_B>{c9Wb%$%yS>JNLLw<~ zbK64rg(pROqdcl=LyGFqwpV}k)Fb4r%#mhJOwZgbY>{48OwT+$oE^P_!xiop$DtC zOk8%S`Fyb0V!zaMdityySjGVzGjIE^320RmU@;R?KZPatNurCg7A~JBoZ~S(k*_Lv zJ|4`&+`DQ$X;k;oA*Q33sMA!h?MzT6SG!XkEuiyI7QY6$dQtD$x9rC3+U)$LCj*42 z*UPGN&y8Zznfm#4teaU-$pgJY|;h8%dF26+7)d-pRS34*mk!D zwY^T0|9@3 z+)^WlF}9u#FwfMB9&;U&gn4ciZpLm?9E$Y}g=OVfYxVUQ6OS&sK!fIME zP$g0it3GwAiQ7rmeHqQgV`Q*`*3;5LvxxO(OFQUUI;8Jam?OQQZLilwuY@FL+bd^> zx|ZL3Gy0llH1F=YN*Y`JaONkz4MBP>Y3@ZOhC%_1SMaj zmLoVmLQR(K@mvm~R%->8ZMl088um zwO$^OT=Y^@78a1+`7rC36t+XjBbvahS6@&|)&Gt%Ixx{6M3{dOl}rC660KNij!4wj zWVI!{7oWC_xA#Wh<4Q@x4=sc1G7IuRkT$=>`6(Qq7re?o>dcmDUFhP-MIpMgc=?!l z_uL5jJ}v{%3r6?AEr?q|xG)j>HRiYhwf&t`xd7>%z1L{uq)7zc$)I1hgXDSje9eJ+ z>3BGP%wo`6B-OUt9bNdK2UKO{JLTJ#VpVj8pHvmaCg7##&3D`r{_iT4z)2`xOdktTse_ZGpuEOhxgP|(DE)KTc#tf|p; z1Ie#tF00=vB<3q`O0cibhonCIdJ{A(ykhXRuPpQlN05Zy?IV6W)8`EM?-rQ6$|^(c z09w_GaG+utPM{4zYt)Y3fJx#Ke30;&FY2jsZF4L^Fq?kSeFn*oK?hd)?|IEQBMpUq zJ}6kQCw&GtCn%%!H4^Q`vzd|bfN!0QDj|F=LW*M3nWtHWP$xhXTRgv;LCT3-nl>aOqt=>nbG%>0YOLYe_eEe{1-j ztANZkcC#ha7rNhBi0CM4k18m)WU*tEdk`d0o7WMY7m1|v7V|LY`-<@@>6rFMn<4bY zXZL8a(D=mTsJWZDeco~)+d(wWkKjMtEO@C}`gd|Jam{N&xvE^k z89K}|^uiAO#B)i{_rLx)4Y`6Gpi`oGwArQwa{8M;#d3IDoSiZT@XW2YOhv6cvu;Ta zeW@8SEyzt#2wnMaBL7Yi*R`y_ME>)Du}2U-xR{Uc{&w55s89a9JI?DOg<7264~y1f z;dCdo>6^c0la-r>m7}~peM@Mhp=!s9>Yle(d}Y(UZWSVo2W8ok(2AG>Gs9{fpv5-*O) zoYD9udVcVy0C)d1lD_x;%wl()XE%Ve74-wJ!g&2lb2hExVRcSK%+=W*f0|DaZPh=A zBdyh@QR#>2TFf~Qg-66(Ma20Xyds(ut(wsc0lkaExSB;=1fxyWy`T#Q8TCbAe{0Er zAMq5|Ovoma=>f`+!+io<5Fg6bSD~(~v0=ZW^GSWg@d_|10e_yJ0OO84f64^Qs?Mz^ zIx=Z#We29C$QW;opJ6zWDt)YBEz);p`Jm>Z>zQ;e*Mq?~jd}CsA}wg$gl(7eBu6Gl z0m{M$2lpF(%e=)8NO}X0EQ)(gNHDtKfm=?$jSzurbpo4&HN`tl>b#UPyQ5*$Ei3Ljk|~2pQ*z^W9#AJBEipZ z<6^^SW9H;!Wo^x8X~pm2?0~fJ<@50IF!2)L6Z$LaKTp|v1Q8(a{Z|K991;Kb0pa|0 zOYLu~(>;^*U$F6fbgsh9gxMzK6)TKLrr=iM`H%2L{kkL*|@1>81j z4LgayN1`eVNYE@-JuSDm4pe6RsVy+oA@a%l*&m-*t1(^|9C0MX#>ywcjw`IIHgnM# z%HPDQxy`2)e%s^UjBQ3Y2jIt~=o_+)C!DZq$dCa~3MqPDk~G@!sc%fH7F573-VWlD zOx*s+X25>;e1eaHfO|(jNYEZd=~y!VeScgnaF&tUJS!VVSjI@lo?o5{yE~?GtAf6` zANflEg=A~iforI6%EJfsmye3tU8oc?7FN@2$vUlIO+ywuox_Z4nolE>L1y+mSa;ml zY-+wAQHvqc@uIQ6B^qlVtcrt7j-|BCuA-R65_ literal 0 HcmV?d00001 diff --git a/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg b/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg new file mode 100644 index 0000000000000000000000000000000000000000..c454a76cbacfa95da305c6a3a95fbde93b44ed80 GIT binary patch literal 5147 zcmZYCRR8={bT|`So$6n000Tb1Q~xBiC0T=%lq0Ct^69rRnE1lz%0pZ z=&OEX?H1;wUx(mEcw;=fC(fc_d7@9>>n^2}98MWbgEnD)B0}o1kNWvHZ8X9VsPAWQ zqi+)BhKrkb5)yu9Ustv0tpDz>GybV18~BM+S1?KtNbWTai`O5ZNr zLf)xGv>rKKi)Mnqxl#)KK)`?Wh~4MXG*phTi|~I8*O2e|g5fJ=dKuk_fF2k^;j_X*mRRV_Lt@anqV?0%$<|L6;@q*$^B*xIrIuZ}_1 zt$ePUAM>;}2VLDaneGd;& zy&+YTrlAYHSTW-Gp|P&Y2j6)LV8b8OgiD8z2ONtsgBLM{g9kD=iTV@$En?u~!Egap4Cy7ZE?sTnBXf z4u3|#JKE2^2fr|Znly^PoP`J{U<+)|8z)*8sCld~S|=!=9jU5aQhf2=9m1d-9Piai zbnNvWjvJU_81+V7R%tkCHF|^)$i*Y{B0{&krc1eKae1@M&h7ei9TE2XoQ;iE!Wm?{ zG^5%1KG_BjR^0?r#Odcu9|e$0alS`UbJFmlIIVs<7Py!qS*P?Z%`y2tR(H=F)R0W0 zURmkwxO2-miWPAUpr1UFd=$mg z0|;6+SV`k&o+3vPV?HgTbh_L*UIRK5XCAZQ6qz(jcD28}GkX#&%vlTl*-;aiHeiE@ zQhF-3vvqmZ8UbWp`2F0Aw}C=8j_*f+W|L9dS*9J_%`9)?^mb`9D!HxxQ-#{Hm<8T= z0^6Iy=QeKnG>T`SN#}&-wzPBu1)frr!=3()a843V+u^WOB?U-tjflY`hn>PafHrG8FR8xL9(Z)b;;rEVs-s=_%K+g8aa;68 zGzJn3!(dom-hGeT8lsc@STwSqog=yyh=KWk_1OQ_Ba}(n`N3hrS_p<^MB1=;dzNHN6KTAHmlH+&J}O0ZH$8@$WBMYy}`e6-y_Kv@Dt941A=%qx9(wOcL`JHMs#Z*jIGV)PS*DgoFbv z@iuoVbT+SkuNlZZA`W#6dGo;~gP@Q6fGRBWnUaw%s3o*y#Lqk*-;i1XOKo1WuqLRS z2KEg-5!CbJr1>>qm5B<9vk3lJ)<6)V{@hySD-gKHXi1mY%dznSF{wP4Fub&o5tSzk zW}Q}M`8HMa{%qs@H^WsmT|Gb91a3F%&x05g3v!{$Tti zcR{==#K8J&+ljzAi<+FTqX>eXHLWg=N2z~@o@tTII?I!0{?G_xOxPvAP!l3Xg(|xO=&pIpQiNq+73PBQAk-($@Y@1r_gg|BvyPM~~mDg9)Du zEz(QyN6xFN#GqrSED=QxA2i@}0a*&__J&>gt77XsO|iP;;aUg&O&n&_zr`zv2nY6% ziiINih^t_gXhpA-dc59U5*HYrx+UiueHF1B>mGG(9z9zkOHR%gbB`=)=wQN{ebV)6 zfW1!~lPnBW(+QXFDAUf0bS;D^c&yeSh9~S_ww8Y50T+XEiW|ZJPtn6{ldhrrm2W5- z-#k;s%DL9UoPW_wcQla;<+Y=qG2P{#N+SvBq}ai*Q>{*5;w~=k%YJIuTDMd*thN+C zslc*2?qjy|PUN{xnR_`gVX~JgQB9i8*e}BXlFa^S0?RyI=dHRJN)~dJPp*`xR43x* znNjRJqeW?YQw6m$eyjadIuGV#7B}$=i@$mrv{meFoUP%^Fne1+Z)e{?W<_sXCue_q zW<@_=4|i){XIo~Nvm@LY?#K+W4`k+&6m+ro@o~22W|npE^>nxP@wN8`+x`0u0S|9S z`52%)7WtnPa{Wo+pM?aZ!^FlX#?QvUd4P|HiwVS`!~^0JJiwv?Vgi7S03bE;e;1Lv zhy>$p?fG*pM?=5x#xSqADondP8hT$ZeTD?Q@3?vvU_rkqvgV7*PmM@v!kID+At{Al zWNRd*d8h4^hnrGN?QNAk)n<=@_dQdhjO62V%)^(1>|2Yuyw3A8k?62J7QH_CJ$@v? zAjmG?_(uiFzILQ5Kb_vI;1n0N(_Cd1%Jc^wR@08`19e-5Hl$1C%LkA0sgs`DSr>?z z5AT&TIcEhlD4?66Tb!c}Z#oZ-!a_1-hmpQ%e6s}*x4m!ymD-T+(0R%@4q1irVZ9_V zRx#6L^s^WpsIqJNSX}cgOqA3#jB7!dpf<*j?OI6-_tI{k<{BkUHxyB3P*!a5^85#N zlb5yk`*cxM{BmOD1JLn1AFGs&(p_E;@(s2yU{pKbP=r+j#uO#=j7?U{-bSl9%+g{k z5nhDc64RNuTjp`?phB>VC{5qpMFXds^}N0>+4B>+{$?@-v!y>2gP%3nKghB&qG<%r zL7k~rO9f2gu$L6^qql^KGllq`fEVIuHU8XoE@(-oY`l&!l)m%U!6LB8lSg}6l>d18 zn@5u4EGfkXH-kN%&ldspebC&!-AWHVSNxtML&>n_;CVW)ss`_yRqIz)^>^{%ffmsC z#Kz45i=3jarb;*Zomk;b^4a+?-2Q2u%o9I%PfJ6SwL?r+M@3a*C~b;d-1$E@jUJ2S z4Nx~p_5M^k)sa z>PSYOp* zEpoW8gBN}dK#W6FZ)@c|Kfl%Uo3%yIdP(vPx4^x~8*Iw1m=Dq8A*BO#UExNZ#t*_P zAChxM`>bB0c~?Tseg+G^Nr0ozB@DG4%*8>k3s*BhX(B!_zJ9FlsSl12s<_5_1s7*C z94K+)17vf#l@Mj{OB+~z%bOv!T=qPr+fqpZpTPs~j%Q_ES+oX9dK$W+sEC611uV8M zqez+{!g{j+dPXNj2D5vMUM*35cPZ0~&=;@yqtS4-$PpYxoyPqyT2s>2RE5Xy%-CLZ zuQnTa$V)LIG=KYBc^lkb*p*DYGvP3i7h29@e*(8NZ#$6r`m^y|2CkTMXImlBoC^ye zD!Ij0gdmC}qNs>rF!cie6(iBgOD* zrKhtn*{jvN@31mv?zX#Fhll8xPwvq#Uau9>JFtyd^5Ex`j^3JLaa!|-q>T>VPqZwx zTYW(0DWGv=qeG$ls(YNX{dlZb&vZa$({f^QhJFeB#&Jb3FW_(X0?kL8WwF71zYpVE ze1Qy|&wPCzr?&5n`%sP5VNP({>C*g$ao&V{714Xs5fjY9TrmTQm3Q+FI%#I(8mNJ$+%+#3G6&rlGw2{Nb2f*?_!7Ib9G&=nBaz9$(-XKn40_c}>G*$@?WF4yT2Rmopg1x=UsfPdbP8%Nvtk=d}_{>#@yyvL65HDSrZsqapd(Se0th-JrT( zCSP}?<--J(#cB+kKWp;Vj(Ra>YcD`)JW=pya*y0%7b4Lfwwp5c5Tg>`Q-7J!lRHTk znThg{fQq)Nr`f;FIQ^}(Q(lh$lubp_?mgNF%shMI$8KUhD?P@YyN>rIN-pW?Qg(L; zT~`uEMi<5PKXk>ajW2J=7tMBpW#fG__LHuOU&G zPSd|As5&H$((K8Eb(`^+KX_!)*@g77!+t4EF!Sf>zNL|3wLFH(#GAAn4YS6ocih<#7UbV;{R{}6%vJ2YZ{LgRa4j7#g| z>-}fyaMC*Y`g%$W3Oaf^3OHKB;r0#=0(SO-o*r(_wt)h^0lt?0!UCdyMg8Y*uN6vs zuUj?v4AU_&W{ttX9aMPOK9QSWe6o`)O4Of@3us)#ISHNfn&zv660-J|hmKvD(iZO+ zpX!~ph3veQSFguXPH*>_6E872#X2AH=}k@l@dCw^-&FlnCi%LtyXwZ26sd1~{aNi8 zu`iAPd8FdqWq3yDR8qV$V}=jpnn!`4+FZ=Z3RjbY{mX-bawXLRkm`E%KV%6aWQvH$0n18H|#0 zB&lX6`2^dM{p}m9UanE@*j^CYizTN{304+2g(!ybXi9L79BIp2x}F`j79{xjaOx(32=`cP6(eHj#Cqn(&O6v$Tih#ip&*jYQ(yrfR<56n?W|mVP_^H=) z?%+*({)e6ita6QI?(s0m$QI0Af$!VE8~T{^_sFf)L0Oz>P-PPYYhG3C?w{8wy^ke; zOl4V$F5(}ttk^TndUC@Vu|+6HXz>eqLFR zzXMZI$V8QSI!M%#cTpGEF6ZG~&}?EbI+~Cm%3w*euah`1%WkWY$`v9hSYK#Khl(0{ zk3RVFJJ&r<*7*Pt0RRECJ4$79b7^HDQ*>csY-J!)Wo%_(b7de)WqBYxWMyJ$VQwvQ zWo%_(b7eqmX>)XQE@Wk5X<=?IZ*pfoi2^+Y69EVSCj|mh4`5gV8v_Li4+)$A1q%rX z2LlBa2nq=c1r`DW0RRFX0Rk6*0162Z%lOv)QH~ek^M()qcq}Rwu~k+21K&TyeH132 zgPeNjEzpwU`&w45LA2>-C0Q$#;%b5-S}paJo!=a7(nX3YZzdYG#Ylh8=JdHyB(s5M z1Qye44DK@Of4TtOa`IAoaDl!tLL+O@Yu$^si|z!OH7 z8KE0#wpt%{_HmuRj7cjr3Yw`MeA|p-w zk}TxSMkawo^9d2{@ft&=itzw{D`!+gth6rBHn*zOa7AMC@BTIF;c8v?DpdH2^&1nV z_-BSHMyJYLH1v+*Sx55AjCGMfe7>b)z_XCDXp&vT+#hW0EkUrp=l8;o zLw$hfy8gOu+z=x7(1z(Ky(#c&0kEP+H{+PHWF9$yR4Br6+nSLgKRxyq*fEmzi*@5{ z)4LlPKWJ(haasmZhizQ1htTfGkPm)wdRuL-cvcUf#B;kxpo%%*afTcyz<-bcJQu5At&K4K-6$_f6OY;`yG%u#+56w_I z9qZPt%)B0mbH(ZN-C&Nw^_r{3EUAYgcwBDEWvg}OR)yUS;p1)PGx-4yF3zSl(&X*r zcV5opB@2#`fTk^tl6_iF<9lkAj4@ln3|!AEKlSn?3$5Sf1w9sXoq$70CJn#BuCo-v z4gpS!XQd`AvaVR

NDIa6%DU$^egZIJpwE^=AzNW1;};T3z#{8n)rQrIl>|VeY#* z(3i-(KL4fZn~VMIoO7V(n?3Lo!x4IJk|KSOmy8rTBpZB>>3 zzN6~xbJK=;ml|5#kqF2#N49V)g6$ZqnkL1bZN$X69s#I=T+tY`9!nSfHMC@adM+m( zw3vO#^Vne#bZ&UzoN8Mlg!^v5l!=y#_5i`p>iw`x9=2MFQb;2j~^HJoMz@W z_k>a>z}R#c*Kg6ehfAtk(OBp4Yy&4prb>qzICB-z@`@Ir$Ely;CHl8D9CSspMjNW? zU<|kDNdwJN_PH;u?V3M>RFLXma%J`U%2Gx)65x2bD2nP)YHuCvE7sQ}<_=b0pSM-} z<6o=$JCA$9)T;Wp@4GR)J?$p=Y0Ot&R-7HZ^{88&z2`Zw#tPZFd+OX=6UrD*U?5$1 z4=Nc95ChhwwY zOsAU_uFr(S$_3wscVm-z@^*=u1EWLlO9gTN41 znXGekz(JbcHt|}w=%57}>1-4Z1Ns_|jdH3x4%3Wms<9jtht}v+Zowfe(2+9aVCDCU#Bahp`nlJhfxkFhZZ`ET--hI9=%^=7>X}fsre1RI1UGFXfwh|6;#7fWHcm2pn0u2is&`Sa0ssJs z0vrSo0SEvF1p-t8Bzyo02@u83UBbme%~@vJ5CETM=LLVwTt6)0=uc5-du_}Oybhg7$* z#qHZEY<@#R&2Wy3P?s|ED9;C57GiDABQb}&ySKyu+h(6jo+ zm;x+w3k!guT3k19579YzFcCh*`po3%R)t|>jP~PIy}f9cL8`#PG*>n+D6FvDC)@O6 zTk@bu$A8TYkT;&+JqTZHR~t~K=_8Lr@+Gm8UMpdD)!tXrf9>DQor~!!qk?s&dT0$ua=>~@eX&8h7hEeHGNokN6N~H$|q@}xa=toJ3 zw4}hw+qY-;>>qHy_ndn^_x{dJ2NL6`doYe*fdLzS_CkcoZilzk$!7{y>uNu>hu&sq zw5jk~A4OU1`iJmx>Oqv=$fBF=9&EPQQa%ImVcO{S^^1IHDcy_KXvIXn$_(l3jz?>F z)ogC?naO5KIpZoqYU#$pMyp1ca0ykL6;nAww&G-lf3_)VU}W+1W}n!lgBYGOI39OV zP)6`pob;Ho1~t#(wU6wPuK~3j zpi1XPNKg@Z3LXuLW%18dmt-7v#(%Ml%tDi@3z)JS^(ffDeT=u`UzR7{;(kjCCuR;B z{Kb^NrCBWz8w^H!O;L0}MR1-bU3t3kg6CEI>=hS-4#}mX;-yMVRJ2}M{UF?%3H%+w z?`|Az(&4S63#2|}@N>J3U5|7d;dhLPaieEcl9{@$Oyvx8H&}3&tr{@uiwy|hmGU6J z*=ZXpqHSCv#Ka0ok2;5YWav+bhS#I9mTAcvL#EUMYt^xMBV2BL$Af8V)2p|^dP?$Zlnyn}EBT+s9es{MwwzgijT+EVo2v=uIcZ4lm#^&$Ud@gW%=}4dy&V4K( zfD=fEjY~kn5fK1n!~#+U-~!b>n3i$x5rFWqaUXyP2=C!i0Y?KjpD}1c09sytwdXIwTo=~+ znjt;2`0WAWD?Bx^kh}5qU+w4<1_jsjQ_O4b*9yW<%==awc8t!31jgdZP7ab9Do)5ASxUKgUD7Prf54AaS&Q!!;LI1si4?B{d-b;8A(WvL6u*- zpk{{~F5z)L;>Ii_$G0J`_d4~vZa5rKAG#6We})er6(+E;iYWJLIbiTSHdN8 z?IVJpcr=~!sJ2l`l3H2)X#paEe`0?;3j7`8#iw;g!2ft=p>;qYT*dkM?OpBp>@8t1 zTRS^G8(V%?7bmE-Cm+HCakuR}<%mfo2S=xc5*RQ}_G}~~)nnuL5H`fbMNimm1TTh5 zs(syve`1;3HqDcvw8_I;TmE4CE5UT)qq)y{#0fOc`M>AO7dqlyem#mt>H=F(LiqQMbWhAq-P{V0hd;&kn;`}{cEh|5{Mr~Zw z+ne>t-O$}+7qYXhsT=0xGI@+Em7wI0NG%7cSKxg#%U|*8gEEuDK~_l~46VP>!N2Ne zP4W4qx^7Yy1M#eQvzY2z?e*l=2ucP#K|-VnHZkw^*o1+HJiiok(Qh=Vw_zKlDf4Q6 zbkz?1Z-F!1K26i)NDg5s?Pp4)|Jztnvob7T$ zqzPR|1U35m<6q7kFHTyEQnML*HLfq(avcw;&T@#)0sz>zw&37NV0h;V?_Rps=*vhM zr*6n*KgghH^N5JusF-QZN7u(@fUkB-XyKGk0xE%*oAw@u!;{=|(2Qh!+HzDQKB(7- z#7mDI;&gI@B9^nHq+{*!nR&`cMcsaf>3?CevEB(04s8I9?&7mKy$2wJ$EMF%jM0b3 z%KQ8pYsvY&nV!l3@2ReqnMh5KF_{aKaREtQ|a+UL?j#uBRV*>UX!bx>*2O&D^;lE;)~fMNWX;- zbjzoT?`n>S10`poktL$)ehW@ftw)%o*s`3d=MQ%Y#uVsaef@29gpn>{W^EP|Rvnz! zT0Y&<)I7Nlu6jV6z`{;0YoE`4Mb%vXDqkVe9bHmQT3-ekY*atN#cKvgN}577GOe%1 zLr#`Yl$zwhGgCtOAgtV-5A7ij1LJQ-ZgvTRa%|)-0*E49lCw1rtIZlKEF>e}QeCw)V;_F>J2Kql%HVBPYit?AH%vso$LF{HY;(czX9#p^dNG6z=Q}{q$ zR2aTp83eRC|~Q++WS~~!qNU?dvV#Wm5{5k0BG47JSGQ|eSyYz_0CjRcL$ZsgQnlg{*!bs<`#6MqxI z`X3?&4tGS%`>z1`>h~#MSfq6Lognx8%0wS8@vP>nT!hb=hiwTP%0?F{?FRTje zZnR)8CW5>Q*;d}x<2qKDRw0Uel1i&ywM}O|Z==)f8{k6Y^3Gy45>de9#jnp^He0r| zy%W5Z=(}h%ImkE+|LODN|8Jy;=-mn7Qz4cCGeeY$j(}|T1u>aLGHd097xPtd8h_F7 zqj_NfWP+aG>ZQnN7h;7c&QHXuh1?9Vgiqv@5} z_1L`})mRkVn$H2qvB&4t!rruqA$`3<#);yb?tt9C|KHpF&kQr|yoN`CIpPIR_;h2Dmy^Xu zh7}dRvydPbdg>jzr}L|#LT?N#Q+3HYscC)%Vv;PC9VoAR+}V9B{EDBaWUX9>B);z0 z@+-q*Y6+K04-bS!!$YQo%t%<*6&#OVDC`Vy(%IOdrZZ8I;MBsISV~} z7m+~kD)0>teoy_8GR%^~bdOv9;1YW;)VxcbZ6oZ{NQuyV#Qh6Qj9U&_7+YkD{nUYS zi@|r)IM8*Zf<|WfOi_5hn(J&$B-b=~t&^2sJcy$*{P_JZpTi5L`?Ksw^=_WD)t~+oO<5voS`nGAIi5}E>I+mC*#ct+2kiULp!Ui!furX zK<+rT)ZBoD8|=?`a($hdGauixf10lFQXnDP&$fRbR&>!+Uw0c}=|WdUzeSYqyg~eU zhIX0gA};2j_$ z3vyC`G4N&>$j}RPIEmrY|HfplFgAR^{+x(Pp;67AKjJ%OKKM8uT-L|OuDiN`7J5pH zGGK~2wGdNe=JOqNH(ZZX+@_M)5?}d*hK2=`Hct6!)Y(&Q0c>Q0?B_mE`vA8zDi z|GfX}=XXMUV-_PjM`Anbd;vNBLA6@cH0Fwx5<#=&QM@&Wlt$}-9KQ>m&4PqFoH_rW zc=dG`urprlzXww!kRFHpKf`2w_b#@>WpgWVOd9Ey$6yi}6^ zv2my#&CuU3=C*P{acLqhXr1krp8*vF+LzP?h}vP%U6$5dY_RGJGBq2&W*%G1%TCZp zfbIChP&{E}sW|B>>*vnV^>uv0?}!(Q+t;)6c)TwLc(_0a0_RLp$%u9}c|9SPJVY*> z6W=`ij044Rl{aR&T_OLeC5UzsG`dN2xR-ZJ>g`!uc59JLf4P$v^DNoZrkP7!a0;S z+I7+>?E04vH?fUo-zKVVKb}~t7bEzY)@O3;7-L|sP4xZUsZfQGJ2IByrrzj`5C5mL z%?A-xcf&Is{fCSW8BX{|Zt>jd1ajz zLi0gSJh&S1Z2#1)FDJb(ucoX$46!lWT-FDZWN{N<9Nj(#T`7Bn>yersPtMY$)Vx&L zz7S@dkbSSyWnf*Xll7hM(42A@pom)+?~7^OKJc&hM!pD8D*(v`3>bV@*)tAH+R;rP zbhDty(+R?>T9Jl+U&jPknI7J+tpusNOO%fDa$WOx&}jYny1lN7>7pV^^qRtMZCK8n hWJ&NSaK)HZT~m7e*wg^b?E>A literal 0 HcmV?d00001 diff --git a/apt/trusted.gpg.d/debian-archive-squeeze-stable.gpg b/apt/trusted.gpg.d/debian-archive-squeeze-stable.gpg new file mode 100644 index 0000000000000000000000000000000000000000..ca93dba3f6f562562c6ff0598709dde9f47df40f GIT binary patch literal 2853 zcmV+=3)=LV0u2OAT&C>-5CF}=NzghcKfx8X>VUUhZUoau3uZrD!#Vqw*j;?34=;pV z@Es12&?^8!*a}MdB0z?Kz$vdZKvsx@Iscp zAcwJI6P3M$ISNF%oS?ZNTBNb4M7q_{fInR(>t0$ceYyRNcwl@XIC6!kt_Ec4ckATG zG18tfCj}aj2o*$&16S+7iIJZ-TLI5naj?V*S-IDDxuZ&Exa;h9Z9Q3;@OB{^%po#;!By+~$MqX@D*v+3dZFXAy z!AwEKE?XJ8cGNAsS6#cSl*^H}UNXe@_w?-Ym=~=4SMK*9rSz`&W!4)S?k7pc$B44A zqkzEWuFAAe)2uoM4Iz*5^<~@`#TIc)JY_AXn#DzS!-Z#K+7YHu#q7Hw526#Elw^pH z98G@@WgOvA_RsF4zId`JJ{WLZUR8M_Nqlhi-|E51ljLe(c97&=nzwUWMRcz2I_0!k ztq^fPB|Z^Xi9eT3xuSSj)zzGmk+!;rBvS~IzkiD*xCF2+5scT6&NSgc@;*&e*GvM) ze?9gDFWpc0K!*Sk0RRECJX3LXWo3G0AX9W9~I~ax#m_SwD{Np7tj2T3%y6IOzMl;>N$lRt}wlEy^cnMawvFTjl@J(P7E#bcL z%&%%+2U@Sig$u~;$#QW%^?9hJ!*xTEQfz4@&aoxccF_|U5fPg2-Aw{lFz|Y5-L;$= zRW5~;XIXliR<(;}d@bi|T*#4?$U|&47BL9#bSnUy!md1XlB2(vZe}jJ4>XB(qNT$( zi5^GOqA<_~?bvPf1_P-;#Pi2zs#ePHDVnmaR$ZIeHiK0~l4r@NR~!JCirkF8h5s^T zYyAXcxW0X8&)#xI#nhx!yZ%gPcceT32H3%S00ecZOlRWQ!S95IM0B$Eo6KuSWQZo9 zJ9F>&@u*`@r$1w~Boi1=i)nk%+-JkuK`dbL)6t~{PFwjhPIh3LM*mnloVq71YjsOF zk4!ufBuc=-l!xBM={1*fNudc5Cd1SqJ;|#g`)X$sxISdH0SpgpzDL(7C7KAnTDPuA z=m6YwuIR z5KzNoO*$zY`OV26|5=sVLav*JQsYJp`A7O~yJYl!b9c=~>3J;3ikk}7v%Z6`eN|@h zx3)g3yDj?JH>ric=*Qz{Fx!Z`yng?4!Aj2Kg=}1P-LHcv}XT$#FI9s>*!S zayK$}r;8q5Q#jHsKdq?bL_pXz-d}sRry0od>tL&jwAXn2=>r|J7fH4Z2k`2~T5R=} z1*lc*L^3(d1A%r@oKfCT~p+0f$N-yUO=~XA3#i1s< z-n_a@GijcJF5vr-%|Qqh-^eOrf6ZiYf)w@*Mp5aN8xh zn1AK?T0>q0GNb`TA;GnGeOG(Pi)?^}nt6w1W5;IHD zsKb2Re9lnfB*pkhyHya&Xgj~!p*p=)IGG2_*aju9v=zr1vAD51iZCv}aIv`A#Rx!JcT)TjTI(W;i!WziHVyBQZQR1dwY{#1uS%LqjOw9WeE~4d_hfC6q&kkP1 z{4{92X?-}>)WM}vDdPJ^2aqB{OR;eCdZP?aW(sX6rV5A`9Zpu21JgWO*X7ukA<;3D za_E$(jS0#UFmo#la3(WrIfcAe%JPX6HZRB+t2V~rFp4ygS z7z(D%Zw`O5yTb(f_CAy1KQC|^XCjuLbV;66WfPz;Kt;B_i^wHGpHK{8<@u2jX3YBM z6z|D*HeFBogXWvpE0(v^8DtBe_#d6=88W)c61^5-R7g<>n{7fz-k3KxZQzP1A6IGA zhqr+hL?T?oR-P@lqN5d}NAYDRO9Kd>)Ua`13Jl{h`ayBvXUL_lKdHlZPeo-=SW-o5c#fH4M*wMO02A~8>$ch0z zu95G_3BJ=*)flrSimsyU7Z761?IQXe1n@ibL@g^)0brp5ya*D{%&C2oth-&S=DhM_ z!u8z!ZPV&P(71iwZdn%C+q+pTycp?qEGLY^LPaJ97$S}I(&`%Y#U8^xj4s2V;;;e$ z0Ek8e5D^Ff1_c64T*QBUTWK-2%q8pf&WNI?3}D%b2{$yhtx+zo$vnC+n9e~ zshg(pP^X=n~-Ux zA^QmEaCObiL$Qbk!*ZLlUZHU5TUD_&#byibxDaBKESII#ko*qPahq7MqFkI`0Y6Ro zZVO67deLq7{D~dOz32p7M*Q*tc~rhA#GzN-c(S=Qu_u%Bs|)aUGj-Isa!e!2CpjUU z;8WcU(Py`*qyf0&XIv+7YGAJH|C!l?5rTSjaJEh5<_JagcYT~^Q#w3|tkprkDaM#a$U+%I)xbNGH=H10?Z*z3T8P zD)IijWBuRaMi+wIU0!QT64HxPvK#e2&+vSbz`u*xgDqwnxl5?nmJ9xNn2|Cy<3$Xw ztMKF8)<9)cK<>5{4Mu3f@!rb}hIvtKgI+NY1M~$ww!%yJdzR^c4}Mo~G45eW)t;2<7c$07 zUrq@>!5^!}wD%$)C>QQtItL}YO479J_SnTL-_S3%Y9v)aUZr!$RYEaF-7D~P6Fn>at0cBJ(;jxh)j+b=oLrY6;Ht=Q@ zjEab(QTg{P+Gizk@Iat1OXYcQuD9k4y~|t>486J-J%28({Tl4>($;8 z9$;zcf@iW}18L*}4;uV^Yv2_@3-=3p4B=Aq{nAN2;K_^BJ)mQyCCIKaPI2H>`0PUt zuG+)HmbRwJa9Mg8%4xDEbj?rSuLx~#229#CfZQPdfWN#$aAI&SU*x^(^S{-1(4Z4* z`RY?u)VNgv$O!-u0RRECNJM2~X<=?4L2_egX?A5GL3MO*ZDDk2V<1y$XKrb3XCO;u zc_1h^E-){5Xk}%3c_|<~W^{0EVRLk4azJEdVrgM+E^l&YK8XT81QP)W04N0lPnzzv z0viJb2@eUJ00s*Q2nPcK1{DYb2?`4Y76JnS0v-VZ7k~f?2@s1&tzt%!Ra12V5CFo$ zn8YjXEJaYZAf~qK<>R`z3qSIC2nG^C%}L&z-WQG?dqbuc|nH|@90v%Hf=NDo#K%Ko-}0+#1x(5AWHfl@%u3KG@v{K98m z&uf>AuaP)djT&@>FN&)B=zQ@JZa@m(gH%7}c9_Cj93}GWPpQm0<432z6`FrR3wsm5Q_S zuZOBW8F?59h&Td*Zx{kngrb24{_=CP2AKFQ=g+H+d>5+gL?J!+8av8{mbik1UJ|U+dIKvc}qPq^hRUa$@M1 z@jv#xWMD%Vqu0WKXG`@~zsw6(v!|rif%K)bXYU&G-}dnvDg3l}G#xB%G&wv+&7;W~o`*VrjLis^7FyKdfZfH&H&>cbQ1l+!^ z#D?pS;*c|t65*!o=$8CGWK)&qVI_Sh7>mRkLInM{W#dpaHKRRV!uXAcDe1EqdDh-) z#QsD~F^arQdqm6lOHV1~QHJ4alES@0cH0j@5kjw4G3%}mN+nrW~C00W3d1QQVg z00spDPnz=Z0162ZabDJ-etU|^I}`w%2!n_+z5Ojjuh*d*^<8w@=w7N@0G%40007t* zxQQaS>dC(Lv;KJ8ky@|<004;sMg$W92mmkz0#BOrA_p3CbaH8KXCWGBbaZe!FE3|s zXD(-9Zf<2}W-er9FK};cX=8aVba-?C3JDO~7SCI;B_+g!Mi2fe{;nqc=zXs|Z-6bG z`J;!S*Y8g#yHvsf!QE>Au4C>!j&27{hyI<<#sWuOMbtbAUN@_njhoSU?QmGM*s_zr zE5=3Yo_4eU z9oGezB64Cu8)BC!`=8l~`n17FM8Wh+?B5@=nAW$R);0Z47a-U%R1Q=bjFf##px8Ls z_d?%aCR90fOB0-o*BdBS01(F%jaiE*gq-c>;j-XOflS zEhwhleekf%Tw=|QM@bNExIjX=wfGYi7zIR@BDwrSdQvw6u5KArYXqF2j|Py4lGIjH zDgi_?#srAHeA6ZLsmj;ySYaB zzwofMQdF^9){Y>cQVV!u?N0;-;5OjP`6E8iyzii}0ssJs0UQJn0RjL91p-f-0KotX z2@qb&`v9Y^M5L0h2mfkV4*2h;{XvBgXH`2b zGZEIz0Z@N)JSy8jMQS(;r8x<=G$$UKzNOj1ihb3uEkNW%tS?G(y7uf+Uo-=cKl^LES`|MXrBq$=k~Ho^OM#+0Mj4?iB4FFXPsZ-O!3vnH{1|cGemt zF{X4~E)fL+brkt9#a0f4pq`p|s|#z5)I4~zt6i34_j}pGO-QpO{_m7#_&Bky={mUy zHG_4GzQIbEa40K)^6*^RQqI?lm<;a=9yfTRmaQ>hgcAA5K`(qKD@c)tFeVazA^@|t zpcJEy5>dmbbkVQ^004;s90U*n0ssaD0#BO*@&F165WF`cQpz0pWLAI={S}C{YNo7w zoRL?GUwhpOgq|)q?R$#(<502#Q-lRc(rJ(*^Pd)-lsB?Pwf`0sZru|zmC`O{S#tSP z>RSt&x!Cm4wz=24V{7Sdb$>2GvXoQ z6sQl^eqgp+PNmo2zjus6#P4MV;;HLqHVL;M6H3}WTV~_1VP>U3c-HuZwb{S~yZJH` zEWT4W?+*t}va`%42$~GRB-VUdzm);!kpAF)i#2a9&YD!GFdu6C5918J9$nY1B>3^_5A50DK1MJ1^ii_ zwS7b5pH7ymnY`s&a$#H42B9M!n{)}bG7 z$Si++`BAx6X}1S6d0ty7F>-!V0#|l_N10`-W|Qd8jAhVE-~sICE3BqQ8s+~45h%K) zGFH;X+Hy2fXDsJH=5~C-r_i=%dGwZzY5)grc7-jwS#M;*nc^lD4$ivExCMp6d-{#` zp)`GX1SZV~v@{ME0(ptWp~P?e(fpz+Q?Ccf_<{@!Gn^*yn}Yqf!_diMd-esUiLJRb z;ybbLTj6Py0@D=a6ZZbB)<&H6g`PT=1Y>uz)P;H)ot&#M8`h)qai$?o$rSf9X zKp>Ud>fNev?{k8)7~R<9T^f;Zy-lxQIv{W6nw|93o+2M$Hi_J!>iV&HS|w5$yI5d59lb|j6BuNv8wTK; zR6P00O#XCLzp>@z?yfzRqyp^>1w#ErwNfzzX)B=A2&hY6g6MN|lH#*tLP4inBkihL zl;OFNXLNQT){Zs4Eu6U{bQnOY7#cEngc{vDoQ;MBrD1h4s3ULM3=ji`SSSD?Y(Xvlkzc%nvhGW` zB>SeBD1de;#xb2nRUy0ELApjwsNF#jHuAwswxD~g`FO&w;0jI_HhKwBP9<l(8W#p4~Qx7V*{;h;lLa>~A zgT*jtbXO&lO2`9Wd%%Sn<4)86V)DZe{#0?A99!q$pk)H42pH;kztcIZ(Ir*eidAe= zi2XQOYRB4b7nyJsSsij|q-32p0VXIENRD|vuoe6na u=17vi5m?fI%kf%Njf!(1QZrt*xe!e6PD4i;0AXqjcP_Vf9?QzG0ssIp?)~@x literal 0 HcmV?d00001 diff --git a/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg b/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg new file mode 100644 index 0000000000000000000000000000000000000000..b8699b3ce48b85bc5f61a0c2a21bc79b68ea0c5e GIT binary patch literal 2851 zcmV+;3*7XX0u2ODsW-I&5CFO;RE{ZdnzKPbWvGEoISIx3j zid0)P&(BJMa`E61RG1F-cklN<^-EOr`;;?JApFR;{}Zm|I%DBQ$KV_n7(OQsEYSQ0 zY_VX5-fD&wLdN&B*<4>Rb%WY#IvrLne}uQrp;lSY<`_qr=$dB^RQ1n|z&<`G-0jaI)<|5lqc{MuYst*$_XA z#&@j!4U6q!%zt!ArM&3wR7P`n0VTEIGK?JROHd`snl zLS;PcM%|B0&hB98xVA4xsg@j3^moBB-&M0N31+1GIw!#G7+!UQ_>ZG+GFYi;35XLv z4>G&nX_+&3UJwFYf^9^`9Sx;A{u*nPYY>(qs=z?B=Qu!mU8hGa8U}csY-J!)Wo%_(b7de)WqBYxWMyJ$VQwvQ zWo%_(b7eqmX>)XQE@Wk5X<=?IZ*pfoi2^+Y69EVSCj|mesW-I(8v_Li4Jc@U1q%rX z2LlBa2nq=c1r`DW0RRFX0Rk6*0162ZZ?d7nW&gKi%~B8kCxZ%DIC`U|Fo5hw$1&)F zHxv1*?x!h@MIS)Sg+Zy zvc>n#4CP%~m!CO_;I+EpMYDWluVwo2q!!_uaBsAtE8TGwotYEsSi)^Eg`zG)o7RZw zAIdHFN{zfvQv~Uy0Z!xmT8bpRQZl$YQTefIuU&TdT0nW&ktiYu*pdozN4u}h+EbrW z`#B1Vf|`O4GzXz+x4)Dff{KNTNv;F_tzhMlQtfkw`$X*0taN(TnD)>C(ZM4S8g$zp z2_FS}cN5Seo9Y=?gh7B&IhEakuwFd2FQDhIM@%o+c#tYKplxlCJWyIkh++&qae6-sII1hKSuNRW%`BNs!oEJyGyG9B7=L z06N%Gxwi?uRgs66ZJxsL@744>-?777xeF}*IKr6*Gl;&8Z$t1GJ|4j3Z&NriPK&J< zI!8sQtTc~JYtgF2IF!27GNIdRRqp}VS_Wz1;Snq&TaP$PdB~E!%0A>6)QWN44`2o> z1Uv+&VxHZYL^)(#h+@Yc8M9OgLJFRt*?}8@umS)Bi2@u15CH-J1_c67trAZF3JDO! z&RxRALd{u2VGsb9=D9T*zfNpuMb}}YNacDq9yd=2va93exrCOaTQO2LOdDU^s>gc z!92f^l6cN3y?GE`jI<`Fp!K&lW_tU%Qk{H-mGi zh&kEqHTksYh9DU>mLvJA*w)Fb89~X~^ikTBd_N?C@VIX*5e+p<@IV&_I>ghRl#6|| zbEp)IEJ;Pf-nxUsY_kWTlmNU=?n8TwiWoidqt04UG40LcTaW`-gSd%5S}F9Wq= zitqTXkGU8aj|@naPJS9&FWPiUJz?w}&b8L^V!RWvK0ykHVCn3YmHRdu|fL6 zV|Af;x_T7=b-wE+&{6sKBUYZHUna2P`%b{Kg+)?P259%a@>O0^`g*(W>sFc3cB;lN zfIs)J0ssJrMg$NM2ml5J0#B(pod6065bYW{GqTUk*eDACpI}sn6J!hh0KUTb+&MD= z!VvnK_5hzv^$P$8#LvoX8X1JuV$nboAAeD>0ssJs1RMkq0RjL91p-g0IL!bG2@p`j zV@*0K9QpW|AONNx0iK3N3Yrg94L%EqyTmbxEpDu^p3(sn!CXa3_)xut0qXy9Gy|w^ zf)0Qkuk+N8m^-4G zO8n-qdRKa53obl5w6aZpg)?0m>Wv6f)|9eC7YH1or$#_b6)KZMTqMWnV5E?~iG|vP zE}#8qg3Pk0K0rzW{j48HP0_`p@Kua>N=%zyr%tr1(bLeHoqUQ`e}}avu_L{#J_JZI z2Eix3BMSRi|13F55^Ry|9X|kU=m`rEc~AEaIAkxoU-yMB9ax{f?v;g zwZjc0gU>T>XkX`^Eb$7rvB|i^E_S}z>jiTN)aSQ{G|`p}r7?vGZkuyLb}`yPdX~mv zaScYjE=P8@htt=V%-*t5vY^PN*b&pb{-lL2%HJQ1AJ}_Eo_fwQ&Wt%o@C8?} zkbQ9zRHkC%AnF_E5NryRKy5GgSxOaEc}d9}0;ezq?;Xcg~2;e_)SKoa?R zAiS#Oa=XK!8JTh)Ff2o1zXow^^L-eQa=59#iygVJANmNzc~D}T4Hsb0Kqw)~b#?D_ zb5*SQ;a$^*ew_a)vIC-paX~yPjGML%%#F9U7iyRgXPr!fk{Ro!CsCRvH9X%5>FnB@ zUwV96PT@V%Q8J&VO>LOPa!V(?0QwG)r$k|_CqooRZ0@8032;CEUlDL~2~QRYeP3!y z?0>FC6IBZ+PvTeWKQ`ZkxTrzfZ;@Qwp^2OJ0kb5nzHF*RrqnE74R1j~Jm2n$jHuUF z{5B9~^4GoDwQe$%Me@zK+Y&@P&2 + return 127 + fi + } +fi diff --git a/bash_completion b/bash_completion new file mode 100644 index 0000000..41ffe59 --- /dev/null +++ b/bash_completion @@ -0,0 +1 @@ +. /usr/share/bash-completion/bash_completion diff --git a/bash_completion.d/debconf b/bash_completion.d/debconf new file mode 100644 index 0000000..1880689 --- /dev/null +++ b/bash_completion.d/debconf @@ -0,0 +1,12 @@ +have debconf-show && +_debconf_show() +{ + local cur + + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + COMPREPLY=($( compgen -W '--listowners --listdbs --db=' -- $cur ) \ + $( apt-cache pkgnames -- $cur ) ) +} +complete -F _debconf_show debconf-show + diff --git a/bash_completion.d/git-prompt b/bash_completion.d/git-prompt new file mode 100644 index 0000000..8b5852a --- /dev/null +++ b/bash_completion.d/git-prompt @@ -0,0 +1,11 @@ +# In git versions < 1.7.12, this shell library was part of the +# git completion script. +# +# Some users rely on the __git_ps1 function becoming available +# when bash-completion is loaded. Continue to load this library +# at bash-completion startup for now, to ease the transition to a +# world order where the prompt function is requested separately. +# +if [[ -e /usr/lib/git-core/git-sh-prompt ]]; then + . /usr/lib/git-core/git-sh-prompt +fi diff --git a/bash_completion.d/grub b/bash_completion.d/grub new file mode 100644 index 0000000..29a5963 --- /dev/null +++ b/bash_completion.d/grub @@ -0,0 +1,495 @@ +# +# Bash completion for grub +# +# Copyright (C) 2010 Free Software Foundation, Inc. +# +# GRUB is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# GRUB is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GRUB. If not, see . +# bash completion for grub + +__grub_dir() { + local i c=1 boot_dir + + for (( c=1; c <= ${#COMP_WORDS[@]}; c++ )); do + i="${COMP_WORDS[c]}" + case "$i" in + --boot-directory) + c=$((++c)) + i="${COMP_WORDS[c]}" + boot_dir="${i##*=}"; + break + ;; + esac + done + boot_dir=${boot_dir-/boot} + echo "${boot_dir%/}/grub" +} + + +# This function generates completion reply with compgen +# - arg: accepts 1, 2, 3, or 4 arguments +# $1 wordlist separate by space, tab or newline +# $2 (optional) prefix to add +# $3 (optional) current word to complete +# $4 (optional) suffix to add +__grubcomp () { + local cur="${COMP_WORDS[COMP_CWORD]}" + if [ $# -gt 2 ]; then + cur="$3" + fi + case "$cur" in + --*=) + COMPREPLY=() + ;; + *) + local IFS=' '$'\t'$'\n' + COMPREPLY=($(compgen -P "${2-}" -W "${1-}" -S "${4-}" -- "$cur")) + ;; + esac +} + +# Function that return long options from the help of the command +# - arg: $1 (optional) command to get the long options from +__grub_get_options_from_help () { + local prog + + if [ $# -ge 1 ]; then + prog="$1" + else + prog="${COMP_WORDS[0]}" + fi + + local i IFS=" "$'\t'$'\n' + for i in $(LC_ALL=C $prog --help) + do + case $i in + --*) echo "${i%=*}";; + esac + done +} + +# Function that return long options from the usage of the command +# - arg: $1 (optional) command to get the long options from +__grub_get_options_from_usage () { + local prog + + if [ $# -ge 1 ]; then + prog="$1" + else + prog="${COMP_WORDS[0]}" + fi + + local i IFS=" "$'\t'$'\n' + for i in $(LC_ALL=C $prog --usage) + do + case $i in + \[--*\]) i=${i#[} # Remove leading [ + echo ${i%%?(=*)]} # Remove optional value and trailing ] + ;; + esac + done +} + +__grub_get_last_option () { + local i + for (( i=$COMP_CWORD-1; i > 0; i-- )); do + if [[ "${COMP_WORDS[i]}" == -* ]]; then + echo "${COMP_WORDS[i]}" + break; + fi + done +} + +__grub_list_menuentries () { + local cur="${COMP_WORDS[COMP_CWORD]}" + local config_file=$(__grub_dir)/grub.cfg + + if [ -f "$config_file" ];then + local IFS=$'\n' + COMPREPLY=( $(compgen \ + -W "$( awk -F "[\"']" '/menuentry/ { print $2 }' $config_file )" \ + -- "$cur" )) #'# Help emacs syntax highlighting + fi +} + +__grub_list_modules () { + local grub_dir=$(__grub_dir) + local IFS=$'\n' + COMPREPLY=( $( compgen -f -X '!*/*.mod' -- "${grub_dir}/$cur" | { + while read -r tmp; do + [ -n $tmp ] && { + tmp=${tmp##*/} + printf '%s\n' ${tmp%.mod} + } + done + } + )) +} + +# +# grub-set-default & grub-reboot +# +_grub_set_entry () { + local cur prev split=false + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + + _split_longopt && split=true + + case "$prev" in + --boot-directory) + _filedir -d + return + ;; + esac + + $split && return 0 + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + # Default complete with a menuentry + __grub_list_menuentries + fi +} + +__grub_set_default_program="grub-set-default" +have ${__grub_set_default_program} && \ + complete -F _grub_set_entry -o filenames ${__grub_set_default_program} +unset __grub_set_default_program + +__grub_reboot_program="grub-reboot" +have ${__grub_reboot_program} && \ + complete -F _grub_set_entry -o filenames ${__grub_reboot_program} +unset __grub_reboot_program + + +# +# grub-editenv +# +_grub_editenv () { + local cur prev + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + + case "$prev" in + create|list|set|unset) + COMPREPLY=( "" ) + return + ;; + esac + + __grubcomp "$(__grub_get_options_from_help) + create list set unset" +} + +__grub_editenv_program="grub-editenv" +have ${__grub_editenv_program} && \ + complete -F _grub_editenv -o filenames ${__grub_editenv_program} +unset __grub_editenv_program + + +# +# grub-mkconfig +# +_grub_mkconfig () { + local cur prev + + COMPREPLY=() + cur=`_get_cword` + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + _filedir + fi +} +__grub_mkconfig_program="grub-mkconfig" +have ${__grub_mkconfig_program} && \ + complete -F _grub_mkconfig -o filenames ${__grub_mkconfig_program} +unset __grub_mkconfig_program + + +# +# grub-setup +# +_grub_setup () { + local cur prev split=false + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + + _split_longopt && split=true + + case "$prev" in + -d|--directory) + _filedir -d + return + ;; + esac + + $split && return 0 + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + # Default complete with a filename + _filedir + fi +} + +__grub_bios_setup_program="grub-bios-setup" +have ${__grub_bios_setup_program} && \ + complete -F _grub_setup -o filenames ${__grub_bios_setup_program} +unset __grub_bios_setup_program + +__grub_sparc64_setup_program="grub-sparc64-setup" +have ${__grub_sparc64_setup_program} && \ + complete -F _grub_setup -o filenames ${__grub_sparc64_setup_program} +unset __grub_sparc64_setup_program + + +# +# grub-install +# +_grub_install () { + local cur prev last split=false + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + last=$(__grub_get_last_option) + + _split_longopt && split=true + + case "$prev" in + --boot-directory) + _filedir -d + return + ;; + --disk-module) + __grubcomp "biosdisk ata" + return + ;; + esac + + $split && return 0 + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + case "$last" in + --modules) + __grub_list_modules + return + ;; + esac + + # Default complete with a filename + _filedir + fi +} +__grub_install_program="grub-install" +have ${__grub_install_program} && \ + complete -F _grub_install -o filenames ${__grub_install_program} +unset __grub_install_program + + +# +# grub-mkfont +# +_grub_mkfont () { + local cur + + COMPREPLY=() + cur=`_get_cword` + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + # Default complete with a filename + _filedir + fi +} +__grub_mkfont_program="grub-mkfont" +have ${__grub_mkfont_program} && \ + complete -F _grub_mkfont -o filenames ${__grub_mkfont_program} +unset __grub_mkfont_program + + +# +# grub-mkrescue +# +_grub_mkrescue () { + local cur prev last + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + last=$(__grub_get_last_option) + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + case "$last" in + --modules) + __grub_list_modules + return + ;; + esac + + # Default complete with a filename + _filedir + fi +} +__grub_mkrescue_program="grub-mkrescue" +have ${__grub_mkrescue_program} && \ + complete -F _grub_mkrescue -o filenames ${__grub_mkrescue_program} +unset __grub_mkrescue_program + + +# +# grub-mkimage +# +_grub_mkimage () { + local cur prev split=false + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + + _split_longopt && split=true + + case "$prev" in + -d|--directory|-p|--prefix) + _filedir -d + return + ;; + -O|--format) + # Get available format from help + local prog=${COMP_WORDS[0]} + __grubcomp "$(LC_ALL=C $prog --help | \ + awk -F ":" '/available formats/ { print $2 }' | \ + sed 's/, / /g')" + return + ;; + esac + + $split && return 0 + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + # Default complete with a filename + _filedir + fi +} +__grub_mkimage_program="grub-mkimage" +have ${__grub_mkimage_program} && \ + complete -F _grub_mkimage -o filenames ${__grub_mkimage_program} +unset __grub_mkimage_program + + +# +# grub-mkpasswd-pbkdf2 +# +_grub_mkpasswd_pbkdf2 () { + local cur + + COMPREPLY=() + cur=`_get_cword` + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + # Default complete with a filename + _filedir + fi +} +__grub_mkpasswd_pbkdf2_program="grub-mkpasswd-pbkdf2" +have ${__grub_mkpasswd_pbkdf2_program} && \ + complete -F _grub_mkpasswd_pbkdf2 -o filenames ${__grub_mkpasswd_pbkdf2_program} +unset __grub_mkpasswd_pbkdf2_program + + +# +# grub-probe +# +_grub_probe () { + local cur prev split=false + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + + _split_longopt && split=true + + case "$prev" in + -t|--target) + # Get target type from help + local prog=${COMP_WORDS[0]} + __grubcomp "$(LC_ALL=C $prog --help | \ + awk -F "[()]" '/--target=/ { print $2 }' | \ + sed 's/|/ /g')" + return + ;; + esac + + $split && return 0 + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + # Default complete with a filename + _filedir + fi +} +__grub_probe_program="grub-probe" +have ${__grub_probe_program} && \ + complete -F _grub_probe -o filenames ${__grub_probe_program} +unset __grub_probe_program + + +# +# grub-script-check +# +_grub_script_check () { + local cur + + COMPREPLY=() + cur=`_get_cword` + + if [[ "$cur" == -* ]]; then + __grubcomp "$(__grub_get_options_from_help)" + else + # Default complete with a filename + _filedir + fi +} +__grub_script_check_program="grub-script-check" +have ${__grub_script_check_program} && \ + complete -F _grub_script_check -o filenames ${__grub_script_check_program} + + +# Local variables: +# mode: shell-script +# sh-basic-offset: 4 +# sh-indent-comment: t +# indent-tabs-mode: nil +# End: +# ex: ts=4 sw=4 et filetype=sh diff --git a/bash_completion.d/initramfs-tools b/bash_completion.d/initramfs-tools new file mode 100644 index 0000000..a52074f --- /dev/null +++ b/bash_completion.d/initramfs-tools @@ -0,0 +1,26 @@ +# update-initramfs(8) completion + +_update_initramfs() +{ + local cur prev valid_options + + # TODO: this can be "_get_comp_words_by_ref cur prev" once + # bash-completion >= 1.2 is available, see #537139 + cur=$(_get_cword) + prev=${COMP_WORDS[COMP_CWORD-1]} + + # The only option that takes an argument is -k + if [[ "$prev" == '-k' ]]; then + # Complete with kernel versions + _kernel_versions + COMPREPLY=( $( compgen -W '${COMPREPLY[@]} all' -- "$cur" ) ) + return; + fi + + # Complete with available options (obtained from -h) + valid_options=$( update-initramfs -h 2>&1 | \ + sed -e '/^ -/!d;s/^ \(-\w\+\).*/\1/' ) + COMPREPLY=( $( compgen -W "$valid_options" -- $cur ) ) +} + +complete -F _update_initramfs update-initramfs diff --git a/bash_completion.d/insserv b/bash_completion.d/insserv new file mode 100644 index 0000000..68c0ef3 --- /dev/null +++ b/bash_completion.d/insserv @@ -0,0 +1,36 @@ +# insserv(8) completion +# +# Copyright (c) 2009 Kel Modderman +# + +have insserv && +_insserv() +{ + local cur prev sysvdir services options + + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + + [ -d /etc/rc.d/init.d ] && sysvdir=/etc/rc.d/init.d \ + || sysvdir=/etc/init.d + + services=( $(echo $sysvdir/!(README*|*.dpkg*|*.rpm@(orig|new|save))) ) + services=( ${services[@]#$sysvdir/} ) + options=( -c --config -d -f -n -o --override -p --path -r -v ) + + case "$prev" in + -c|--config) + _filedir + ;; + -o|--override|-p|--path) + _filedir -d + ;; + *) + COMPREPLY=( $( compgen -W '${options[@]} ${services[@]}' -- \ + $cur ) ) + ;; + esac + + return 0 +} && +complete -F _insserv insserv diff --git a/bash_completion.d/whiptail b/bash_completion.d/whiptail new file mode 100644 index 0000000..6826e56 --- /dev/null +++ b/bash_completion.d/whiptail @@ -0,0 +1,6 @@ +complete -W "--msgbox --yesno --infobox --inputbox --passwordbox --textbox --menu --checklist \ + --radiochecklist --gauge --clear --defaultno --default-item \ + --fb --nocancel --yes-button --no-button --ok-button \ + --cancel-button -noitem --separate-output --output-fd \ + --title --backtitle -scrolltext --toplefti \ + --help" -f whiptail diff --git a/bindresvport.blacklist b/bindresvport.blacklist new file mode 100644 index 0000000..1dc056e --- /dev/null +++ b/bindresvport.blacklist @@ -0,0 +1,15 @@ +# +# This file contains a list of port numbers between 600 and 1024, +# which should not be used by bindresvport. bindresvport is mostly +# called by RPC services. This mostly solves the problem, that a +# RPC service uses a well known port of another service. +# +631 # cups +636 # ldaps +655 # tinc +774 # rpasswd +783 # spamd +873 # rsync +921 # lwresd +993 # imaps +995 # pops diff --git a/ca-certificates.conf b/ca-certificates.conf new file mode 100644 index 0000000..9e08541 --- /dev/null +++ b/ca-certificates.conf @@ -0,0 +1,184 @@ +# This file lists certificates that you wish to use or to ignore to be +# installed in /etc/ssl/certs. +# update-ca-certificates(8) will update /etc/ssl/certs by reading this file. +# +# This is autogenerated by dpkg-reconfigure ca-certificates. +# Certificates should be installed under /usr/share/ca-certificates +# and files with extension '.crt' is recognized as available certs. +# +# line begins with # is comment. +# line begins with ! is certificate filename to be deselected. +# +mozilla/ACCVRAIZ1.crt +mozilla/ACEDICOM_Root.crt +mozilla/AC_Raíz_Certicámara_S.A..crt +mozilla/Actalis_Authentication_Root_CA.crt +mozilla/AddTrust_External_Root.crt +mozilla/AddTrust_Low-Value_Services_Root.crt +mozilla/AddTrust_Public_Services_Root.crt +mozilla/AddTrust_Qualified_Certificates_Root.crt +mozilla/AffirmTrust_Commercial.crt +mozilla/AffirmTrust_Networking.crt +mozilla/AffirmTrust_Premium.crt +mozilla/AffirmTrust_Premium_ECC.crt +mozilla/America_Online_Root_Certification_Authority_1.crt +mozilla/America_Online_Root_Certification_Authority_2.crt +mozilla/ApplicationCA_-_Japanese_Government.crt +mozilla/Atos_TrustedRoot_2011.crt +mozilla/A-Trust-nQual-03.crt +mozilla/Autoridad_de_Certificacion_Firmaprofesional_CIF_A62634068.crt +mozilla/Baltimore_CyberTrust_Root.crt +mozilla/Buypass_Class_2_CA_1.crt +mozilla/Buypass_Class_2_Root_CA.crt +mozilla/Buypass_Class_3_CA_1.crt +mozilla/Buypass_Class_3_Root_CA.crt +mozilla/CA_Disig.crt +mozilla/CA_Disig_Root_R1.crt +mozilla/CA_Disig_Root_R2.crt +mozilla/Camerfirma_Chambers_of_Commerce_Root.crt +mozilla/Camerfirma_Global_Chambersign_Root.crt +mozilla/Certigna.crt +mozilla/Certinomis_-_Autorité_Racine.crt +mozilla/Certplus_Class_2_Primary_CA.crt +mozilla/certSIGN_ROOT_CA.crt +mozilla/Certum_Root_CA.crt +mozilla/Certum_Trusted_Network_CA.crt +mozilla/Chambers_of_Commerce_Root_-_2008.crt +mozilla/China_Internet_Network_Information_Center_EV_Certificates_Root.crt +mozilla/CNNIC_ROOT.crt +mozilla/Comodo_AAA_Services_root.crt +mozilla/COMODO_Certification_Authority.crt +mozilla/COMODO_ECC_Certification_Authority.crt +mozilla/Comodo_Secure_Services_root.crt +mozilla/Comodo_Trusted_Services_root.crt +mozilla/ComSign_CA.crt +mozilla/ComSign_Secured_CA.crt +mozilla/Cybertrust_Global_Root.crt +mozilla/Deutsche_Telekom_Root_CA_2.crt +mozilla/DigiCert_Assured_ID_Root_CA.crt +mozilla/DigiCert_Assured_ID_Root_G2.crt +mozilla/DigiCert_Assured_ID_Root_G3.crt +mozilla/DigiCert_Global_Root_CA.crt +mozilla/DigiCert_Global_Root_G2.crt +mozilla/DigiCert_Global_Root_G3.crt +mozilla/DigiCert_High_Assurance_EV_Root_CA.crt +mozilla/DigiCert_Trusted_Root_G4.crt +mozilla/Digital_Signature_Trust_Co._Global_CA_1.crt +mozilla/Digital_Signature_Trust_Co._Global_CA_3.crt +mozilla/DST_ACES_CA_X6.crt +mozilla/DST_Root_CA_X3.crt +mozilla/D-TRUST_Root_Class_3_CA_2_2009.crt +mozilla/D-TRUST_Root_Class_3_CA_2_EV_2009.crt +mozilla/EBG_Elektronik_Sertifika_Hizmet_Sağlayıcısı.crt +mozilla/EC-ACC.crt +mozilla/EE_Certification_Centre_Root_CA.crt +mozilla/E-Guven_Kok_Elektronik_Sertifika_Hizmet_Saglayicisi.crt +mozilla/Entrust.net_Premium_2048_Secure_Server_CA.crt +mozilla/Entrust_Root_Certification_Authority.crt +mozilla/ePKI_Root_Certification_Authority.crt +mozilla/Equifax_Secure_CA.crt +mozilla/Equifax_Secure_eBusiness_CA_1.crt +mozilla/Equifax_Secure_Global_eBusiness_CA.crt +mozilla/E-Tugra_Certification_Authority.crt +mozilla/GeoTrust_Global_CA_2.crt +mozilla/GeoTrust_Global_CA.crt +mozilla/GeoTrust_Primary_Certification_Authority.crt +mozilla/GeoTrust_Primary_Certification_Authority_-_G2.crt +mozilla/GeoTrust_Primary_Certification_Authority_-_G3.crt +mozilla/GeoTrust_Universal_CA_2.crt +mozilla/GeoTrust_Universal_CA.crt +mozilla/Global_Chambersign_Root_-_2008.crt +mozilla/GlobalSign_Root_CA.crt +mozilla/GlobalSign_Root_CA_-_R2.crt +mozilla/GlobalSign_Root_CA_-_R3.crt +mozilla/Go_Daddy_Class_2_CA.crt +mozilla/Go_Daddy_Root_Certificate_Authority_-_G2.crt +mozilla/GTE_CyberTrust_Global_Root.crt +mozilla/Hellenic_Academic_and_Research_Institutions_RootCA_2011.crt +mozilla/Hongkong_Post_Root_CA_1.crt +mozilla/IGC_A.crt +mozilla/Izenpe.com.crt +mozilla/Juur-SK.crt +mozilla/Microsec_e-Szigno_Root_CA_2009.crt +mozilla/Microsec_e-Szigno_Root_CA.crt +mozilla/NetLock_Arany_=Class_Gold=_Főtanúsítvány.crt +mozilla/NetLock_Business_=Class_B=_Root.crt +mozilla/NetLock_Express_=Class_C=_Root.crt +mozilla/NetLock_Notary_=Class_A=_Root.crt +mozilla/NetLock_Qualified_=Class_QA=_Root.crt +mozilla/Network_Solutions_Certificate_Authority.crt +mozilla/OISTE_WISeKey_Global_Root_GA_CA.crt +mozilla/PSCProcert.crt +mozilla/QuoVadis_Root_CA_1_G3.crt +mozilla/QuoVadis_Root_CA_2.crt +mozilla/QuoVadis_Root_CA_2_G3.crt +mozilla/QuoVadis_Root_CA_3.crt +mozilla/QuoVadis_Root_CA_3_G3.crt +mozilla/QuoVadis_Root_CA.crt +mozilla/Root_CA_Generalitat_Valenciana.crt +mozilla/RSA_Security_2048_v3.crt +mozilla/Secure_Global_CA.crt +mozilla/SecureSign_RootCA11.crt +mozilla/SecureTrust_CA.crt +mozilla/Security_Communication_EV_RootCA1.crt +mozilla/Security_Communication_RootCA2.crt +mozilla/Security_Communication_Root_CA.crt +mozilla/SG_TRUST_SERVICES_RACINE.crt +mozilla/Sonera_Class_1_Root_CA.crt +mozilla/Sonera_Class_2_Root_CA.crt +mozilla/Staat_der_Nederlanden_Root_CA.crt +mozilla/Staat_der_Nederlanden_Root_CA_-_G2.crt +mozilla/Starfield_Class_2_CA.crt +mozilla/Starfield_Root_Certificate_Authority_-_G2.crt +mozilla/Starfield_Services_Root_Certificate_Authority_-_G2.crt +mozilla/StartCom_Certification_Authority_2.crt +mozilla/StartCom_Certification_Authority.crt +mozilla/StartCom_Certification_Authority_G2.crt +mozilla/S-TRUST_Authentication_and_Encryption_Root_CA_2005_PN.crt +mozilla/Swisscom_Root_CA_1.crt +mozilla/Swisscom_Root_CA_2.crt +mozilla/Swisscom_Root_EV_CA_2.crt +mozilla/SwissSign_Gold_CA_-_G2.crt +mozilla/SwissSign_Platinum_CA_-_G2.crt +mozilla/SwissSign_Silver_CA_-_G2.crt +mozilla/Taiwan_GRCA.crt +mozilla/TC_TrustCenter_Class_2_CA_II.crt +mozilla/TC_TrustCenter_Class_3_CA_II.crt +mozilla/TC_TrustCenter_Universal_CA_I.crt +mozilla/TeliaSonera_Root_CA_v1.crt +mozilla/Thawte_Premium_Server_CA.crt +mozilla/thawte_Primary_Root_CA.crt +mozilla/thawte_Primary_Root_CA_-_G2.crt +mozilla/thawte_Primary_Root_CA_-_G3.crt +mozilla/Thawte_Server_CA.crt +mozilla/Trustis_FPS_Root_CA.crt +mozilla/T-TeleSec_GlobalRoot_Class_2.crt +mozilla/T-TeleSec_GlobalRoot_Class_3.crt +mozilla/TÜBÄ°TAK_UEKAE_Kök_Sertifika_Hizmet_Sağlayıcısı_-_Sürüm_3.crt +mozilla/TURKTRUST_Certificate_Services_Provider_Root_1.crt +mozilla/TURKTRUST_Certificate_Services_Provider_Root_2007.crt +mozilla/TURKTRUST_Certificate_Services_Provider_Root_2.crt +mozilla/TWCA_Global_Root_CA.crt +mozilla/TWCA_Root_Certification_Authority.crt +mozilla/UTN_DATACorp_SGC_Root_CA.crt +mozilla/UTN_USERFirst_Email_Root_CA.crt +mozilla/UTN_USERFirst_Hardware_Root_CA.crt +mozilla/Verisign_Class_1_Public_Primary_Certification_Authority.crt +mozilla/Verisign_Class_1_Public_Primary_Certification_Authority_-_G2.crt +mozilla/Verisign_Class_1_Public_Primary_Certification_Authority_-_G3.crt +mozilla/Verisign_Class_2_Public_Primary_Certification_Authority_-_G2.crt +mozilla/Verisign_Class_2_Public_Primary_Certification_Authority_-_G3.crt +mozilla/Verisign_Class_3_Public_Primary_Certification_Authority_2.crt +mozilla/Verisign_Class_3_Public_Primary_Certification_Authority.crt +mozilla/Verisign_Class_3_Public_Primary_Certification_Authority_-_G2.crt +mozilla/Verisign_Class_3_Public_Primary_Certification_Authority_-_G3.crt +mozilla/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G4.crt +mozilla/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G5.crt +mozilla/Verisign_Class_4_Public_Primary_Certification_Authority_-_G3.crt +mozilla/VeriSign_Universal_Root_Certification_Authority.crt +mozilla/Visa_eCommerce_Root.crt +mozilla/WellsSecure_Public_Root_Certificate_Authority.crt +mozilla/WoSign_China.crt +mozilla/WoSign.crt +mozilla/XRamp_Global_CA_Root.crt +spi-inc.org/spi-cacert-2008.crt diff --git a/calendar/default b/calendar/default new file mode 100644 index 0000000..fa52180 --- /dev/null +++ b/calendar/default @@ -0,0 +1,15 @@ +/* This is the system-wide default calendar file, used if calendar(1) + * is invoked by a user without a ~/calendar or ~/.calendar/calendar file. + * It may be edited or even deleted to reflect local policy. + * + * In the standard setup, we simply include the default calendar + * definitions from /usr/share/calendar/calendar.all. If you want + * only some of those definitions, copy calendar.all to /etc/calendar + * and edit it there. That way, your changes will be kept next time + * you upgrade. + * + * The search path for include files is: + * /etc/calendar + * /usr/share/calendar + */ +#include "calendar.all" diff --git a/chrony/chrony.conf b/chrony/chrony.conf new file mode 100644 index 0000000..7009d10 --- /dev/null +++ b/chrony/chrony.conf @@ -0,0 +1,104 @@ +# This the default chrony.conf file for the Debian chrony package. After +# editing this file use the command 'invoke-rc.d chrony restart' to make +# your changes take effect. John Hasler 1998-2008 + +# See www.pool.ntp.org for an explanation of these servers. Please +# consider joining the project if possible. If you can't or don't want to +# use these servers I suggest that you try your ISP's nameservers. We mark +# the servers 'offline' so that chronyd won't try to connect when the link +# is down. Scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d use chronyc +# commands to switch it on when a dialup link comes up and off when it goes +# down. Code in /etc/init.d/chrony attempts to determine whether or not +# the link is up at boot time and set the online status accordingly. If +# you have an always-on connection such as cable omit the 'offline' +# directive and chronyd will default to online. +# +# Note that if Chrony tries to go "online" and dns lookup of the servers +# fails they will be discarded. Thus under some circumstances it is +# better to use IP numbers than host names. + +server 0.debian.pool.ntp.org auto_offline iburst minpoll 8 +server 1.debian.pool.ntp.org auto_offline iburst minpoll 8 +server 2.debian.pool.ntp.org auto_offline iburst minpoll 8 +server 3.debian.pool.ntp.org auto_offline iburst minpoll 8 + +# Look here for the admin password needed for chronyc. The initial +# password is generated by a random process at install time. You may +# change it if you wish. + +keyfile /etc/chrony/chrony.keys + +# Set runtime command key. Note that if you change the key (not the +# password) to anything other than 1 you will need to edit +# /etc/ppp/ip-up.d/chrony, /etc/ppp/ip-down.d/chrony, /etc/init.d/chrony +# and /etc/cron.weekly/chrony as these scripts use it to get the password. + +commandkey 1 + +# I moved the driftfile to /var/lib/chrony to comply with the Debian +# filesystem standard. + +driftfile /var/lib/chrony/chrony.drift + +# Comment this line out to turn off logging. + +log tracking measurements statistics +logdir /var/log/chrony + +# Stop bad estimates upsetting machine clock. + +maxupdateskew 100.0 + +# Dump measurements when daemon exits. + +dumponexit + +# Specify directory for dumping measurements. + +dumpdir /var/lib/chrony + +# Let computer be a server when it is unsynchronised. + +local stratum 10 + +# GRIDSCALE - Disable server functionality and only bind on localhost +bindcmdaddress 127.0.0.1 +bindcmdaddress ::1 +port 0 + +# GRIDSCALE - Allow steppign the clock. Normally, it’s recommended to allow the step only in +# the first few updates, but in some cases (a virtual machine which can be suspended and resumed +# with incorrect time) it may be necessary to allow the step at any clock update. +makestep 1 -1 + +# Allow computers on the unrouted nets to use the server. + +allow 10/8 +allow 192.168/16 +allow 172.16/12 + +# This directive forces `chronyd' to send a message to syslog if it +# makes a system clock adjustment larger than a threshold value in seconds. + +logchange 0.5 + +# This directive defines an email address to which mail should be sent +# if chronyd applies a correction exceeding a particular threshold to the +# system clock. + +# mailonchange root@localhost 0.5 + +# This directive tells chrony to regulate the real-time clock and tells it +# Where to store related data. It may not work on some newer motherboards +# that use the HPET real-time clock. It requires enhanced real-time +# support in the kernel. I've commented it out because with certain +# combinations of motherboard and kernel it is reported to cause lockups. + +# rtcfile /var/lib/chrony/chrony.rtc + +# If the last line of this file reads 'rtconutc' chrony will assume that +# the CMOS clock is on UTC (GMT). If it reads '# rtconutc' or is absent +# chrony will assume local time. The line (if any) was written by the +# chrony postinst based on what it found in /etc/default/rcS. You may +# change it if necessary. +rtconutc diff --git a/chrony/chrony.keys b/chrony/chrony.keys new file mode 100644 index 0000000..1792d4e --- /dev/null +++ b/chrony/chrony.keys @@ -0,0 +1 @@ +1 UpV4JSTs diff --git a/console-setup/cached_Lat15-Fixed16.psf.gz b/console-setup/cached_Lat15-Fixed16.psf.gz new file mode 100644 index 0000000000000000000000000000000000000000..80565c5927994c1ce7e3034df39a17ebd032a49d GIT binary patch literal 2427 zcmV->3550^iwFR4+%;7K19ew>cofwYKg?cm@Y}|94RoYSn2d8VET{`Y2ytCD!xDF+ z4GI1zkdA-=!Y$8ze-DLwJo*Q@=!!XMeqgUTk-w2PwfNxu+!h2 z=bZ_h-QT(A+;iv7x#ynym}aJ=2$Z+B3~${!yv52Bx%%$m;oWx+3q6@5YHKr$dR35X zpIt7OJAv|SS69_crclUad^=HdrLv%0t~3*w=E&zA8uA4-qh^P);I7?My*j^9OSM{U zp%_&vZfR}XR!*g|-QC}J_0O*CUbIMRw`ud{qeph$yJ5oy@71bW*HYIa`!ms)Us+`I zdYWbCP5dq2L#Jivzv+@QHc(+5sP%L~bzc06dCSTxB7R;QiE1>0)J!%K94Oh094wX9 zn53ulnx68NjG<%{Bjc+~P0=Yy#cZltQ*0_mv~r2uMg}NqPp8v0)2tx@y!M4kxutGw zrQmfsy`y8Ms*ayBrQP??Ffw!ITkUhgXiCIXHRX`1GNJ225|m2mzDJd8CRisrRY&nSxJuNRiAH%p}&W6XPX zu~@7sisIWdc(f{B;OR9uz*rcEyf8_2As6sGYl(R7yC3Mma50{go>G|-8GRUmqA;RK zG4!7W^DE}3V{unkSEt_K#{&VW35Q%=`0n^$4W7pci-Es`B{zPhL23M=MJ=WmrRO^> ztG(4*ZkG2t?|lU?0sZ(-Vh)u`UOcQ)d0}7Q!g9%LU-YTw_ct)m(-Zb*_4jvmb#%11 zTVZ@HDc;WbqW%f$8OSF>d%0Ay!sm;*WH|przQ1ZX9=ZQEu>l(O^|HOEXJ8=k&oWKT z3A*1tx?hTXQN#SJ3tp$zdE}6&TEb-Nc{f5q|K9j9Y)zhjEUToO0j!*J z9TEu;&c7DR7oxQlmwY|ae>lVWsJ*|}&j5csUPOgm$`5D!A_2VTgW)B8yW4#j53#w3 zIrjB7*S+S@E)pR0&v|_E1VssU3?~6o5azzExG7a80kYM`yP`ZE7pi z>fkX0l9L?(%#h_$hXe;dh844H=G}#%klK) zKX|{;W&dYfCa*7{Mfcl`(qJ@Dur%GZuB1f$d` z=~6yB{mJ*ublNn_rkPHAdRZu_!u{nIBl^3iJNk2?A^D@8oKE z_k^r#v3wWtil5KUjXXTYaC)?NbaZv~8@)woHHH1ldc8x(>9{M@Ya`cFu_yvm8ua#e z*Mo39%t+Q7Li5{89{T<%dDo$QQC=Ux{;lhIuZ!RlmHM*6|(>z9B368AA&$aFotFKEtfT#F3S9cQYkX~bxfX}yY{o=%SZcJV!|Ie%B1 zHbeeI6W@cnUWnfFTnZ}+n4Dq}jqWDf-VVG0bd9p@fyoE?7s#v2ArAue`Z(RTb)XS2 z^uye?Cqv2!tlUBEAZ-_Rk&wl_B3$M46}KWN;;_oCd? zxP$LPxuJ0%-;eTlXn8-d3)l_lbSIY1C|%JLI@3q%WAxK>RUfOLE_{LA0L}qSfYWBY ze=?+VfhJ%IkfqyEI~CG2;5SXrjbob=4?t?C2f;6)J>X@U$bOi32vUW{uq}zbkUB_Z52L)4 zCa~KQ*~Wd4FQZ4mze*W)M`AyuPWo};QIrd)f&C=$7^H=yv#p88AuXZ<;9c|t_~kU3 z9YpyxGT64nAxPcyB=}-_3j7Ls8hi{*mObZg=;$}2IlUf>(RRlri9 z4_HPyb_Di*dJg<*YGX%HE~n?gSI{i>0?Gk;5&Rl@34A5J4E{}8%w9pcik7ffQC>^0 zfv=|5!M{bvz`spzfPaSy>`jzwsL0+z`CWP&{Co5c_;u9HuA_G$T~F_U-$3t!ucZ&b zZ=?^w2WdY02<1&Qk9~}C9eo0RGrX<>>wy}u7kC2rFYpQQF7Q6^Ht+%P5%4MS2U^5z z`(sFdp(`N$8PXqt$AHIaD%QmzNFM?RfWHI(1U?7;1N@7`=55-o+6Mt&2&0ktNd%Cme5Z{p|j$(*BRKiWMC90Z;Oo}y70+tZMq0iFd8(`l$VLMeEd z;%D(RKNHW@^Dp!9d>o{i{371U=kOLjn>X`WsF}tur2fTh4&BG*ywOCaA-t_OZkd!W@I9l&094A3x(X9E*}3@{OB0G44^ev2Mf tpj-~jL0v0w9Cc;r_lg;XzEivf`Vi#%Am7Qi!ygqj{|5qp@g2Ao002+9%8?!RHSgw#s#r8O7Bly9%@##E4@0&M`!Bd{r!q421_;4auNI_ut4pT zU1DoznN1^Ggk>F&;nhJQFtDMra4SB0=w=;bwC%x2gzfpuaNRH!tW+_(GiR921MmyG zqwOO5*rqKoKe-xZTIQIxhJYqCQ(lLBC;Am`jlju6UAK8JC3;rJMXj!;;2BVAa!;O9 zaQ44Z!U{IBYss_stM@9EZCAyaShJ4H3W0jw3Uuw2vdGV#?;roRgm*0L;7gy2PEbR- zvOEUy_kSb z(KUp z$sp>1PdQ(IwC%^PKl%IRr;hHRM-%Y zEQ;?>boHoXci#MsmBz_9_PHm|*EupIVZN@BI6Z+t=dXNMm3c5vhz-UoCfuJjr5+lj z2%NVsD-g4nhP;&Nz0a_Xc<}g=KYr=Swq>QT_4n;oa@Z-&2+mc33bh=uqEtS6QQW7+ zpRe8la<$;rDO+##N&W|aeI_b*UC5hdZ99}W>H*>I=yE%BI=AOTpl{5Pg^t!Ija}T` zW{qPdUA(w-cHT(bsP2mkk>VU})l&Lg0+iH$lfJTmeke1FT+vV)`oSqoT!^aUF4_XO zH%)rb4`-NtOFf^yV3-o5Gd|SvpKj^h}Ty23w4k%Vm_^U$4 zC~R7fr*VUYNZ_e6K}!3jgQE8k^65KaMXC?{1BoqqCGfW_ zyf3UqUpzLDr7+EwC3u3}v~&U&%ho#*|BCZazv#+kZ;sv!#+7lPh;9Wfes)IH;?4ZAbe-p6vF-;{!m!mI(?EB%x^Lq*#C= zRy7_cU|scR;jQ@Jg_m!&kGi!Me_heZ7Y5!+PRt2Z!K(701>ML0^}r_Gz5p!RC}8|t zz^vT0bT+zO%>=w<`I1Jhe*a-_r*kHEQ5bJ~@^2U9)G#9?hkk98qiIJM!Bh|Yxr$77 zu>~8mDwwk_uA$*)s{u- zp)>K8x6+FiX>k4N1X0JamJM64LHJ}VgO^&xFeW1hmI;wzys?uD1esb3tXY4>$ZOrF z9Tsns+(EJ=eB8NwOA1p2UmmK6-gF1@Tt{*N!LMy8`Ts&+;)lXt#ombj^gUBKY)9T` zn9Xu`TKPa9Wr$++S4BIem0OT3tf#P=p9nI9@O_b3=|h;A!PoJX!*AqSs=NCwj3;^` z(n1ssKs&xBqxt?Nb0=L^1BbK|C9G+1`P7ETIiODvuB3}o8p8)hzx&xCJ2+ruWpLMNHWHG1A8V=-IfwdR-&_91 z`3ZI^_lbY++=0pR-v=AI`B#VpF`qj9o+T&nU-K;8Ofln*s*axadgO}(zt#GGW=Z~U z?e194ARzLc+=W!O;+!1N`$o<;iP+#qTIfpUnZjGZE(j;{m3GG@0lJQ7#)|lvfhcc4BYNm~Jz-YS!$S5f8F}gAbkA zrX+gfv<~v#1cBxuT4l(7!C4BP{buiLcc6dCIzh5(gCFZ#S;)?dR42&$U5zJ5o2HxT93Yqjx&)#v$TY5ATl2VY55W-f>O-fb6YH|<`2HaMlkJEEYZI6gjEMse zIC_WIL9jvzHu1h&8}oHy^?|f3BF4FD#zb2&hYvPm$2O?F@-E;H{Cn9(6z|iGES#}h zQ9SIViiP*u1wPwyb?+X0LLmCfH=VSb68X@t!N-fba+;Oq;;bhrt}4`_&#A}6BvK7~ zB^#NnDoG6yE7~ zMhxcmW)Eev6K?vo)a6^%$=}L{&JP~+m&=_IeL5q0_9sz0_>9Oo zzEc&Yc3jc(EN$2zf5g4Pa-YLZ^xof;%FPZ@%P|i+CN6H~d#!Jc)CMVbJfYKN; zZ~#Y2_CVEl0DnqpA^K#}w%!fEVul82M&0`Aea^jPDd6qkVf1Y&sv;$-^%$T5%A6n# z3>$DJsn0U&?tK~ItN?RWKsA*|&CZtGxL0DvA82%Y>ZOtAfFE+ex_Hr^`vo}!%-OIk zHf1tXA`QW?_1fN{aDc)I-sQeAq1UX>mMtOwdGnu5j#cTbIbj_`y-0)Fi^&Fy z<-&l+Yvzqn`geHM+@USVBlVc_~z1bfPHRD<%9bzxinGO1*i( zvK1W*lew%JXXL;w8T;mtqf*vI_Qv4#3L4jY$ph~fKVSDO%eN-jO_G9*j!qQUM~QR6 z#N$OBS?P0~3(AszfuvHL5E>w?y*sP;~lHbPnsSGMeHBk5du z(yhvPKJXmhM)dqjp9{9lu5PnjP$_5uDp-j#kjEa`kDhFT{1Xt0+*Td1N0G>+jE#7! z>K{!Y?%ewRc`=x{mrwgCvSxmiOj61UeW5PInMbN?GymZ2V!)s=T?&zwPN6alve{QC zoS7IDOY;s0Eh#2&4e<<_S6GSi(|t@)O)wV+N2*z~u&W^UVOQ1S83{6*ASqOrY#`e8AV%7={lBQA86v9JLbse`S0kYDw-i=KYgOHBF=Qu?k`shB39sP`Z!L+;0POg%1Gvhw} zTerjCDPk_I*H@H;NnnQyKGM=UTNPp!3QCHeSwls8hu&sq$ASvCWWj|hDUemLF3`EJ z(6;iyqc*;RULWD|#|suVg#tcZB=Y5DyC^{oug(UG&x(=eYj@zqHOZ@Mx+9jCq_r)% zpKTYId~Ub*v8v_A=E3E6E8pd&>0f+gY&JatsvQ?WRJ&J!W4?r!_+;A*K`g)*18UDl zwF%GDcYCZ_r4(=4z)AgPY%gCYU(9ZQYYuk#N)(=eW}zNrMs!hBifT-U52ZCh_z8NhjT+w z{He+9Qq|*UJ!L1~R(ZsDpB5@7!BGY;e05x6%u2dDm5m#DdE7+ZEzG6xnLPyzJf~C@ MLB1s()926q7YfaG-v9sr literal 0 HcmV?d00001 diff --git a/console-setup/compose.ARMSCII-8.inc b/console-setup/compose.ARMSCII-8.inc new file mode 100644 index 0000000..ca8d3c9 --- /dev/null +++ b/console-setup/compose.ARMSCII-8.inc @@ -0,0 +1 @@ +# Compose sequences for ARMSCII-8 diff --git a/console-setup/compose.CP1251.inc b/console-setup/compose.CP1251.inc new file mode 100644 index 0000000..4fb90da --- /dev/null +++ b/console-setup/compose.CP1251.inc @@ -0,0 +1 @@ +# Compose sequences for CP1251 diff --git a/console-setup/compose.CP1255.inc b/console-setup/compose.CP1255.inc new file mode 100644 index 0000000..93e6a7b --- /dev/null +++ b/console-setup/compose.CP1255.inc @@ -0,0 +1 @@ +# Compose sequences for CP1255 diff --git a/console-setup/compose.CP1256.inc b/console-setup/compose.CP1256.inc new file mode 100644 index 0000000..a792b8c --- /dev/null +++ b/console-setup/compose.CP1256.inc @@ -0,0 +1 @@ +# Compose sequences for CP1256 diff --git a/console-setup/compose.GEORGIAN-ACADEMY.inc b/console-setup/compose.GEORGIAN-ACADEMY.inc new file mode 100644 index 0000000..33869fd --- /dev/null +++ b/console-setup/compose.GEORGIAN-ACADEMY.inc @@ -0,0 +1 @@ +# Compose sequences for GEORGIAN-ACADEMY diff --git a/console-setup/compose.GEORGIAN-PS.inc b/console-setup/compose.GEORGIAN-PS.inc new file mode 100644 index 0000000..a4d20c4 --- /dev/null +++ b/console-setup/compose.GEORGIAN-PS.inc @@ -0,0 +1 @@ +# Compose sequences for GEORGIAN-PS diff --git a/console-setup/compose.IBM1133.inc b/console-setup/compose.IBM1133.inc new file mode 100644 index 0000000..9369645 --- /dev/null +++ b/console-setup/compose.IBM1133.inc @@ -0,0 +1 @@ +# Compose sequences for IBM1133 diff --git a/console-setup/compose.ISIRI-3342.inc b/console-setup/compose.ISIRI-3342.inc new file mode 100644 index 0000000..242f739 --- /dev/null +++ b/console-setup/compose.ISIRI-3342.inc @@ -0,0 +1 @@ +# Compose sequences for ISIRI-3342 diff --git a/console-setup/compose.ISO-8859-1.inc b/console-setup/compose.ISO-8859-1.inc new file mode 100644 index 0000000..c568ba8 --- /dev/null +++ b/console-setup/compose.ISO-8859-1.inc @@ -0,0 +1,173 @@ +# Compose sequences for ISO-8859-1 +compose '!' '!' to '¡' +compose '!' '^' to '¦' +compose '!' 'p' to '¶' +compose '!' 's' to '§' +compose '"' '"' to '¨' +compose '"' 'A' to 'Ä' +compose '"' 'E' to 'Ë' +compose '"' 'I' to 'Ï' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'a' to 'ä' +compose '"' 'e' to 'ë' +compose '"' 'i' to 'ï' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '"' 'y' to 'ÿ' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose '(' 'c' to '©' +compose '(' 'r' to '®' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' '0' to '°' +compose '*' 'A' to 'Å' +compose '*' 'a' to 'å' +compose '+' '+' to '#' +compose '+' '-' to '±' +compose ',' ',' to '¸' +compose ',' '-' to '¬' +compose ',' 'C' to 'Ç' +compose ',' 'c' to 'ç' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '+' to '±' +compose '-' ',' to '¬' +compose '-' '-' to '­' +compose '-' ':' to '÷' +compose '-' 'A' to 'Ã' +compose '-' 'D' to 'Ð' +compose '-' 'N' to 'Ñ' +compose '-' 'O' to 'Õ' +compose '-' '^' to '¯' +compose '-' 'a' to 'ã' +compose '-' 'd' to 'ð' +compose '-' 'l' to '£' +compose '-' 'n' to 'ñ' +compose '-' 'o' to 'õ' +compose '-' 'y' to '¥' +compose '.' '.' to '·' +compose '.' '^' to '·' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' 'O' to 'Ø' +compose '/' '^' to '|' +compose '/' 'c' to '¢' +compose '/' 'o' to 'ø' +compose '/' 'u' to 'µ' +compose '0' 'c' to '©' +compose '0' 's' to '§' +compose '0' 'x' to '¤' +compose '1' '2' to '½' +compose '1' '4' to '¼' +compose '1' 's' to '¹' +compose '2' 's' to '²' +compose '3' '4' to '¾' +compose ':' '-' to '÷' +compose '<' '/' to '\\' +compose '<' '<' to '«' +compose '=' 'l' to '£' +compose '=' 'y' to '¥' +compose '>' '>' to '»' +compose '>' 'A' to 'Â' +compose '>' 'E' to 'Ê' +compose '>' 'I' to 'Î' +compose '>' 'O' to 'Ô' +compose '>' 'U' to 'Û' +compose '>' 'a' to 'â' +compose '>' 'e' to 'ê' +compose '>' 'i' to 'î' +compose '>' 'o' to 'ô' +compose '>' 'u' to 'û' +compose '?' '?' to '¿' +compose 'A' 'E' to 'Æ' +compose 'A' 'O' to 'Å' +compose 'T' 'H' to 'Þ' +compose '\'' 'A' to 'Á' +compose '\'' 'C' to 'Ç' +compose '\'' 'E' to 'É' +compose '\'' 'I' to 'Í' +compose '\'' 'O' to 'Ó' +compose '\'' 'U' to 'Ú' +compose '\'' 'Y' to 'Ý' +compose '\'' '\'' to '´' +compose '\'' 'a' to 'á' +compose '\'' 'c' to 'ç' +compose '\'' 'e' to 'é' +compose '\'' 'i' to 'í' +compose '\'' 'o' to 'ó' +compose '\'' 'u' to 'ú' +compose '\'' 'y' to 'ý' +compose '^' '!' to '¦' +compose '^' '-' to '¯' +compose '^' '.' to '·' +compose '^' '/' to '|' +compose '^' '0' to '°' +compose '^' '1' to '¹' +compose '^' '2' to '²' +compose '^' '3' to '³' +compose '^' 'A' to 'Â' +compose '^' 'E' to 'Ê' +compose '^' 'I' to 'Î' +compose '^' 'O' to 'Ô' +compose '^' 'U' to 'Û' +compose '^' '_' to '¯' +compose '^' 'a' to 'â' +compose '^' 'e' to 'ê' +compose '^' 'i' to 'î' +compose '^' 'o' to 'ô' +compose '^' 'u' to 'û' +compose '_' '^' to '¯' +compose '_' '_' to '¯' +compose '_' 'a' to 'ª' +compose '_' 'o' to 'º' +compose '`' 'A' to 'À' +compose '`' 'E' to 'È' +compose '`' 'I' to 'Ì' +compose '`' 'O' to 'Ò' +compose '`' 'U' to 'Ù' +compose '`' 'a' to 'à' +compose '`' 'e' to 'è' +compose '`' 'i' to 'ì' +compose '`' 'o' to 'ò' +compose '`' 'u' to 'ù' +compose 'a' 'e' to 'æ' +compose 'a' 'o' to 'å' +compose 'a' 't' to '@' +compose 'b' 'v' to '¦' +compose 'c' '0' to '©' +compose 'c' 'o' to '©' +compose 'l' 'v' to '|' +compose 'o' 'c' to '©' +compose 'o' 'r' to '®' +compose 'o' 's' to '§' +compose 'o' 'x' to '¤' +compose 's' '0' to '§' +compose 's' '2' to '²' +compose 's' '3' to '³' +compose 's' 'o' to '§' +compose 't' 'h' to 'þ' +compose 'v' 'b' to '¦' +compose 'x' '0' to '¤' +compose '|' 'c' to '¢' +compose '|' '|' to '¦' +compose '~' 'A' to 'Ã' +compose '~' 'N' to 'Ñ' +compose '~' 'O' to 'Õ' +compose '~' 'a' to 'ã' +compose '~' 'n' to 'ñ' +compose '~' 'o' to 'õ' +compose '¨' 'A' to 'Ä' +compose '¨' 'E' to 'Ë' +compose '¨' 'I' to 'Ï' +compose '¨' 'O' to 'Ö' +compose '¨' 'U' to 'Ü' +compose '¨' 'a' to 'ä' +compose '¨' 'e' to 'ë' +compose '¨' 'i' to 'ï' +compose '¨' 'o' to 'ö' +compose '¨' 'u' to 'ü' +compose '¨' 'y' to 'ÿ' +compose '°' 'A' to 'Å' +compose '°' 'a' to 'å' diff --git a/console-setup/compose.ISO-8859-10.inc b/console-setup/compose.ISO-8859-10.inc new file mode 100644 index 0000000..7ca7b10 --- /dev/null +++ b/console-setup/compose.ISO-8859-10.inc @@ -0,0 +1 @@ +# Compose sequences for ISO-8859-10 diff --git a/console-setup/compose.ISO-8859-11.inc b/console-setup/compose.ISO-8859-11.inc new file mode 100644 index 0000000..add3f6a --- /dev/null +++ b/console-setup/compose.ISO-8859-11.inc @@ -0,0 +1 @@ +# Compose sequences for ISO-8859-11 diff --git a/console-setup/compose.ISO-8859-13.inc b/console-setup/compose.ISO-8859-13.inc new file mode 100644 index 0000000..a867a9e --- /dev/null +++ b/console-setup/compose.ISO-8859-13.inc @@ -0,0 +1,169 @@ +# Compose sequences for ISO-8859-13 +compose '!' '^' to '¦' +compose '!' 'p' to '¶' +compose '!' 's' to '§' +compose '"' '<' to '´' +compose '"' '>' to '¡' +compose '"' 'A' to 'Ä' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'a' to 'ä' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose '(' 'c' to '©' +compose '(' 'r' to '®' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' '0' to '°' +compose '*' 'A' to 'Å' +compose '*' 'a' to 'å' +compose '+' '+' to '#' +compose '+' '-' to '±' +compose ',' '-' to '¬' +compose ',' '>' to '¥' +compose ',' 'A' to 'À' +compose ',' 'E' to 'Æ' +compose ',' 'G' to 'Ì' +compose ',' 'I' to 'Á' +compose ',' 'K' to 'Í' +compose ',' 'L' to 'Ï' +compose ',' 'N' to 'Ò' +compose ',' 'R' to 'ª' +compose ',' 'U' to 'Ø' +compose ',' 'a' to 'à' +compose ',' 'e' to 'æ' +compose ',' 'g' to 'ì' +compose ',' 'i' to 'á' +compose ',' 'k' to 'í' +compose ',' 'l' to 'ï' +compose ',' 'n' to 'ò' +compose ',' 'r' to 'º' +compose ',' 'u' to 'ø' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '+' to '±' +compose '-' ',' to '¬' +compose '-' '-' to '­' +compose '-' ':' to '÷' +compose '-' 'A' to 'Â' +compose '-' 'E' to 'Ç' +compose '-' 'I' to 'Î' +compose '-' 'L' to 'Ù' +compose '-' 'O' to 'Ô' +compose '-' 'U' to 'Û' +compose '-' 'a' to 'â' +compose '-' 'e' to 'ç' +compose '-' 'i' to 'î' +compose '-' 'l' to 'ù' +compose '-' 'o' to 'ô' +compose '-' 'u' to 'û' +compose '.' '.' to '·' +compose '.' 'A' to 'Å' +compose '.' 'E' to 'Ë' +compose '.' 'Z' to 'Ý' +compose '.' '^' to '·' +compose '.' 'a' to 'å' +compose '.' 'e' to 'ë' +compose '.' 'z' to 'ý' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' 'L' to 'Ù' +compose '/' 'O' to '¨' +compose '/' '^' to '|' +compose '/' 'c' to '¢' +compose '/' 'l' to 'ù' +compose '/' 'o' to '¸' +compose '/' 'u' to 'µ' +compose '0' 'c' to '©' +compose '0' 's' to '§' +compose '0' 'x' to '¤' +compose '1' '2' to '½' +compose '1' '4' to '¼' +compose '2' 's' to '²' +compose '3' '4' to '¾' +compose ':' '-' to '÷' +compose ';' 'A' to 'À' +compose ';' 'E' to 'Æ' +compose ';' 'I' to 'Á' +compose ';' 'U' to 'Ø' +compose ';' 'a' to 'à' +compose ';' 'e' to 'æ' +compose ';' 'i' to 'á' +compose ';' 'u' to 'ø' +compose '<' '"' to '´' +compose '<' '/' to '\\' +compose '<' '<' to '«' +compose '<' 'C' to 'È' +compose '<' 'S' to 'Ð' +compose '<' 'Z' to 'Þ' +compose '<' '\'' to '`' +compose '<' 'c' to 'è' +compose '<' 's' to 'ð' +compose '<' 'z' to 'þ' +compose '=' 'l' to '£' +compose '>' '"' to '¡' +compose '>' ',' to '¥' +compose '>' '>' to '»' +compose '>' '\'' to 'ÿ' +compose '?' '?' to '¿' +compose 'A' 'E' to '¯' +compose 'A' 'O' to 'Å' +compose '\'' '<' to '`' +compose '\'' '>' to 'ÿ' +compose '\'' 'C' to 'Ã' +compose '\'' 'E' to 'É' +compose '\'' 'N' to 'Ñ' +compose '\'' 'O' to 'Ó' +compose '\'' 'S' to 'Ú' +compose '\'' 'Z' to 'Ê' +compose '\'' '\'' to 'ÿ' +compose '\'' 'c' to 'ã' +compose '\'' 'e' to 'é' +compose '\'' 'n' to 'ñ' +compose '\'' 'o' to 'ó' +compose '\'' 's' to 'ú' +compose '\'' 'z' to 'ê' +compose '^' '!' to '¦' +compose '^' '.' to '·' +compose '^' '/' to '|' +compose '^' '0' to '°' +compose '^' '1' to '¹' +compose '^' '2' to '²' +compose '^' '3' to '³' +compose '_' 'A' to 'Â' +compose '_' 'E' to 'Ç' +compose '_' 'I' to 'Î' +compose '_' 'O' to 'Ô' +compose '_' 'U' to 'Û' +compose '_' 'a' to 'â' +compose '_' 'e' to 'ç' +compose '_' 'i' to 'î' +compose '_' 'o' to 'ô' +compose '_' 'u' to 'û' +compose 'a' 'e' to '¿' +compose 'a' 'o' to 'å' +compose 'a' 't' to '@' +compose 'b' 'v' to '¦' +compose 'c' 'o' to '©' +compose 'm' 'u' to 'µ' +compose 'o' 'c' to '©' +compose 'o' 'r' to '®' +compose 'o' 's' to '§' +compose 's' '0' to '§' +compose 's' '1' to '¹' +compose 's' '2' to '²' +compose 's' '3' to '³' +compose 'x' '0' to '¤' +compose 'x' 'o' to '¤' +compose '|' 'c' to '¢' +compose '|' '|' to '¦' +compose '~' 'O' to 'Õ' +compose '~' 'o' to 'õ' +compose '°' 'A' to 'Å' +compose '°' 'E' to 'Ë' +compose '°' 'Z' to 'Ý' +compose '°' 'a' to 'å' +compose '°' 'e' to 'ë' +compose '°' 'z' to 'ý' diff --git a/console-setup/compose.ISO-8859-14.inc b/console-setup/compose.ISO-8859-14.inc new file mode 100644 index 0000000..21f29ee --- /dev/null +++ b/console-setup/compose.ISO-8859-14.inc @@ -0,0 +1,133 @@ +# Compose sequences for ISO-8859-14 +compose '!' 'p' to '¶' +compose '!' 's' to '§' +compose '"' 'A' to 'Ä' +compose '"' 'E' to 'Ë' +compose '"' 'I' to 'Ï' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'W' to '½' +compose '"' 'Y' to '¯' +compose '"' 'a' to 'ä' +compose '"' 'e' to 'ë' +compose '"' 'i' to 'ï' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '"' 'w' to '¾' +compose '"' 'y' to 'ÿ' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' 'A' to 'Å' +compose '*' 'a' to 'å' +compose '+' '+' to '#' +compose ',' 'C' to 'Ç' +compose ',' 'c' to 'ç' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '-' to '­' +compose '-' 'A' to 'Ã' +compose '-' 'N' to 'Ñ' +compose '-' 'O' to 'Õ' +compose '-' 'a' to 'ã' +compose '-' 'l' to '£' +compose '-' 'n' to 'ñ' +compose '-' 'o' to 'õ' +compose '.' 'B' to '¡' +compose '.' 'D' to '¦' +compose '.' 'F' to '°' +compose '.' 'G' to '²' +compose '.' 'M' to '´' +compose '.' 'P' to '·' +compose '.' 'S' to '»' +compose '.' 'T' to '×' +compose '.' 'b' to '¢' +compose '.' 'c' to '¥' +compose '.' 'd' to '«' +compose '.' 'f' to '±' +compose '.' 'g' to '³' +compose '.' 'm' to 'µ' +compose '.' 'p' to '¹' +compose '.' 's' to '¿' +compose '.' 't' to '÷' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' 'O' to 'Ø' +compose '/' '^' to '|' +compose '/' 'o' to 'ø' +compose '0' 'c' to '©' +compose '0' 'r' to '®' +compose '0' 's' to '§' +compose '<' '/' to '\\' +compose '=' 'l' to '£' +compose '>' 'A' to 'Â' +compose '>' 'E' to 'Ê' +compose '>' 'I' to 'Î' +compose '>' 'O' to 'Ô' +compose '>' 'U' to 'Û' +compose '>' 'a' to 'â' +compose '>' 'e' to 'ê' +compose '>' 'i' to 'î' +compose '>' 'o' to 'ô' +compose '>' 'u' to 'û' +compose 'A' 'E' to 'Æ' +compose '\'' 'A' to 'Á' +compose '\'' 'E' to 'É' +compose '\'' 'I' to 'Í' +compose '\'' 'O' to 'Ó' +compose '\'' 'U' to 'Ú' +compose '\'' 'W' to 'ª' +compose '\'' 'Y' to 'Ý' +compose '\'' 'a' to 'á' +compose '\'' 'e' to 'é' +compose '\'' 'i' to 'í' +compose '\'' 'o' to 'ó' +compose '\'' 'u' to 'ú' +compose '\'' 'w' to 'º' +compose '\'' 'y' to 'ý' +compose '^' '/' to '|' +compose '^' 'A' to 'Â' +compose '^' 'E' to 'Ê' +compose '^' 'I' to 'Î' +compose '^' 'O' to 'Ô' +compose '^' 'U' to 'Û' +compose '^' 'W' to 'Ð' +compose '^' 'Y' to 'Þ' +compose '^' 'a' to 'â' +compose '^' 'e' to 'ê' +compose '^' 'i' to 'î' +compose '^' 'o' to 'ô' +compose '^' 'u' to 'û' +compose '^' 'w' to 'ð' +compose '^' 'y' to 'þ' +compose '`' 'A' to 'À' +compose '`' 'E' to 'È' +compose '`' 'I' to 'Ì' +compose '`' 'O' to 'Ò' +compose '`' 'U' to 'Ù' +compose '`' 'W' to '¨' +compose '`' 'Y' to '¬' +compose '`' 'a' to 'à' +compose '`' 'e' to 'è' +compose '`' 'i' to 'ì' +compose '`' 'o' to 'ò' +compose '`' 'u' to 'ù' +compose '`' 'w' to '¸' +compose '`' 'y' to '¼' +compose 'a' 'e' to 'æ' +compose 'a' 't' to '@' +compose 'c' 'o' to '©' +compose 'l' 'v' to '|' +compose 'o' 'c' to '©' +compose 'o' 'r' to '®' +compose 'o' 's' to '§' +compose 'r' '0' to '®' +compose 's' '0' to '§' +compose 's' 'o' to '§' +compose '~' 'A' to 'Ã' +compose '~' 'N' to 'Ñ' +compose '~' 'O' to 'Õ' +compose '~' 'a' to 'ã' +compose '~' 'n' to 'ñ' +compose '~' 'o' to 'õ' diff --git a/console-setup/compose.ISO-8859-15.inc b/console-setup/compose.ISO-8859-15.inc new file mode 100644 index 0000000..63c89db --- /dev/null +++ b/console-setup/compose.ISO-8859-15.inc @@ -0,0 +1,159 @@ +# Compose sequences for ISO-8859-15 +compose '!' '!' to '¡' +compose '!' 'p' to '¶' +compose '!' 's' to '§' +compose '"' '"' to '"' +compose '"' 'A' to 'Ä' +compose '"' 'E' to 'Ë' +compose '"' 'I' to 'Ï' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'Y' to '¾' +compose '"' 'a' to 'ä' +compose '"' 'e' to 'ë' +compose '"' 'i' to 'ï' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '"' 'y' to 'ÿ' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose '(' 'c' to '©' +compose '(' 'r' to '®' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' '0' to '°' +compose '*' 'A' to 'Å' +compose '*' 'a' to 'å' +compose '+' '+' to '#' +compose '+' '-' to '±' +compose ',' '-' to '¬' +compose ',' 'C' to 'Ç' +compose ',' 'c' to 'ç' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '+' to '±' +compose '-' ',' to '¬' +compose '-' '-' to '­' +compose '-' ':' to '÷' +compose '-' 'A' to 'Ã' +compose '-' 'D' to 'Ð' +compose '-' 'N' to 'Ñ' +compose '-' 'O' to 'Õ' +compose '-' '^' to '¯' +compose '-' 'a' to 'ã' +compose '-' 'd' to 'ð' +compose '-' 'l' to '£' +compose '-' 'n' to 'ñ' +compose '-' 'o' to 'õ' +compose '-' 'y' to '¥' +compose '.' '.' to '·' +compose '.' '^' to '·' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' 'O' to 'Ø' +compose '/' '^' to '|' +compose '/' 'c' to '¢' +compose '/' 'o' to 'ø' +compose '/' 'u' to 'µ' +compose '0' 'c' to '©' +compose '0' 's' to '§' +compose '1' 's' to '¹' +compose ':' '-' to '÷' +compose '<' '/' to '\\' +compose '<' '<' to '«' +compose '<' 'S' to '¦' +compose '<' 'Z' to '´' +compose '<' 's' to '¨' +compose '<' 'z' to '¸' +compose '=' 'c' to '¤' +compose '=' 'l' to '£' +compose '=' 'y' to '¥' +compose '>' '>' to '»' +compose '>' 'A' to 'Â' +compose '>' 'E' to 'Ê' +compose '>' 'I' to 'Î' +compose '>' 'O' to 'Ô' +compose '>' 'U' to 'Û' +compose '>' 'a' to 'â' +compose '>' 'e' to 'ê' +compose '>' 'i' to 'î' +compose '>' 'o' to 'ô' +compose '>' 'u' to 'û' +compose '?' '?' to '¿' +compose 'A' 'E' to 'Æ' +compose 'A' 'O' to 'Å' +compose 'O' 'E' to '¼' +compose 'T' 'H' to 'Þ' +compose '\'' 'A' to 'Á' +compose '\'' 'C' to 'Ç' +compose '\'' 'E' to 'É' +compose '\'' 'I' to 'Í' +compose '\'' 'O' to 'Ó' +compose '\'' 'U' to 'Ú' +compose '\'' 'Y' to 'Ý' +compose '\'' '\'' to '\'' +compose '\'' 'a' to 'á' +compose '\'' 'c' to 'ç' +compose '\'' 'e' to 'é' +compose '\'' 'i' to 'í' +compose '\'' 'o' to 'ó' +compose '\'' 'u' to 'ú' +compose '\'' 'y' to 'ý' +compose '^' '-' to '¯' +compose '^' '.' to '·' +compose '^' '/' to '|' +compose '^' '0' to '°' +compose '^' '1' to '¹' +compose '^' '2' to '²' +compose '^' '3' to '³' +compose '^' 'A' to 'Â' +compose '^' 'E' to 'Ê' +compose '^' 'I' to 'Î' +compose '^' 'O' to 'Ô' +compose '^' 'U' to 'Û' +compose '^' '_' to '¯' +compose '^' 'a' to 'â' +compose '^' 'e' to 'ê' +compose '^' 'i' to 'î' +compose '^' 'o' to 'ô' +compose '^' 'u' to 'û' +compose '_' '^' to '¯' +compose '_' '_' to '¯' +compose '_' 'a' to 'ª' +compose '_' 'o' to 'º' +compose '`' 'A' to 'À' +compose '`' 'E' to 'È' +compose '`' 'I' to 'Ì' +compose '`' 'O' to 'Ò' +compose '`' 'U' to 'Ù' +compose '`' 'a' to 'à' +compose '`' 'e' to 'è' +compose '`' 'i' to 'ì' +compose '`' 'o' to 'ò' +compose '`' 'u' to 'ù' +compose 'a' 'e' to 'æ' +compose 'a' 'o' to 'å' +compose 'a' 't' to '@' +compose 'c' '0' to '©' +compose 'c' 'o' to '©' +compose 'e' '=' to '¤' +compose 'o' 'c' to '©' +compose 'o' 'e' to '½' +compose 'o' 'r' to '®' +compose 'o' 's' to '§' +compose 's' '0' to '§' +compose 's' '1' to '¹' +compose 's' '2' to '²' +compose 's' '3' to '³' +compose 's' 'o' to '§' +compose 't' 'h' to 'þ' +compose 'v' 'l' to '|' +compose '|' 'c' to '¢' +compose '~' 'A' to 'Ã' +compose '~' 'N' to 'Ñ' +compose '~' 'O' to 'Õ' +compose '~' 'a' to 'ã' +compose '~' 'n' to 'ñ' +compose '~' 'o' to 'õ' +compose '°' 'A' to 'Å' +compose '°' 'a' to 'å' diff --git a/console-setup/compose.ISO-8859-16.inc b/console-setup/compose.ISO-8859-16.inc new file mode 100644 index 0000000..96c38ae --- /dev/null +++ b/console-setup/compose.ISO-8859-16.inc @@ -0,0 +1 @@ +# Compose sequences for ISO-8859-16 diff --git a/console-setup/compose.ISO-8859-2.inc b/console-setup/compose.ISO-8859-2.inc new file mode 100644 index 0000000..40734c3 --- /dev/null +++ b/console-setup/compose.ISO-8859-2.inc @@ -0,0 +1,165 @@ +# Compose sequences for ISO-8859-2 +compose '!' 'p' to '¶' +compose '!' 's' to '§' +compose '"' '"' to '¨' +compose '"' 'A' to 'Ä' +compose '"' 'E' to 'Ë' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'a' to 'ä' +compose '"' 'e' to 'ë' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' '0' to '°' +compose '*' 'U' to 'Ù' +compose '*' 'u' to 'ù' +compose '+' '+' to '#' +compose ',' ',' to '¸' +compose ',' 'A' to '¡' +compose ',' 'C' to 'Ç' +compose ',' 'E' to 'Ê' +compose ',' 'S' to 'ª' +compose ',' 'T' to 'Þ' +compose ',' 'a' to '±' +compose ',' 'c' to 'ç' +compose ',' 'e' to 'ê' +compose ',' 's' to 'º' +compose ',' 't' to 'þ' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '-' to '­' +compose '-' ':' to '÷' +compose '-' 'D' to 'Ð' +compose '-' 'd' to 'ð' +compose '.' '.' to 'ÿ' +compose '.' 'C' to 'Å' +compose '.' 'E' to 'Ì' +compose '.' 'I' to '©' +compose '.' 'U' to 'Ù' +compose '.' 'Z' to '¯' +compose '.' 'c' to 'å' +compose '.' 'e' to 'ì' +compose '.' 'i' to '¹' +compose '.' 'u' to 'ù' +compose '.' 'z' to '¿' +compose '.' ' ' to 'ÿ' +compose '.' 'ÿ' to 'ÿ' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' '^' to '|' +compose '0' 's' to '§' +compose '0' 'x' to '¤' +compose ':' '-' to '÷' +compose '<' '/' to '\\' +compose '<' '<' to '·' +compose '<' 'C' to 'È' +compose '<' 'D' to 'Ï' +compose '<' 'E' to 'Ì' +compose '<' 'L' to '¥' +compose '<' 'N' to 'Ò' +compose '<' 'R' to 'Ø' +compose '<' 'S' to '©' +compose '<' 'T' to '«' +compose '<' 'Z' to '®' +compose '<' 'c' to 'è' +compose '<' 'd' to 'ï' +compose '<' 'e' to 'ì' +compose '<' 'l' to 'µ' +compose '<' 'n' to 'ò' +compose '<' 'r' to 'ø' +compose '<' 's' to '¹' +compose '<' 't' to '»' +compose '<' 'z' to '¾' +compose '>' 'A' to 'Â' +compose '>' 'I' to 'Î' +compose '>' 'O' to 'Ô' +compose '>' 'a' to 'â' +compose '>' 'i' to 'î' +compose '>' 'o' to 'ô' +compose 'A' 'U' to 'Ã' +compose 'L' '-' to '£' +compose 'O' 'E' to '¼' +compose 'Z' '.' to '¯' +compose '\'' 'A' to 'Á' +compose '\'' 'C' to 'Æ' +compose '\'' 'E' to 'É' +compose '\'' 'I' to 'Í' +compose '\'' 'L' to 'Å' +compose '\'' 'N' to 'Ñ' +compose '\'' 'O' to 'Ó' +compose '\'' 'R' to 'À' +compose '\'' 'S' to '¦' +compose '\'' 'U' to 'Ú' +compose '\'' 'Y' to 'Ý' +compose '\'' 'Z' to '¬' +compose '\'' '\'' to '½' +compose '\'' 'a' to 'á' +compose '\'' 'c' to 'æ' +compose '\'' 'e' to 'é' +compose '\'' 'i' to 'í' +compose '\'' 'l' to 'å' +compose '\'' 'n' to 'ñ' +compose '\'' 'o' to 'ó' +compose '\'' 'r' to 'à' +compose '\'' 's' to '¶' +compose '\'' 'u' to 'ú' +compose '\'' 'y' to 'ý' +compose '\'' 'z' to '¼' +compose '^' '/' to '|' +compose '^' 'A' to 'Â' +compose '^' 'I' to 'Î' +compose '^' 'O' to 'Ô' +compose '^' 'a' to 'â' +compose '^' 'i' to 'î' +compose '^' 'o' to 'ô' +compose '_' ' ' to '¯' +compose 'a' 'U' to 'ã' +compose 'l' '-' to '³' +compose 'o' 'e' to '½' +compose 'o' 'x' to '¤' +compose 's' '0' to '§' +compose 's' 'o' to '§' +compose 'v' 'l' to '|' +compose 'x' '0' to '¤' +compose 'x' 'o' to '¤' +compose 'z' '.' to '¿' +compose '¢' 'A' to 'Ã' +compose '¢' 'a' to 'ã' +compose '°' 'A' to 'Å' +compose '°' 'U' to 'Ù' +compose '°' 'a' to 'å' +compose '°' 'u' to 'ù' +compose '°' ' ' to '°' +compose '°' '°' to '°' +compose '²' 'A' to '¡' +compose '²' 'E' to 'Ê' +compose '²' 'a' to '±' +compose '²' 'e' to 'ê' +compose '·' 'C' to 'È' +compose '·' 'D' to 'Ï' +compose '·' 'E' to 'Ì' +compose '·' 'L' to '¥' +compose '·' 'N' to 'Ò' +compose '·' 'R' to 'Ø' +compose '·' 'S' to '©' +compose '·' 'T' to '«' +compose '·' 'Z' to '®' +compose '·' 'c' to 'è' +compose '·' 'd' to 'ï' +compose '·' 'e' to 'ì' +compose '·' 'l' to 'µ' +compose '·' 'n' to 'ò' +compose '·' 'r' to 'ø' +compose '·' 's' to '¹' +compose '·' 't' to '»' +compose '·' 'z' to '¾' +compose '¸' 'C' to 'Ç' +compose '¸' 'S' to 'ª' +compose '¸' 'T' to 'Þ' +compose '¸' 'c' to 'ç' +compose '¸' 's' to 'º' +compose '¸' 't' to 'þ' diff --git a/console-setup/compose.ISO-8859-3.inc b/console-setup/compose.ISO-8859-3.inc new file mode 100644 index 0000000..5e0daef --- /dev/null +++ b/console-setup/compose.ISO-8859-3.inc @@ -0,0 +1,167 @@ +# Compose sequences for ISO-8859-3 +compose '!' 's' to '§' +compose '"' '"' to '¨' +compose '"' 'A' to 'Ä' +compose '"' 'E' to 'Ë' +compose '"' 'I' to 'Ï' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'Y' to '¾' +compose '"' 'a' to 'ä' +compose '"' 'e' to 'ë' +compose '"' 'i' to 'ï' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '"' 'y' to 'ÿ' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose '(' 'G' to '«' +compose '(' 'U' to 'Ý' +compose '(' 'g' to '»' +compose '(' 'r' to '®' +compose '(' 'u' to 'ý' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' '0' to '°' +compose '+' '+' to '#' +compose ',' ',' to '¸' +compose ',' 'C' to 'Ç' +compose ',' 'S' to 'ª' +compose ',' 'c' to 'ç' +compose ',' 's' to 'º' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '-' to '­' +compose '-' ':' to '÷' +compose '-' 'A' to 'Ã' +compose '-' 'D' to 'Ð' +compose '-' 'H' to '¡' +compose '-' 'O' to 'Õ' +compose '-' 'a' to 'ã' +compose '-' 'd' to 'ð' +compose '-' 'h' to '±' +compose '-' 'l' to '£' +compose '-' 'o' to 'õ' +compose '-' 'y' to '¥' +compose '.' '.' to '·' +compose '.' 'C' to 'Å' +compose '.' 'G' to 'Õ' +compose '.' 'I' to '©' +compose '.' 'Z' to '¯' +compose '.' '^' to '·' +compose '.' 'c' to 'å' +compose '.' 'g' to 'õ' +compose '.' 'i' to '¹' +compose '.' 'z' to '¿' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' '^' to '|' +compose '/' 'u' to 'µ' +compose '0' 's' to '§' +compose '2' 's' to '²' +compose '3' 's' to '³' +compose ':' '-' to '÷' +compose '<' '/' to '\\' +compose '=' 'c' to '¤' +compose '=' 'e' to '¤' +compose '=' 'l' to '£' +compose '=' 'y' to '¥' +compose '>' 'A' to 'Â' +compose '>' 'C' to 'Æ' +compose '>' 'E' to 'Ê' +compose '>' 'G' to 'Ø' +compose '>' 'H' to '¦' +compose '>' 'I' to 'Î' +compose '>' 'J' to '¬' +compose '>' 'O' to 'Ô' +compose '>' 'S' to 'Þ' +compose '>' 'U' to 'Û' +compose '>' 'a' to 'â' +compose '>' 'c' to 'æ' +compose '>' 'e' to 'ê' +compose '>' 'g' to 'ø' +compose '>' 'h' to '¶' +compose '>' 'i' to 'î' +compose '>' 'j' to '¼' +compose '>' 'o' to 'ô' +compose '>' 's' to 'þ' +compose '>' 'u' to 'û' +compose 'G' 'U' to '«' +compose '\'' 'A' to 'Á' +compose '\'' 'E' to 'É' +compose '\'' 'I' to 'Í' +compose '\'' 'O' to 'Ó' +compose '\'' 'U' to 'Ú' +compose '\'' 'Y' to 'Ý' +compose '\'' '\'' to '´' +compose '\'' 'a' to 'á' +compose '\'' 'e' to 'é' +compose '\'' 'i' to 'í' +compose '\'' 'o' to 'ó' +compose '\'' 'u' to 'ú' +compose '\'' 'y' to 'ý' +compose '^' '.' to '·' +compose '^' '/' to '|' +compose '^' '0' to '°' +compose '^' '2' to '²' +compose '^' '3' to '³' +compose '^' 'A' to 'Â' +compose '^' 'C' to 'Æ' +compose '^' 'E' to 'Ê' +compose '^' 'G' to 'Ø' +compose '^' 'H' to '¦' +compose '^' 'I' to 'Î' +compose '^' 'J' to '¬' +compose '^' 'O' to 'Ô' +compose '^' 'S' to 'Þ' +compose '^' 'U' to 'Û' +compose '^' 'a' to 'â' +compose '^' 'c' to 'æ' +compose '^' 'e' to 'ê' +compose '^' 'g' to 'ø' +compose '^' 'h' to '¶' +compose '^' 'i' to 'î' +compose '^' 'j' to '¼' +compose '^' 'o' to 'ô' +compose '^' 's' to 'þ' +compose '^' 'u' to 'û' +compose '`' 'A' to 'À' +compose '`' 'E' to 'È' +compose '`' 'I' to 'Ì' +compose '`' 'O' to 'Ò' +compose '`' 'U' to 'Ù' +compose '`' 'a' to 'à' +compose '`' 'e' to 'è' +compose '`' 'i' to 'ì' +compose '`' 'o' to 'ò' +compose '`' 'u' to 'ù' +compose 'g' 'U' to '»' +compose 'o' 'r' to '®' +compose 's' '0' to '§' +compose 's' 'o' to '§' +compose 'u' 'u' to 'ý' +compose 'v' 'l' to '|' +compose '~' 'A' to 'Ã' +compose '~' 'O' to 'Õ' +compose '~' 'a' to 'ã' +compose '~' 'o' to 'õ' +compose '¢' 'G' to '«' +compose '¢' 'U' to 'Ý' +compose '¢' 'g' to '»' +compose '¢' 'u' to 'ý' +compose '¨' 'A' to 'Ä' +compose '¨' 'E' to 'Ë' +compose '¨' 'I' to 'Ï' +compose '¨' 'O' to 'Ö' +compose '¨' 'U' to 'Ü' +compose '¨' 'Y' to '¾' +compose '¨' 'a' to 'ä' +compose '¨' 'e' to 'ë' +compose '¨' 'i' to 'ï' +compose '¨' 'o' to 'ö' +compose '¨' 'u' to 'ü' +compose '¨' 'y' to 'ÿ' +compose '°' 'A' to 'Å' +compose '°' 'a' to 'å' +compose '¸' 'S' to 'ª' +compose '¸' 's' to 'º' diff --git a/console-setup/compose.ISO-8859-4.inc b/console-setup/compose.ISO-8859-4.inc new file mode 100644 index 0000000..c95e946 --- /dev/null +++ b/console-setup/compose.ISO-8859-4.inc @@ -0,0 +1,125 @@ +# Compose sequences for ISO-8859-4 +compose '!' 's' to '§' +compose '"' '"' to '¨' +compose '"' 'A' to 'Ä' +compose '"' 'E' to 'Ë' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'a' to 'ä' +compose '"' 'e' to 'ë' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '*' '0' to '°' +compose '*' 'A' to 'Å' +compose '*' 'a' to 'å' +compose ',' ',' to '¸' +compose ',' 'A' to '¡' +compose ',' 'E' to 'Ê' +compose ',' 'G' to '«' +compose ',' 'I' to 'Ç' +compose ',' 'K' to 'Ó' +compose ',' 'L' to '¦' +compose ',' 'N' to 'Ñ' +compose ',' 'R' to '£' +compose ',' 'U' to 'Ù' +compose ',' 'a' to '±' +compose ',' 'e' to 'ê' +compose ',' 'g' to '»' +compose ',' 'i' to 'ç' +compose ',' 'k' to 'ó' +compose ',' 'l' to '¶' +compose ',' 'n' to 'ñ' +compose ',' 'r' to '³' +compose ',' 'u' to 'ù' +compose '-' '-' to '­' +compose '-' ':' to '÷' +compose '-' 'A' to 'À' +compose '-' 'D' to 'Ð' +compose '-' 'E' to 'ª' +compose '-' 'I' to 'Ï' +compose '-' 'O' to 'Ò' +compose '-' 'U' to 'Þ' +compose '-' '^' to '¯' +compose '-' 'a' to 'à' +compose '-' 'd' to 'ð' +compose '-' 'e' to 'º' +compose '-' 'i' to 'ï' +compose '-' 'o' to 'ò' +compose '-' 'u' to 'þ' +compose '.' '.' to 'ÿ' +compose '.' 'E' to 'Ì' +compose '.' 'e' to 'ì' +compose '.' 'ÿ' to 'ÿ' +compose '/' 'O' to 'Ø' +compose '/' 'T' to '¬' +compose '/' 'o' to 'ø' +compose '/' 't' to '¼' +compose '0' 's' to '§' +compose ':' '-' to '÷' +compose '<' '<' to '·' +compose '<' 'C' to 'È' +compose '<' 'S' to '©' +compose '<' 'Z' to '®' +compose '<' 'c' to 'è' +compose '<' 's' to '¹' +compose '<' 'z' to '¾' +compose '>' 'A' to 'Â' +compose '>' 'I' to 'Î' +compose '>' 'O' to 'Ô' +compose '>' 'U' to 'Û' +compose '>' 'a' to 'â' +compose '>' 'i' to 'î' +compose '>' 'o' to 'ô' +compose '>' 'u' to 'û' +compose 'A' 'E' to 'Æ' +compose 'N' 'G' to '½' +compose 'T' '-' to '¬' +compose '\'' 'A' to 'Á' +compose '\'' 'E' to 'É' +compose '\'' 'I' to 'Í' +compose '\'' 'U' to 'Ú' +compose '\'' '\'' to '´' +compose '\'' 'a' to 'á' +compose '\'' 'e' to 'é' +compose '\'' 'i' to 'í' +compose '\'' 'u' to 'ú' +compose '^' '-' to '¯' +compose '^' 'A' to 'Â' +compose '^' 'I' to 'Î' +compose '^' 'O' to 'Ô' +compose '^' 'U' to 'Û' +compose '^' '_' to '¯' +compose '^' 'a' to 'â' +compose '^' 'i' to 'î' +compose '^' 'o' to 'ô' +compose '^' 'u' to 'û' +compose '_' 'A' to 'À' +compose '_' 'E' to 'ª' +compose '_' 'I' to 'Ï' +compose '_' 'O' to 'Ò' +compose '_' 'U' to 'Þ' +compose '_' '^' to '¯' +compose '_' '_' to '¯' +compose '_' 'a' to 'à' +compose '_' 'e' to 'º' +compose '_' 'i' to 'ï' +compose '_' 'o' to 'ò' +compose '_' 'u' to 'þ' +compose '_' '¯' to '¯' +compose 'a' 'e' to 'æ' +compose 'n' 'g' to '¿' +compose 'o' 'x' to '¤' +compose 's' 'o' to '§' +compose 't' '-' to '¼' +compose 'x' '0' to '¤' +compose 'x' 'o' to '¤' +compose '~' 'A' to 'Ã' +compose '~' 'I' to '¥' +compose '~' 'O' to 'Õ' +compose '~' 'U' to 'Ý' +compose '~' 'a' to 'ã' +compose '~' 'i' to 'µ' +compose '~' 'o' to 'õ' +compose '~' 'u' to 'ý' +compose '°' 'A' to 'Å' +compose '°' 'a' to 'å' diff --git a/console-setup/compose.ISO-8859-5.inc b/console-setup/compose.ISO-8859-5.inc new file mode 100644 index 0000000..90c4f07 --- /dev/null +++ b/console-setup/compose.ISO-8859-5.inc @@ -0,0 +1 @@ +# Compose sequences for ISO-8859-5 diff --git a/console-setup/compose.ISO-8859-6.inc b/console-setup/compose.ISO-8859-6.inc new file mode 100644 index 0000000..1a4f93f --- /dev/null +++ b/console-setup/compose.ISO-8859-6.inc @@ -0,0 +1 @@ +# Compose sequences for ISO-8859-6 diff --git a/console-setup/compose.ISO-8859-7.inc b/console-setup/compose.ISO-8859-7.inc new file mode 100644 index 0000000..6142e6c --- /dev/null +++ b/console-setup/compose.ISO-8859-7.inc @@ -0,0 +1,91 @@ +# Compose sequences for ISO-8859-7 +compose '!' '^' to '¦' +compose '!' 's' to '§' +compose '"' '"' to '¨' +compose '"' 'É' to 'Ú' +compose '"' 'Õ' to 'Û' +compose '"' 'é' to 'ú' +compose '"' 'õ' to 'û' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose '(' 'c' to '©' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' '0' to '°' +compose '+' '+' to '#' +compose '+' '-' to '±' +compose ',' '-' to '¬' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '+' to '±' +compose '-' ',' to '¬' +compose '-' '-' to '­' +compose '-' 'l' to '£' +compose '.' '.' to '·' +compose '.' '^' to '·' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' '^' to '|' +compose '0' 's' to '§' +compose '1' '2' to '½' +compose '2' 's' to '²' +compose '<' '/' to '\\' +compose '<' '<' to '«' +compose '<' '\'' to '¡' +compose '=' 'l' to '£' +compose '>' '>' to '»' +compose '>' '\'' to '¢' +compose '\'' '<' to '¡' +compose '\'' '>' to '¢' +compose '\'' '\'' to '´' +compose '\'' 'Á' to '¶' +compose '\'' 'Å' to '¸' +compose '\'' 'Ç' to '¹' +compose '\'' 'É' to 'º' +compose '\'' 'Ï' to '¼' +compose '\'' 'Õ' to '¾' +compose '\'' 'Ù' to '¿' +compose '\'' 'á' to 'Ü' +compose '\'' 'å' to 'Ý' +compose '\'' 'ç' to 'Þ' +compose '\'' 'é' to 'ß' +compose '\'' 'ï' to 'ü' +compose '\'' 'õ' to 'ý' +compose '\'' 'ù' to 'þ' +compose '^' '!' to '¦' +compose '^' '.' to '·' +compose '^' '/' to '|' +compose '^' '0' to '°' +compose '^' '2' to '²' +compose '^' '3' to '³' +compose 'a' 't' to '@' +compose 'b' 'v' to '¦' +compose 'c' '0' to '©' +compose 'c' 'o' to '©' +compose 'o' 'c' to '©' +compose 'o' 's' to '§' +compose 's' '0' to '§' +compose 's' '3' to '³' +compose 's' 'o' to '§' +compose 'v' 'b' to '¦' +compose 'v' 'l' to '|' +compose '|' '|' to '¦' +compose '~' '~' to '¯' +compose 'Á' '\'' to '¶' +compose 'Å' '\'' to '¸' +compose 'Ç' '\'' to '¹' +compose 'É' '"' to 'Ú' +compose 'É' '\'' to 'º' +compose 'Ï' '\'' to '¼' +compose 'Õ' '"' to 'Û' +compose 'Õ' '\'' to '¾' +compose 'Ù' '\'' to '¿' +compose 'á' '\'' to 'Ü' +compose 'å' '\'' to 'Ý' +compose 'ç' '\'' to 'Þ' +compose 'é' '"' to 'ú' +compose 'é' '\'' to 'ß' +compose 'ï' '\'' to 'ü' +compose 'õ' '"' to 'û' +compose 'õ' '\'' to 'ý' +compose 'ù' '\'' to 'þ' diff --git a/console-setup/compose.ISO-8859-8.inc b/console-setup/compose.ISO-8859-8.inc new file mode 100644 index 0000000..1fbb453 --- /dev/null +++ b/console-setup/compose.ISO-8859-8.inc @@ -0,0 +1 @@ +# Compose sequences for ISO-8859-8 diff --git a/console-setup/compose.ISO-8859-9.inc b/console-setup/compose.ISO-8859-9.inc new file mode 100644 index 0000000..54738d7 --- /dev/null +++ b/console-setup/compose.ISO-8859-9.inc @@ -0,0 +1,174 @@ +# Compose sequences for ISO-8859-9 +compose '!' '!' to '¡' +compose '!' 'p' to '¶' +compose '!' 's' to '§' +compose '"' '"' to '¨' +compose '"' 'A' to 'Ä' +compose '"' 'E' to 'Ë' +compose '"' 'I' to 'Ï' +compose '"' 'O' to 'Ö' +compose '"' 'U' to 'Ü' +compose '"' 'Y' to '¾' +compose '"' 'a' to 'ä' +compose '"' 'e' to 'ë' +compose '"' 'i' to 'ï' +compose '"' 'o' to 'ö' +compose '"' 'u' to 'ü' +compose '"' 'y' to 'ÿ' +compose '(' '(' to '[' +compose '(' '-' to '{' +compose '(' 'G' to 'Ð' +compose '(' 'c' to '©' +compose '(' 'g' to 'ð' +compose '(' 'r' to '®' +compose ')' ')' to ']' +compose ')' '-' to '}' +compose '*' '0' to '°' +compose '*' 'A' to 'Å' +compose '*' 'a' to 'å' +compose '+' '+' to '#' +compose '+' '-' to '±' +compose ',' ',' to '¸' +compose ',' '-' to '¬' +compose ',' 'C' to 'Ç' +compose ',' 'S' to 'Þ' +compose ',' 'c' to 'ç' +compose ',' 's' to 'þ' +compose '-' '(' to '{' +compose '-' ')' to '}' +compose '-' '+' to '±' +compose '-' ',' to '¬' +compose '-' '-' to '­' +compose '-' ':' to '÷' +compose '-' 'A' to 'Ã' +compose '-' 'D' to 'Ð' +compose '-' 'N' to 'Ñ' +compose '-' 'O' to 'Õ' +compose '-' '^' to '¯' +compose '-' 'a' to 'ã' +compose '-' 'd' to 'ð' +compose '-' 'l' to '£' +compose '-' 'n' to 'ñ' +compose '-' 'o' to 'õ' +compose '-' 'y' to '¥' +compose '.' '.' to '·' +compose '.' 'I' to 'Ý' +compose '.' '^' to '·' +compose '.' 'i' to 'ý' +compose '/' '/' to '\\' +compose '/' '<' to '\\' +compose '/' 'O' to 'Ø' +compose '/' '^' to '|' +compose '/' 'c' to '¢' +compose '/' 'o' to 'ø' +compose '/' 'u' to 'µ' +compose '0' 'c' to '©' +compose '0' 's' to '§' +compose '3' 's' to '³' +compose ':' '-' to '÷' +compose '<' '/' to '\\' +compose '<' '<' to '«' +compose '<' 'Z' to '´' +compose '<' 'z' to '¸' +compose '=' 'c' to '¤' +compose '=' 'e' to '¤' +compose '=' 'l' to '£' +compose '=' 'y' to '¥' +compose '>' '>' to '»' +compose '>' 'A' to 'Â' +compose '>' 'E' to 'Ê' +compose '>' 'I' to 'Î' +compose '>' 'O' to 'Ô' +compose '>' 'U' to 'Û' +compose '>' 'a' to 'â' +compose '>' 'e' to 'ê' +compose '>' 'i' to 'î' +compose '>' 'o' to 'ô' +compose '>' 'u' to 'û' +compose '?' '?' to '¿' +compose 'A' 'E' to 'Æ' +compose 'G' 'U' to 'Ð' +compose 'T' 'H' to 'Þ' +compose '\'' 'A' to 'Á' +compose '\'' 'E' to 'É' +compose '\'' 'I' to 'Í' +compose '\'' 'O' to 'Ó' +compose '\'' 'U' to 'Ú' +compose '\'' 'Y' to 'Ý' +compose '\'' '\'' to '´' +compose '\'' 'a' to 'á' +compose '\'' 'e' to 'é' +compose '\'' 'i' to 'í' +compose '\'' 'o' to 'ó' +compose '\'' 'u' to 'ú' +compose '\'' 'y' to 'ý' +compose '^' '-' to '¯' +compose '^' '.' to '·' +compose '^' '/' to '|' +compose '^' '0' to '°' +compose '^' '1' to '¹' +compose '^' '2' to '²' +compose '^' '3' to '³' +compose '^' 'A' to 'Â' +compose '^' 'E' to 'Ê' +compose '^' 'I' to 'Î' +compose '^' 'O' to 'Ô' +compose '^' 'U' to 'Û' +compose '^' '_' to '¯' +compose '^' 'a' to 'â' +compose '^' 'e' to 'ê' +compose '^' 'i' to 'î' +compose '^' 'o' to 'ô' +compose '^' 'u' to 'û' +compose '_' '^' to '¯' +compose '_' '_' to '¯' +compose '_' 'a' to 'ª' +compose '_' 'o' to 'º' +compose '`' 'A' to 'À' +compose '`' 'E' to 'È' +compose '`' 'I' to 'Ì' +compose '`' 'O' to 'Ò' +compose '`' 'U' to 'Ù' +compose '`' 'a' to 'à' +compose '`' 'e' to 'è' +compose '`' 'i' to 'ì' +compose '`' 'o' to 'ò' +compose '`' 'u' to 'ù' +compose 'a' 'e' to 'æ' +compose 'c' '0' to '©' +compose 'c' 'o' to '©' +compose 'g' 'U' to 'ð' +compose 'l' 'v' to '|' +compose 'o' 'c' to '©' +compose 'o' 'e' to '¼' +compose 'r' 'o' to '®' +compose 's' '1' to '¹' +compose 's' '2' to '²' +compose 's' 'o' to '§' +compose 't' 'h' to 'þ' +compose 'v' 'Z' to '´' +compose 'v' 'l' to '|' +compose 'v' 'z' to '¸' +compose '|' 'c' to '¢' +compose '~' 'A' to 'Ã' +compose '~' 'N' to 'Ñ' +compose '~' 'O' to 'Õ' +compose '~' 'a' to 'ã' +compose '~' 'n' to 'ñ' +compose '~' 'o' to 'õ' +compose '¨' 'A' to 'Ä' +compose '¨' 'E' to 'Ë' +compose '¨' 'I' to 'Ï' +compose '¨' 'O' to 'Ö' +compose '¨' 'U' to 'Ü' +compose '¨' 'Y' to '¾' +compose '¨' 'a' to 'ä' +compose '¨' 'e' to 'ë' +compose '¨' 'i' to 'ï' +compose '¨' 'o' to 'ö' +compose '¨' 'u' to 'ü' +compose '¨' 'y' to 'ÿ' +compose '°' 'A' to 'Å' +compose '°' 'a' to 'å' +compose '¸' 'S' to 'Þ' +compose '¸' 's' to 'þ' diff --git a/console-setup/compose.KOI8-R.inc b/console-setup/compose.KOI8-R.inc new file mode 100644 index 0000000..da0c7ae --- /dev/null +++ b/console-setup/compose.KOI8-R.inc @@ -0,0 +1 @@ +# Compose sequences for KOI8-R diff --git a/console-setup/compose.KOI8-U.inc b/console-setup/compose.KOI8-U.inc new file mode 100644 index 0000000..38e9127 --- /dev/null +++ b/console-setup/compose.KOI8-U.inc @@ -0,0 +1 @@ +# Compose sequences for KOI8-U diff --git a/console-setup/compose.TIS-620.inc b/console-setup/compose.TIS-620.inc new file mode 100644 index 0000000..4b229cc --- /dev/null +++ b/console-setup/compose.TIS-620.inc @@ -0,0 +1 @@ +# Compose sequences for TIS-620 diff --git a/console-setup/compose.VISCII.inc b/console-setup/compose.VISCII.inc new file mode 100644 index 0000000..b9576ab --- /dev/null +++ b/console-setup/compose.VISCII.inc @@ -0,0 +1 @@ +# Compose sequences for VISCII diff --git a/console-setup/remap.inc b/console-setup/remap.inc new file mode 100644 index 0000000..a5475c6 --- /dev/null +++ b/console-setup/remap.inc @@ -0,0 +1,32 @@ +# The content of this file will be appended to the keyboard layout. +# The following is an example how to make Alt+j switch to to the next +# console and Alt+k switch to the previous console. + +# Uncomment the following lines for Linux. Notice that everything is +# replicated for all possible values of the modifiers shiftl, shiftr +# and ctrll (shiftl and shiftr are used for groups 1..4 of XKB and +# ctrll is used to fix the broken CapsLock when Linux console is in +# Unicode mode). + +# alt keycode 36 = Incr_Console +# shiftl alt keycode 36 = Incr_Console +# shiftr alt keycode 36 = Incr_Console +# shiftr shiftl alt keycode 36 = Incr_Console +# ctrll alt keycode 36 = Incr_Console +# ctrll shiftl alt keycode 36 = Incr_Console +# ctrll shiftr alt keycode 36 = Incr_Console +# ctrll shiftr shiftl alt keycode 36 = Incr_Console +# +# alt keycode 37 = Decr_Console +# shiftl alt keycode 37 = Decr_Console +# shiftr alt keycode 37 = Decr_Console +# shiftr shiftl alt keycode 37 = Decr_Console +# ctrll alt keycode 37 = Decr_Console +# ctrll shiftl alt keycode 37 = Decr_Console +# ctrll shiftr alt keycode 37 = Decr_Console +# ctrll shiftr shiftl alt keycode 37 = Decr_Console + +# For the same result on FreeBSD uncomment the following lines: + +# 036 'j' 'J' nl nl nscr nscr nl nl C +# 037 'k' 'K' vt vt pscr pscr nl nl C diff --git a/cron.d/.placeholder b/cron.d/.placeholder new file mode 100644 index 0000000..76cb8d0 --- /dev/null +++ b/cron.d/.placeholder @@ -0,0 +1,2 @@ +# DO NOT EDIT OR REMOVE +# This file is a simple placeholder to keep dpkg from removing this directory diff --git a/cron.daily/.placeholder b/cron.daily/.placeholder new file mode 100644 index 0000000..76cb8d0 --- /dev/null +++ b/cron.daily/.placeholder @@ -0,0 +1,2 @@ +# DO NOT EDIT OR REMOVE +# This file is a simple placeholder to keep dpkg from removing this directory diff --git a/cron.daily/apt b/cron.daily/apt new file mode 100755 index 0000000..ee0761b --- /dev/null +++ b/cron.daily/apt @@ -0,0 +1,507 @@ +#!/bin/sh +#set -e +# +# This file understands the following apt configuration variables: +# Values here are the default. +# Create /etc/apt/apt.conf.d/02periodic file to set your preference. +# +# Dir "/"; +# - RootDir for all configuration files +# +# Dir::Cache "var/cache/apt/"; +# - Set apt package cache directory +# +# Dir::Cache::Archives "archives/"; +# - Set package archive directory +# +# APT::Periodic::Enable "1"; +# - Enable the update/upgrade script (0=disable) +# +# APT::Periodic::BackupArchiveInterval "0"; +# - Backup after n-days if archive contents changed.(0=disable) +# +# APT::Periodic::BackupLevel "3"; +# - Backup level.(0=disable), 1 is invalid. +# +# Dir::Cache::Backup "backup/"; +# - Set periodic package backup directory +# +# APT::Archives::MaxAge "0"; (old, deprecated) +# APT::Periodic::MaxAge "0"; (new) +# - Set maximum allowed age of a cache package file. If a cache +# package file is older it is deleted (0=disable) +# +# APT::Archives::MinAge "2"; (old, deprecated) +# APT::Periodic::MinAge "2"; (new) +# - Set minimum age of a package file. If a file is younger it +# will not be deleted (0=disable). Useful to prevent races +# and to keep backups of the packages for emergency. +# +# APT::Archives::MaxSize "0"; (old, deprecated) +# APT::Periodic::MaxSize "0"; (new) +# - Set maximum size of the cache in MB (0=disable). If the cache +# is bigger, cached package files are deleted until the size +# requirement is met (the oldest packages will be deleted +# first). +# +# APT::Periodic::Update-Package-Lists "0"; +# - Do "apt-get update" automatically every n-days (0=disable) +# +# APT::Periodic::Download-Upgradeable-Packages "0"; +# - Do "apt-get upgrade --download-only" every n-days (0=disable) +# +# APT::Periodic::Download-Upgradeable-Packages-Debdelta "1"; +# - Use debdelta-upgrade to download updates if available (0=disable) +# +# APT::Periodic::Unattended-Upgrade "0"; +# - Run the "unattended-upgrade" security upgrade script +# every n-days (0=disabled) +# Requires the package "unattended-upgrades" and will write +# a log in /var/log/unattended-upgrades +# +# APT::Periodic::AutocleanInterval "0"; +# - Do "apt-get autoclean" every n-days (0=disable) +# +# APT::Periodic::Verbose "0"; +# - Send report mail to root +# 0: no report (or null string) +# 1: progress report (actually any string) +# 2: + command outputs (remove -qq, remove 2>/dev/null, add -d) +# 3: + trace on + +check_stamp() +{ + stamp="$1" + interval="$2" + + if [ $interval -eq 0 ]; then + debug_echo "check_stamp: interval=0" + # treat as no time has passed + return 1 + fi + + if [ ! -f $stamp ]; then + debug_echo "check_stamp: missing time stamp file: $stamp." + # treat as enough time has passed + return 0 + fi + + # compare midnight today to midnight the day the stamp was updated + stamp_file="$stamp" + stamp=$(date --date=$(date -r $stamp_file --iso-8601) +%s 2>/dev/null) + if [ "$?" != "0" ]; then + # Due to some timezones returning 'invalid date' for midnight on + # certain dates (e.g. America/Sao_Paulo), if date returns with error + # remove the stamp file and return 0. See coreutils bug: + # http://lists.gnu.org/archive/html/bug-coreutils/2007-09/msg00176.html + rm -f "$stamp_file" + return 0 + fi + + now=$(date --date=$(date --iso-8601) +%s 2>/dev/null) + if [ "$?" != "0" ]; then + # As above, due to some timezones returning 'invalid date' for midnight + # on certain dates (e.g. America/Sao_Paulo), if date returns with error + # return 0. + return 0 + fi + + delta=$(($now-$stamp)) + + # interval is in days, convert to sec. + interval=$(($interval*60*60*24)) + debug_echo "check_stamp: interval=$interval, now=$now, stamp=$stamp, delta=$delta (sec)" + + # remove timestamps a day (or more) in the future and force re-check + if [ $stamp -gt $(($now+86400)) ]; then + echo "WARNING: file $stamp_file has a timestamp in the future: $stamp" + rm -f "$stamp_file" + return 0 + fi + + if [ $delta -ge $interval ]; then + return 0 + fi + + return 1 +} + +update_stamp() +{ + stamp="$1" + touch $stamp +} + +# we check here if autoclean was enough sizewise +check_size_constraints() +{ + MaxAge=0 + eval $(apt-config shell MaxAge APT::Archives::MaxAge) + eval $(apt-config shell MaxAge APT::Periodic::MaxAge) + + MinAge=2 + eval $(apt-config shell MinAge APT::Archives::MinAge) + eval $(apt-config shell MinAge APT::Periodic::MinAge) + + MaxSize=0 + eval $(apt-config shell MaxSize APT::Archives::MaxSize) + eval $(apt-config shell MaxSize APT::Periodic::MaxSize) + + Cache="/var/cache/apt/archives/" + eval $(apt-config shell Cache Dir::Cache::archives/d) + + # sanity check + if [ -z "$Cache" ]; then + echo "empty Dir::Cache::archives, exiting" + exit + fi + + # check age + if [ ! $MaxAge -eq 0 ] && [ ! $MinAge -eq 0 ]; then + debug_echo "aged: ctime <$MaxAge and mtime <$MaxAge and ctime>$MinAge and mtime>$MinAge" + find $Cache -name "*.deb" \( -mtime +$MaxAge -and -ctime +$MaxAge \) -and -not \( -mtime -$MinAge -or -ctime -$MinAge \) -print0 | xargs -r -0 rm -f + elif [ ! $MaxAge -eq 0 ]; then + debug_echo "aged: ctime <$MaxAge and mtime <$MaxAge only" + find $Cache -name "*.deb" -ctime +$MaxAge -and -mtime +$MaxAge -print0 | xargs -r -0 rm -f + else + debug_echo "skip aging since MaxAge is 0" + fi + + # check size + if [ ! $MaxSize -eq 0 ]; then + # maxSize is in MB + MaxSize=$(($MaxSize*1024)) + + #get current time + now=$(date --date=$(date --iso-8601) +%s) + MinAge=$(($MinAge*24*60*60)) + + # reverse-sort by mtime + for file in $(ls -rt $Cache/*.deb 2>/dev/null); do + du=$(du -s $Cache) + size=${du%%/*} + # check if the cache is small enough + if [ $size -lt $MaxSize ]; then + debug_echo "end remove by archive size: size=$size < $MaxSize" + break + fi + + # check for MinAge of the file + if [ $MinAge -ne 0 ]; then + # check both ctime and mtime + mtime=$(stat -c %Y $file) + ctime=$(stat -c %Z $file) + if [ $mtime -gt $ctime ]; then + delta=$(($now-$mtime)) + else + delta=$(($now-$ctime)) + fi + if [ $delta -le $MinAge ]; then + debug_echo "skip remove by archive size: $file, delta=$delta < $MinAge" + break + else + # delete oldest file + debug_echo "remove by archive size: $file, delta=$delta >= $MinAge (sec), size=$size >= $MaxSize" + rm -f $file + fi + fi + done + fi +} + +# deal with the Apt::Periodic::BackupArchiveInterval +do_cache_backup() +{ + BackupArchiveInterval="$1" + if [ $BackupArchiveInterval -eq 0 ]; then + return + fi + + # Set default values and normalize + CacheDir="/var/cache/apt" + eval $(apt-config shell CacheDir Dir::Cache/d) + CacheDir=${CacheDir%/} + if [ -z "$CacheDir" ]; then + debug_echo "practically empty Dir::Cache, exiting" + return 0 + fi + + Cache="${CacheDir}/archives/" + eval $(apt-config shell Cache Dir::Cache::Archives/d) + if [ -z "$Cache" ]; then + debug_echo "practically empty Dir::Cache::archives, exiting" + return 0 + fi + + BackupLevel=3 + eval $(apt-config shell BackupLevel APT::Periodic::BackupLevel) + if [ $BackupLevel -le 1 ]; then + BackupLevel=2 ; + fi + + Back="${CacheDir}/backup/" + eval $(apt-config shell Back Dir::Cache::Backup/d) + if [ -z "$Back" ]; then + echo "practically empty Dir::Cache::Backup, exiting" 1>&2 + return + fi + + CacheArchive="$(basename "${Cache}")" + test -n "${CacheArchive}" || CacheArchive="archives" + BackX="${Back}${CacheArchive}/" + for x in $(seq 0 1 $((${BackupLevel}-1))); do + eval "Back${x}=${Back}${x}/" + done + + # backup after n-days if archive contents changed. + # (This uses hardlink to save disk space) + BACKUP_ARCHIVE_STAMP=/var/lib/apt/periodic/backup-archive-stamp + if check_stamp $BACKUP_ARCHIVE_STAMP $BackupArchiveInterval; then + if [ $({(cd $Cache 2>/dev/null; find . -name "*.deb"); (cd $Back0 2>/dev/null;find . -name "*.deb") ;}| sort|uniq -u|wc -l) -ne 0 ]; then + mkdir -p $Back + rm -rf $Back$((${BackupLevel}-1)) + for y in $(seq $((${BackupLevel}-1)) -1 1); do + eval BackY=${Back}$y + eval BackZ=${Back}$(($y-1)) + if [ -e $BackZ ]; then + mv -f $BackZ $BackY ; + fi + done + cp -la $Cache $Back ; mv -f $BackX $Back0 + update_stamp $BACKUP_ARCHIVE_STAMP + debug_echo "backup with hardlinks. (success)" + else + debug_echo "skip backup since same content." + fi + else + debug_echo "skip backup since too new." + fi +} + +# sleep for a random interval of time (default 30min) +# (some code taken from cron-apt, thanks) +random_sleep() +{ + RandomSleep=1800 + eval $(apt-config shell RandomSleep APT::Periodic::RandomSleep) + if [ $RandomSleep -eq 0 ]; then + return + fi + if [ -z "$RANDOM" ] ; then + # A fix for shells that do not have this bash feature. + RANDOM=$(( $(dd if=/dev/urandom bs=2 count=1 2> /dev/null | cksum | cut -d' ' -f1) % 32767 )) + fi + TIME=$(($RANDOM % $RandomSleep)) + debug_echo "sleeping for $TIME seconds" + sleep $TIME +} + + +debug_echo() +{ + # Display message if $VERBOSE >= 1 + if [ "$VERBOSE" -ge 1 ]; then + echo $1 1>&2 + fi +} + +check_power(){ + # laptop check, on_ac_power returns: + # 0 (true) System is on main power + # 1 (false) System is not on main power + # 255 (false) Power status could not be determined + # Desktop systems always return 255 it seems + if which on_ac_power >/dev/null; then + on_ac_power + POWER=$? + if [ $POWER -eq 1 ]; then + debug_echo "exit: system NOT on main power" + return 1 + elif [ $POWER -ne 0 ]; then + debug_echo "power status ($POWER) undetermined, continuing" + fi + debug_echo "system is on main power." + fi + return 0 +} + +# ------------------------ main ---------------------------- + +if test -r /var/lib/apt/extended_states; then + # Backup the 7 last versions of APT's extended_states file + # shameless copy from dpkg cron + if cd /var/backups ; then + if ! cmp -s apt.extended_states.0 /var/lib/apt/extended_states; then + cp -p /var/lib/apt/extended_states apt.extended_states + savelog -c 7 apt.extended_states >/dev/null + fi + fi +fi + +# check apt-config existence +if ! which apt-config >/dev/null ; then + exit 0 +fi + +# check if the user really wants to do something +AutoAptEnable=1 # default is yes +eval $(apt-config shell AutoAptEnable APT::Periodic::Enable) + +if [ $AutoAptEnable -eq 0 ]; then + exit 0 +fi + +# Set VERBOSE mode from apt-config (or inherit from environment) +VERBOSE=0 +eval $(apt-config shell VERBOSE APT::Periodic::Verbose) +debug_echo "verbose level $VERBOSE" +if [ "$VERBOSE" -le 2 ]; then + # quiet for 0,1,2 + XSTDOUT=">/dev/null" + XSTDERR="2>/dev/null" + XAPTOPT="-qq" + XUUPOPT="" +else + XSTDOUT="" + XSTDERR="" + XAPTOPT="" + XUUPOPT="-d" +fi +if [ "$VERBOSE" -ge 3 ]; then + # trace output + set -x +fi + +check_power || exit 0 + +# check if we can lock the cache and if the cache is clean +if which apt-get >/dev/null && ! eval apt-get check $XAPTOPT $XSTDERR ; then + debug_echo "error encountered in cron job with \"apt-get check\"." + exit 0 +fi + +# Global current time in seconds since 1970-01-01 00:00:00 UTC +now=$(date +%s) + +# Support old Archive for compatibility. +# Document only Periodic for all controlling parameters of this script. + +UpdateInterval=0 +eval $(apt-config shell UpdateInterval APT::Periodic::Update-Package-Lists) + +DownloadUpgradeableInterval=0 +eval $(apt-config shell DownloadUpgradeableInterval APT::Periodic::Download-Upgradeable-Packages) + +UnattendedUpgradeInterval=0 +eval $(apt-config shell UnattendedUpgradeInterval APT::Periodic::Unattended-Upgrade) + +AutocleanInterval=0 +eval $(apt-config shell AutocleanInterval APT::Periodic::AutocleanInterval) + +BackupArchiveInterval=0 +eval $(apt-config shell BackupArchiveInterval APT::Periodic::BackupArchiveInterval) + +Debdelta=1 +eval $(apt-config shell Debdelta APT::Periodic::Download-Upgradeable-Packages-Debdelta) + +# check if we actually have to do anything that requires locking the cache +if [ $UpdateInterval -eq 0 ] && + [ $DownloadUpgradeableInterval -eq 0 ] && + [ $UnattendedUpgradeInterval -eq 0 ] && + [ $BackupArchiveInterval -eq 0 ] && + [ $AutocleanInterval -eq 0 ]; then + + # check cache size + check_size_constraints + + exit 0 +fi + +# deal with BackupArchiveInterval +do_cache_backup $BackupArchiveInterval + +# sleep random amount of time to avoid hitting the +# mirrors at the same time +random_sleep +check_power || exit 0 + +# include default system language so that "apt-get update" will +# fetch the right translated package descriptions +if [ -r /etc/default/locale ]; then + . /etc/default/locale + export LANG LANGUAGE LC_MESSAGES LC_ALL +fi + +# update package lists +UPDATED=0 +UPDATE_STAMP=/var/lib/apt/periodic/update-stamp +if check_stamp $UPDATE_STAMP $UpdateInterval; then + if eval apt-get $XAPTOPT -y update $XSTDERR; then + debug_echo "download updated metadata (success)." + if which dbus-send >/dev/null && pidof dbus-daemon >/dev/null; then + if dbus-send --system / app.apt.dbus.updated boolean:true ; then + debug_echo "send dbus signal (success)" + else + debug_echo "send dbus signal (error)" + fi + else + debug_echo "dbus signal not send (command not available)" + fi + update_stamp $UPDATE_STAMP + UPDATED=1 + else + debug_echo "download updated metadata (error)" + fi +else + debug_echo "download updated metadata (not run)." +fi + +# download all upgradeable packages (if it is requested) +DOWNLOAD_UPGRADEABLE_STAMP=/var/lib/apt/periodic/download-upgradeable-stamp +if [ $UPDATED -eq 1 ] && check_stamp $DOWNLOAD_UPGRADEABLE_STAMP $DownloadUpgradeableInterval; then + if [ $Debdelta -eq 1 ]; then + debdelta-upgrade >/dev/null 2>&1 || true + fi + if eval apt-get $XAPTOPT -y -d dist-upgrade $XSTDERR; then + update_stamp $DOWNLOAD_UPGRADEABLE_STAMP + debug_echo "download upgradable (success)" + else + debug_echo "download upgradable (error)" + fi +else + debug_echo "download upgradable (not run)" +fi + +# auto upgrade all upgradeable packages +UPGRADE_STAMP=/var/lib/apt/periodic/upgrade-stamp +if which unattended-upgrade >/dev/null && check_stamp $UPGRADE_STAMP $UnattendedUpgradeInterval; then + if unattended-upgrade $XUUPOPT; then + update_stamp $UPGRADE_STAMP + debug_echo "unattended-upgrade (success)" + else + debug_echo "unattended-upgrade (error)" + fi +else + debug_echo "unattended-upgrade (not run)" +fi + +# autoclean package archive +AUTOCLEAN_STAMP=/var/lib/apt/periodic/autoclean-stamp +if check_stamp $AUTOCLEAN_STAMP $AutocleanInterval; then + if eval apt-get $XAPTOPT -y autoclean $XSTDERR; then + debug_echo "autoclean (success)." + update_stamp $AUTOCLEAN_STAMP + else + debug_echo "autoclean (error)" + fi +else + debug_echo "autoclean (not run)" +fi + +# check cache size +check_size_constraints + +# +# vim: set sts=4 ai : +# + diff --git a/cron.daily/aptitude b/cron.daily/aptitude new file mode 100755 index 0000000..d5953d9 --- /dev/null +++ b/cron.daily/aptitude @@ -0,0 +1,11 @@ +#!/bin/sh + +bak=/var/backups + +# Shamelessly ripped from /etc/cron.daily/standard +if test -f /var/lib/aptitude/pkgstates && cd $bak ; then + if ! cmp -s aptitude.pkgstates.0 /var/lib/aptitude/pkgstates ; then + cp -p /var/lib/aptitude/pkgstates aptitude.pkgstates + savelog -c 7 aptitude.pkgstates > /dev/null + fi +fi diff --git a/cron.daily/bsdmainutils b/cron.daily/bsdmainutils new file mode 100755 index 0000000..e65cbd3 --- /dev/null +++ b/cron.daily/bsdmainutils @@ -0,0 +1,16 @@ +#!/bin/sh +# /etc/cron.daily/calendar: BSD mainutils calendar daily maintenance script +# Written by Austin Donnelly + +. /etc/default/bsdmainutils + +[ x$RUN_DAILY = xtrue ] || exit 0 + +[ -x /usr/sbin/sendmail ] || exit 0 + +if [ ! -x /usr/bin/cpp ]; then + echo "The cpp package is needed to run calendar." + exit 1 +fi + +/usr/bin/calendar -a diff --git a/cron.daily/dpkg b/cron.daily/dpkg new file mode 100755 index 0000000..c0aefb8 --- /dev/null +++ b/cron.daily/dpkg @@ -0,0 +1,47 @@ +#!/bin/sh + +dbdir=/var/lib/dpkg + +# Backup the 7 last versions of dpkg databases containing user data. +if cd /var/backups ; then + # We backup all relevant database files if any has changed, so that + # the rotation number always contains an internally consistent set. + dbchanged=no + dbfiles="arch status diversions statoverride" + for db in $dbfiles ; do + if ! cmp -s dpkg.${db}.0 $dbdir/$db ; then + dbchanged=yes + break; + fi + done + if [ "$dbchanged" = "yes" ] ; then + for db in $dbfiles ; do + [ -e $dbdir/$db ] || continue + cp -p $dbdir/$db dpkg.$db + savelog -c 7 dpkg.$db >/dev/null + done + fi + + # The alternatives database is independent from the dpkg database. + dbalt=alternatives + + # Switch the alternatives database backups from xz to gzip, as the latter + # is Essential and we can rely on it being always present, using xz here + # is not worth the trouble, disk space savings, or possible additional + # dependencies. + for dbseq in `seq 1 6` ; do + dbfile=${dbalt}.tar.${dbseq} + [ -e "${dbfile}.xz" ] || continue + unxz ${dbfile}.xz + gzip -9 $dbfile + done + + # XXX: Ideally we'd use --warning=none instead of discarding stderr, but + # as of GNU tar 1.27.1, it does not seem to work reliably (see #749307). + if ! test -e ${dbalt}.tar.0 || + ! tar -df ${dbalt}.tar.0 -C $dbdir $dbalt >/dev/null 2>&1 ; + then + tar -cf ${dbalt}.tar -C $dbdir $dbalt >/dev/null 2>&1 + savelog -c 7 ${dbalt}.tar >/dev/null + fi +fi diff --git a/cron.daily/logrotate b/cron.daily/logrotate new file mode 100755 index 0000000..f4f56a9 --- /dev/null +++ b/cron.daily/logrotate @@ -0,0 +1,4 @@ +#!/bin/sh + +test -x /usr/sbin/logrotate || exit 0 +/usr/sbin/logrotate /etc/logrotate.conf diff --git a/cron.daily/man-db b/cron.daily/man-db new file mode 100755 index 0000000..c374604 --- /dev/null +++ b/cron.daily/man-db @@ -0,0 +1,44 @@ +#!/bin/sh +# +# man-db cron daily + +set -e + +iosched_idle= +# Don't try to change I/O priority in a vserver or OpenVZ. +if ! egrep -q '(envID|VxID):.*[1-9]' /proc/self/status && \ + ([ ! -d /proc/vz ] || [ -d /proc/bc ]); then + iosched_idle='--iosched idle' +fi + +if ! [ -d /var/cache/man ]; then + # Recover from deletion, per FHS. + mkdir -p /var/cache/man + chown man:root /var/cache/man || true + chmod 2755 /var/cache/man +fi + +# expunge old catman pages which have not been read in a week +if [ ! -d /run/systemd/system ] && [ -d /var/cache/man ]; then + cd / + if ! dpkg-statoverride --list /var/cache/man >/dev/null 2>&1; then + find /var/cache/man -ignore_readdir_race ! -user man -print0 | \ + xargs -r0 chown -f man || true + fi + start-stop-daemon --start --pidfile /dev/null --startas /bin/sh \ + --oknodo --chuid man $iosched_idle -- -c \ + "find /var/cache/man -type f -name '*.gz' -atime +6 -print0 | \ + xargs -r0 rm -f" +fi + +# regenerate man database +if [ -x /usr/bin/mandb ]; then + # --pidfile /dev/null so it always starts; mandb isn't really a daemon, + # but we want to start it like one. + start-stop-daemon --start --pidfile /dev/null \ + --startas /usr/bin/mandb --oknodo --chuid man \ + $iosched_idle \ + -- --no-purge --quiet +fi + +exit 0 diff --git a/cron.daily/passwd b/cron.daily/passwd new file mode 100755 index 0000000..4778bf0 --- /dev/null +++ b/cron.daily/passwd @@ -0,0 +1,9 @@ +#!/bin/sh + +cd /var/backups || exit 0 + +for FILE in passwd group shadow gshadow; do + test -f /etc/$FILE || continue + cmp -s $FILE.bak /etc/$FILE && continue + cp -p /etc/$FILE $FILE.bak && chmod 600 $FILE.bak +done diff --git a/cron.hourly/.placeholder b/cron.hourly/.placeholder new file mode 100644 index 0000000..76cb8d0 --- /dev/null +++ b/cron.hourly/.placeholder @@ -0,0 +1,2 @@ +# DO NOT EDIT OR REMOVE +# This file is a simple placeholder to keep dpkg from removing this directory diff --git a/cron.monthly/.placeholder b/cron.monthly/.placeholder new file mode 100644 index 0000000..76cb8d0 --- /dev/null +++ b/cron.monthly/.placeholder @@ -0,0 +1,2 @@ +# DO NOT EDIT OR REMOVE +# This file is a simple placeholder to keep dpkg from removing this directory diff --git a/cron.weekly/.placeholder b/cron.weekly/.placeholder new file mode 100644 index 0000000..76cb8d0 --- /dev/null +++ b/cron.weekly/.placeholder @@ -0,0 +1,2 @@ +# DO NOT EDIT OR REMOVE +# This file is a simple placeholder to keep dpkg from removing this directory diff --git a/cron.weekly/man-db b/cron.weekly/man-db new file mode 100755 index 0000000..b890d38 --- /dev/null +++ b/cron.weekly/man-db @@ -0,0 +1,31 @@ +#!/bin/sh +# +# man-db cron weekly + +set -e + +iosched_idle= +# Don't try to change I/O priority in a vserver or OpenVZ. +if ! egrep -q '(envID|VxID):.*[1-9]' /proc/self/status && \ + ([ ! -d /proc/vz ] || [ -d /proc/bc ]); then + iosched_idle='--iosched idle' +fi + +if ! [ -d /var/cache/man ]; then + # Recover from deletion, per FHS. + mkdir -p /var/cache/man + chown man:root /var/cache/man || true + chmod 2755 /var/cache/man +fi + +# regenerate man database +if [ -x /usr/bin/mandb ]; then + # --pidfile /dev/null so it always starts; mandb isn't really a daemon, + # but we want to start it like one. + start-stop-daemon --start --pidfile /dev/null \ + --startas /usr/bin/mandb --oknodo --chuid man \ + $iosched_idle \ + -- --quiet +fi + +exit 0 diff --git a/crontab b/crontab new file mode 100644 index 0000000..95edd9b --- /dev/null +++ b/crontab @@ -0,0 +1,15 @@ +# /etc/crontab: system-wide crontab +# Unlike any other crontab you don't have to run the `crontab' +# command to install the new version when you edit this file +# and files in /etc/cron.d. These files also have username fields, +# that none of the other crontabs do. + +SHELL=/bin/sh +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin + +# m h dom mon dow user command +17 * * * * root cd / && run-parts --report /etc/cron.hourly +25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) +47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) +52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) +# diff --git a/dbus-1/system.d/org.freedesktop.hostname1.conf b/dbus-1/system.d/org.freedesktop.hostname1.conf new file mode 100644 index 0000000..46b4aad --- /dev/null +++ b/dbus-1/system.d/org.freedesktop.hostname1.conf @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + diff --git a/dbus-1/system.d/org.freedesktop.locale1.conf b/dbus-1/system.d/org.freedesktop.locale1.conf new file mode 100644 index 0000000..79d0ecd --- /dev/null +++ b/dbus-1/system.d/org.freedesktop.locale1.conf @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + diff --git a/dbus-1/system.d/org.freedesktop.login1.conf b/dbus-1/system.d/org.freedesktop.login1.conf new file mode 100644 index 0000000..1318328 --- /dev/null +++ b/dbus-1/system.d/org.freedesktop.login1.conf @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dbus-1/system.d/org.freedesktop.machine1.conf b/dbus-1/system.d/org.freedesktop.machine1.conf new file mode 100644 index 0000000..3a77c70 --- /dev/null +++ b/dbus-1/system.d/org.freedesktop.machine1.conf @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dbus-1/system.d/org.freedesktop.systemd1.conf b/dbus-1/system.d/org.freedesktop.systemd1.conf new file mode 100644 index 0000000..9dfca81 --- /dev/null +++ b/dbus-1/system.d/org.freedesktop.systemd1.conf @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dbus-1/system.d/org.freedesktop.timedate1.conf b/dbus-1/system.d/org.freedesktop.timedate1.conf new file mode 100644 index 0000000..36557d5 --- /dev/null +++ b/dbus-1/system.d/org.freedesktop.timedate1.conf @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + diff --git a/debconf.conf b/debconf.conf new file mode 100644 index 0000000..549c1d5 --- /dev/null +++ b/debconf.conf @@ -0,0 +1,83 @@ +# This is the main config file for debconf. It tells debconf where to +# store data. The format of this file is a set of stanzas. Each stanza +# except the first sets up a database for debconf to use. For details, see +# debconf.conf(5) (in the debconf-doc package). +# +# So first things first. This first stanza gives the names of two databases. + +# Debconf will use this database to store the data you enter into it, +# and some other dynamic data. +Config: configdb +# Debconf will use this database to store static template data. +Templates: templatedb + +# World-readable, and accepts everything but passwords. +Name: config +Driver: File +Mode: 644 +Reject-Type: password +Filename: /var/cache/debconf/config.dat + +# Not world readable (the default), and accepts only passwords. +Name: passwords +Driver: File +Mode: 600 +Backup: false +Required: false +Accept-Type: password +Filename: /var/cache/debconf/passwords.dat + +# Set up the configdb database. By default, it consists of a stack of two +# databases, one to hold passwords and one for everything else. +Name: configdb +Driver: Stack +Stack: config, passwords + +# Set up the templatedb database, which is a single flat text file +# by default. +Name: templatedb +Driver: File +Mode: 644 +Filename: /var/cache/debconf/templates.dat + +# Well that was pretty straightforward, and it will be enough for most +# people's needs, but debconf's database drivers can be used to do much +# more interesting things. For example, suppose you want to use config +# data from another host, which is mounted over nfs or perhaps the database +# is accessed via LDAP. You don't want to write to the remote debconf database, +# just read from it, so you still need a local database for local changes. +# +# A remote NFS mounted database, read-only. It is optional; if debconf +# fails to use it it will not abort. +#Name: remotedb +#Driver: DirTree +#Directory: /mnt/otherhost/var/cache/debconf/config +#Readonly: true +#Required: false +# +# A remote LDAP database. It is also read-only. The password is really +# only necessary if the database is not accessible anonymously. +# Option KeyByKey instructs the backend to retrieve keys from the LDAP +# server individually (when they are requested), instead of loading all +# keys at startup. The default is 0, and should only be enabled if you +# want to track accesses to individual keys on the LDAP server side. +#Name: remotedb +#Driver: LDAP +#Server: remotehost +#BaseDN: cn=debconf,dc=domain,dc=com +#BindDN: uid=admin,dc=domain,dc=com +#BindPasswd: secret +#KeyByKey: 0 +# +# A stack consisting of two databases. Values will be read from +# the first database in the stack to contain a value. In this example, +# writes always go to the first database. +#Name: fulldb +#Driver: Stack +#Stack: configdb, remotedb +# +# In this example, we'd use Config: fulldb at the top of the file +# to make it use the combination of the databases. +# +# Even more complex and interesting setups are possible, see the +# debconf.conf(5) page for details. diff --git a/debian_version b/debian_version new file mode 100644 index 0000000..2983cad --- /dev/null +++ b/debian_version @@ -0,0 +1 @@ +8.2 diff --git a/default/acpid b/default/acpid new file mode 100644 index 0000000..c651a78 --- /dev/null +++ b/default/acpid @@ -0,0 +1,11 @@ +# Options to pass to acpid +# +# OPTIONS are appended to the acpid command-line +#OPTIONS="" + +# Linux kernel modules to load before starting acpid +# +# MODULES is a space separated list of modules to load, or "all" to load all +# acpi drivers, or commented out to load no module +#MODULES="battery ac processor button fan thermal video" +#MODULES="all" diff --git a/default/bsdmainutils b/default/bsdmainutils new file mode 100644 index 0000000..e4ac054 --- /dev/null +++ b/default/bsdmainutils @@ -0,0 +1,4 @@ +# Uncomment the following line if you'd like all of your users' +# ~/calendar files to be checked daily. Calendar will send them mail +# to remind them of upcoming events. See calendar(1) for more details. +#RUN_DAILY=true diff --git a/default/console-setup b/default/console-setup new file mode 100644 index 0000000..dc3ea7f --- /dev/null +++ b/default/console-setup @@ -0,0 +1,16 @@ +# CONFIGURATION FILE FOR SETUPCON + +# Consult the console-setup(5) manual page. + +ACTIVE_CONSOLES="/dev/tty[1-6]" + +CHARMAP="UTF-8" + +CODESET="Lat15" +FONTFACE="Fixed" +FONTSIZE="8x16" + +VIDEOMODE= + +# The following is an example how to use a braille font +# FONT='lat9w-08.psf.gz brl-8x8.psf' diff --git a/default/cron b/default/cron new file mode 100644 index 0000000..f62b7be --- /dev/null +++ b/default/cron @@ -0,0 +1,28 @@ +# Cron configuration options + +# Whether to read the system's default environment files (if present) +# If set to "yes", cron will set a proper mail charset from the +# locale information. If set to something other than 'yes', the default +# charset 'C' (canonical name: ANSI_X3.4-1968) will be used. +# +# This has no effect on tasks running under cron; their environment can +# only be changed via PAM or from within the crontab; see crontab(5). +READ_ENV="yes" + +# Extra options for cron, see cron(8) +# +# For example, to enable LSB name support in /etc/cron.d/, use +# EXTRA_OPTS='-l' +# +# Or, to log standard messages, plus jobs with exit status != 0: +# EXTRA_OPTS='-L 5' +# +# For quick reference, the currently available log levels are: +# 0 no logging (errors are logged regardless) +# 1 log start of jobs +# 2 log end of jobs +# 4 log jobs with exit status != 0 +# 8 log the process identifier of child process (in all logs) +# +#EXTRA_OPTS="" + diff --git a/default/devpts b/default/devpts new file mode 100644 index 0000000..e10e371 --- /dev/null +++ b/default/devpts @@ -0,0 +1,5 @@ +# GID of the `tty' group +TTYGRP=5 + +# Set to 600 to have `mesg n' be the default +TTYMODE=620 diff --git a/default/grub b/default/grub new file mode 100644 index 0000000..b3a3467 --- /dev/null +++ b/default/grub @@ -0,0 +1,32 @@ +# If you change this file, run 'update-grub' afterwards to update +# /boot/grub/grub.cfg. +# For full documentation of the options in this file, see: +# info -f grub -n 'Simple configuration' + +GRUB_DEFAULT=0 +GRUB_TIMEOUT=5 +GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` +GRUB_CMDLINE_LINUX_DEFAULT="quiet" +GRUB_CMDLINE_LINUX="" + +# Uncomment to enable BadRAM filtering, modify to suit your needs +# This works with Linux (no patch required) and with any kernel that obtains +# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) +#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" + +# Uncomment to disable graphical terminal (grub-pc only) +#GRUB_TERMINAL=console + +# The resolution used on graphical terminal +# note that you can use only modes which your graphic card supports via VBE +# you can see them in real GRUB with the command `vbeinfo' +#GRUB_GFXMODE=640x480 + +# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux +#GRUB_DISABLE_LINUX_UUID=true + +# Uncomment to disable generation of recovery mode menu entries +#GRUB_DISABLE_RECOVERY="true" + +# Uncomment to get a beep at grub start +#GRUB_INIT_TUNE="480 440 1" diff --git a/default/halt b/default/halt new file mode 100644 index 0000000..21bc119 --- /dev/null +++ b/default/halt @@ -0,0 +1,2 @@ +# Default behaviour of shutdown -h / halt. Set to "halt" or "poweroff". +HALT=poweroff diff --git a/default/hwclock b/default/hwclock new file mode 100644 index 0000000..dcf5451 --- /dev/null +++ b/default/hwclock @@ -0,0 +1,19 @@ +# Defaults for the hwclock init script. See hwclock(5) and hwclock(8). + +# This is used to specify that the hardware clock incapable of storing +# years outside the range of 1994-1999. Set to yes if the hardware is +# broken or no if working correctly. +#BADYEAR=no + +# Set this to yes if it is possible to access the hardware clock, +# or no if it is not. +#HWCLOCKACCESS=yes + +# Set this to any options you might need to give to hwclock, such +# as machine hardware clock type for Alphas. +#HWCLOCKPARS= + +# Set this to the hardware clock device you want to use, it should +# probably match the CONFIG_RTC_HCTOSYS_DEVICE kernel config option. +#HCTOSYS_DEVICE=rtc0 + diff --git a/default/keyboard b/default/keyboard new file mode 100644 index 0000000..f578fd8 --- /dev/null +++ b/default/keyboard @@ -0,0 +1,10 @@ +# KEYBOARD CONFIGURATION FILE + +# Consult the keyboard(5) manual page. + +XKBMODEL="pc105" +XKBLAYOUT="de" +XKBVARIANT="" +XKBOPTIONS="" + +BACKSPACE="guess" diff --git a/default/locale b/default/locale new file mode 100644 index 0000000..ffcbf47 --- /dev/null +++ b/default/locale @@ -0,0 +1,3 @@ +# File generated by update-locale +LANG=en_US.UTF-8 +LANGUAGE="en_US:en" diff --git a/default/networking b/default/networking new file mode 100644 index 0000000..469f4ca --- /dev/null +++ b/default/networking @@ -0,0 +1,11 @@ +# Configuration for networking init script being run during +# the boot sequence + +# Set to 'no' to skip interfaces configuration on boot +#CONFIGURE_INTERFACES=yes + +# Don't configure these interfaces. Shell wildcards supported/ +#EXCLUDE_INTERFACES= + +# Set to 'yes' to enable additional verbosity +#VERBOSE=no diff --git a/default/nss b/default/nss new file mode 100644 index 0000000..c43e88b --- /dev/null +++ b/default/nss @@ -0,0 +1,37 @@ +# /etc/default/nss +# This file can theoretically contain a bunch of customization variables +# for Name Service Switch in the GNU C library. For now there are only +# four variables: +# +# NETID_AUTHORITATIVE +# If set to TRUE, the initgroups() function will accept the information +# from the netid.byname NIS map as authoritative. This can speed up the +# function significantly if the group.byname map is large. The content +# of the netid.byname map is used AS IS. The system administrator has +# to make sure it is correctly generated. +#NETID_AUTHORITATIVE=TRUE +# +# SERVICES_AUTHORITATIVE +# If set to TRUE, the getservbyname{,_r}() function will assume +# services.byservicename NIS map exists and is authoritative, particularly +# that it contains both keys with /proto and without /proto for both +# primary service names and service aliases. The system administrator +# has to make sure it is correctly generated. +#SERVICES_AUTHORITATIVE=TRUE +# +# SETENT_BATCH_READ +# If set to TRUE, various setXXent() functions will read the entire +# database at once and then hand out the requests one by one from +# memory with every getXXent() call. Otherwise each getXXent() call +# might result into a network communication with the server to get +# the next entry. +#SETENT_BATCH_READ=TRUE +# +# ADJUNCT_AS_SHADOW +# If set to TRUE, the passwd routines in the NIS NSS module will not +# use the passwd.adjunct.byname tables to fill in the password data +# in the passwd structure. This is a security problem if the NIS +# server cannot be trusted to send the passwd.adjuct table only to +# privileged clients. Instead the passwd.adjunct.byname table is +# used to synthesize the shadow.byname table if it does not exist. +ADJUNCT_AS_SHADOW=TRUE diff --git a/default/rcS b/default/rcS new file mode 100644 index 0000000..694ffc7 --- /dev/null +++ b/default/rcS @@ -0,0 +1,24 @@ +# +# /etc/default/rcS +# +# Default settings for the scripts in /etc/rcS.d/ +# +# For information about these variables see the rcS(5) manual page. +# +# This file belongs to the "initscripts" package. + +# delete files in /tmp during boot older than x days. +# '0' means always, -1 or 'infinite' disables the feature +#TMPTIME=0 + +# spawn sulogin during boot, continue normal boot if not used in 30 seconds +#SULOGIN=no + +# do not allow users to log in until the boot has completed +#DELAYLOGIN=no + +# be more verbose during the boot process +#VERBOSE=no + +# automatically repair filesystems with inconsistencies during boot +#FSCKFIX=no diff --git a/default/rsync b/default/rsync new file mode 100644 index 0000000..13780c2 --- /dev/null +++ b/default/rsync @@ -0,0 +1,41 @@ +# defaults file for rsync daemon mode + +# start rsync in daemon mode from init.d script? +# only allowed values are "true", "false", and "inetd" +# Use "inetd" if you want to start the rsyncd from inetd, +# all this does is prevent the init.d script from printing a message +# about not starting rsyncd (you still need to modify inetd's config yourself). +RSYNC_ENABLE=false + +# which file should be used as the configuration file for rsync. +# This file is used instead of the default /etc/rsyncd.conf +# Warning: This option has no effect if the daemon is accessed +# using a remote shell. When using a different file for +# rsync you might want to symlink /etc/rsyncd.conf to +# that file. +# RSYNC_CONFIG_FILE= + +# what extra options to give rsync --daemon? +# that excludes the --daemon; that's always done in the init.d script +# Possibilities are: +# --address=123.45.67.89 (bind to a specific IP address) +# --port=8730 (bind to specified port; default 873) +RSYNC_OPTS='' + +# run rsyncd at a nice level? +# the rsync daemon can impact performance due to much I/O and CPU usage, +# so you may want to run it at a nicer priority than the default priority. +# Allowed values are 0 - 19 inclusive; 10 is a reasonable value. +RSYNC_NICE='' + +# run rsyncd with ionice? +# "ionice" does for IO load what "nice" does for CPU load. +# As rsync is often used for backups which aren't all that time-critical, +# reducing the rsync IO priority will benefit the rest of the system. +# See the manpage for ionice for allowed options. +# -c3 is recommended, this will run rsync IO at "idle" priority. Uncomment +# the next line to activate this. +# RSYNC_IONICE='-c3' + +# Don't forget to create an appropriate config file, +# else the daemon will not start. diff --git a/default/rsyslog b/default/rsyslog new file mode 100644 index 0000000..8ec3ea0 --- /dev/null +++ b/default/rsyslog @@ -0,0 +1,4 @@ +# Options for rsyslogd +# -x disables DNS lookups for remote messages +# See rsyslogd(8) for more details +RSYSLOGD_OPTIONS="" diff --git a/default/ssh b/default/ssh new file mode 100644 index 0000000..3040422 --- /dev/null +++ b/default/ssh @@ -0,0 +1,5 @@ +# Default settings for openssh-server. This file is sourced by /bin/sh from +# /etc/init.d/ssh. + +# Options to pass to sshd +SSHD_OPTS= diff --git a/default/tmpfs b/default/tmpfs new file mode 100644 index 0000000..a19ba71 --- /dev/null +++ b/default/tmpfs @@ -0,0 +1,33 @@ +# Configuration for tmpfs filesystems mounted in early boot, before +# filesystems from /etc/fstab are mounted. For information about +# these variables see the tmpfs(5) manual page. + +# /run is always mounted as a tmpfs on systems which support tmpfs +# mounts. + +# mount /run/lock as a tmpfs (separately from /run). Defaults to yes; +# set to no to disable (/run/lock will then be part of the /run tmpfs, +# if available). +#RAMLOCK=yes + +# mount /run/shm as a tmpfs (separately from /run). Defaults to yes; +# set to no to disable (/run/shm will then be part of the /run tmpfs, +# if available). +#RAMSHM=yes + +# mount /tmp as a tmpfs. Defaults to no; set to yes to enable (/tmp +# will be part of the root filesystem if disabled). /tmp may also be +# configured to be a separate mount in /etc/fstab. +#RAMTMP=no + +# Size limits. Please see tmpfs(5) for details on how to configure +# tmpfs size limits. +#TMPFS_SIZE=20%VM +#RUN_SIZE=10% +#LOCK_SIZE=5242880 # 5MiB +#SHM_SIZE= +#TMP_SIZE= + +# Mount tmpfs on /tmp if there is less than the limit size (in kiB) on +# the root filesystem (overriding RAMTMP). +#TMP_OVERFLOW_LIMIT=1024 diff --git a/default/useradd b/default/useradd new file mode 100644 index 0000000..a834fef --- /dev/null +++ b/default/useradd @@ -0,0 +1,37 @@ +# Default values for useradd(8) +# +# The SHELL variable specifies the default login shell on your +# system. +# Similar to DHSELL in adduser. However, we use "sh" here because +# useradd is a low level utility and should be as general +# as possible +SHELL=/bin/sh +# +# The default group for users +# 100=users on Debian systems +# Same as USERS_GID in adduser +# This argument is used when the -n flag is specified. +# The default behavior (when -n and -g are not specified) is to create a +# primary user group with the same name as the user being added to the +# system. +# GROUP=100 +# +# The default home directory. Same as DHOME for adduser +# HOME=/home +# +# The number of days after a password expires until the account +# is permanently disabled +# INACTIVE=-1 +# +# The default expire date +# EXPIRE= +# +# The SKEL variable specifies the directory containing "skeletal" user +# files; in other words, files such as a sample .profile that will be +# copied to the new user's home directory when it is created. +# SKEL=/etc/skel +# +# Defines whether the mail spool should be created while +# creating the account +# CREATE_MAIL_SPOOL=yes + diff --git a/deluser.conf b/deluser.conf new file mode 100644 index 0000000..fff8d81 --- /dev/null +++ b/deluser.conf @@ -0,0 +1,20 @@ +# /etc/deluser.conf: `deluser' configuration. + +# Remove home directory and mail spool when user is removed +REMOVE_HOME = 0 + +# Remove all files on the system owned by the user to be removed +REMOVE_ALL_FILES = 0 + +# Backup files before removing them. This options has only an effect if +# REMOVE_HOME or REMOVE_ALL_FILES is set. +BACKUP = 0 + +# target directory for the backup file +BACKUP_TO = "." + +# delete a group even there are still users in this group +ONLY_IF_EMPTY = 0 + +# exclude these filesystem types when searching for files of a user to backup +EXCLUDE_FSTYPES = "(proc|sysfs|usbfs|devpts|tmpfs|afs)" diff --git a/dhcp/dhclient-enter-hooks.d/resolvconf b/dhcp/dhclient-enter-hooks.d/resolvconf new file mode 100644 index 0000000..72b2be7 --- /dev/null +++ b/dhcp/dhclient-enter-hooks.d/resolvconf @@ -0,0 +1,81 @@ +# +# Script fragment to make dhclient supply nameserver information to resolvconf +# + +# Tips: +# * Be careful about changing the environment since this is sourced +# * This script fragment uses bash features +# * As of isc-dhcp-client 4.2 the "reason" (for running the script) can be one of the following. +# (Listed on man page:) MEDIUM(0) PREINIT(0) BOUND(M) RENEW(M) REBIND(M) REBOOT(M) EXPIRE(D) FAIL(D) RELEASE(D) STOP(D) NBI(-) TIMEOUT(M) +# (Also used in master script:) ARPCHECK(0), ARPSEND(0) +# (Also used in master script:) PREINIT6(0) BOUND6(M) RENEW6(M) REBIND6(M) DEPREF6(0) EXPIRE6(D) RELEASE6(D) STOP6(D) +# (0) = master script does not run make_resolv_conf +# (M) = master script runs make_resolv_conf +# (D) = master script downs interface +# (-) = master script does nothing with this + +if [ -x /sbin/resolvconf ] ; then + # For safety, first undefine the nasty default make_resolv_conf() + make_resolv_conf() { : ; } + case "$reason" in + BOUND|RENEW|REBIND|REBOOT|TIMEOUT) + # Define a resolvconf-compatible m_r_c() function + # It gets run later (or, in the TIMEOUT case, MAY get run later) + make_resolv_conf() { + local R + local N + R="" + if [ "$new_domain_name_servers" ] && [ "$new_domain_name" ] ; then + R="${R}domain $new_domain_name +" + fi + if [ "$new_domain_name_servers" ] && [ "$new_domain_search" ] ; then + R="${R}search $new_domain_search +" + fi + for N in $new_domain_name_servers ; do + R="${R}nameserver $N +" + done + [ ! "$interface" ] || echo -n "$R" | /sbin/resolvconf -a "${interface}.dhclient" + } + ;; + BOUND6|RENEW6|REBIND6) + # Define a resolvconf-compatible m_r_c() function + # It gets run later (or, in the TIMEOUT case, MAY get run later) + make_resolv_conf() { + local R + local N + local N_LOW + local ZONE_ID + R="" + if [ "$new_dhcp6_name_servers" ] && [ "$new_dhcp6_domain_search" ] ; then + R="${R}search $new_dhcp6_domain_search +" + fi + for N in $new_dhcp6_name_servers ; do + + # If the nameserver has a link-local address + # then add a zone ID (interface name) to it. + N_LOW="$(echo "$N" | tr '[:upper:]' '[:lower:]')" + if expr "$N_LOW" : ^fe80:: >/dev/null ; then + ZONE_ID="%$interface" + else + ZONE_ID="" + fi + R="${R}nameserver $N$ZONE_ID +" + done + [ ! "$interface" ] || echo -n "$R" | /sbin/resolvconf -a "${interface}.ip6.dhclient" + } + ;; + EXPIRE|FAIL|RELEASE|STOP) + # Delete resolv.conf info + [ ! "$interface" ] || /sbin/resolvconf -d "${interface}.dhclient" + ;; + EXPIRE6|RELEASE6|STOP6) + # Delete resolv.conf info + [ ! "$interface" ] || /sbin/resolvconf -d "${interface}.ip6.dhclient" + ;; + esac +fi diff --git a/dhcpcd.conf b/dhcpcd.conf new file mode 100644 index 0000000..22ca72a --- /dev/null +++ b/dhcpcd.conf @@ -0,0 +1,37 @@ +# A sample configuration for dhcpcd. +# See dhcpcd.conf(5) for details. + +# Gridscale Modifications +noipv4ll +#background +reboot 0 + +# Inform the DHCP server of our hostname for DDNS. +hostname + +# Use the hardware address of the interface for the Client ID. +#clientid +# or +# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361. +duid + +# Rapid commit support. +# Safe to enable by default because it requires the equivalent option set +# on the server to actually work. +option rapid_commit + +# A list of options to request from the DHCP server. +option domain_name_servers, domain_name, domain_search, host_name +option classless_static_routes +# Most distributions have NTP support. +option ntp_servers +# Respect the network MTU. +# Some interface drivers reset when changing the MTU so disabled by default. +#option interface_mtu + +# A ServerID is required by RFC2131. +require dhcp_server_identifier + +# A hook script is provided to lookup the hostname if not set by the DHCP +# server, but it should not be run by default. +nohook lookup-hostname diff --git a/dhcpcd.duid b/dhcpcd.duid new file mode 100644 index 0000000..e3fa5eb --- /dev/null +++ b/dhcpcd.duid @@ -0,0 +1 @@ +00:01:00:01:1e:5d:bf:af:1e:4a:7f:34:71:01 diff --git a/dictionaries-common/default.aff b/dictionaries-common/default.aff new file mode 120000 index 0000000..3be1bad --- /dev/null +++ b/dictionaries-common/default.aff @@ -0,0 +1 @@ +/usr/lib/ispell/american.aff \ No newline at end of file diff --git a/dictionaries-common/default.hash b/dictionaries-common/default.hash new file mode 120000 index 0000000..e9d3a0f --- /dev/null +++ b/dictionaries-common/default.hash @@ -0,0 +1 @@ +/usr/lib/ispell/american.hash \ No newline at end of file diff --git a/dictionaries-common/ispell-default b/dictionaries-common/ispell-default new file mode 120000 index 0000000..f4b786e --- /dev/null +++ b/dictionaries-common/ispell-default @@ -0,0 +1 @@ +/var/cache/dictionaries-common/ispell-default \ No newline at end of file diff --git a/dictionaries-common/words b/dictionaries-common/words new file mode 120000 index 0000000..1d20e7e --- /dev/null +++ b/dictionaries-common/words @@ -0,0 +1 @@ +/usr/share/dict/american-english \ No newline at end of file diff --git a/discover-modprobe.conf b/discover-modprobe.conf new file mode 100644 index 0000000..713c3e6 --- /dev/null +++ b/discover-modprobe.conf @@ -0,0 +1,13 @@ + +# $Progeny$ + +# Load modules for the following device types. Specify "all" +# to detect all device types. +types="all" + +# Don't ever load the foo, bar, or baz modules. +#skip="foo bar baz" + +# Lines below this point have been automatically added by +# discover-modprobe(8) to disable the loading of modules that have +# previously crashed the machine: diff --git a/discover.conf.d/00discover b/discover.conf.d/00discover new file mode 100644 index 0000000..69ec3a1 --- /dev/null +++ b/discover.conf.d/00discover @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/dpkg/dpkg.cfg b/dpkg/dpkg.cfg new file mode 100644 index 0000000..ba898ee --- /dev/null +++ b/dpkg/dpkg.cfg @@ -0,0 +1,13 @@ +# dpkg configuration file +# +# This file can contain default options for dpkg. All command-line +# options are allowed. Values can be specified by putting them after +# the option, separated by whitespace and/or an `=' sign. +# + +# Do not enable debsig-verify by default; since the distribution is not using +# embedded signatures, debsig-verify would reject all packages. +no-debsig + +# Log status changes and actions to a file. +log /var/log/dpkg.log diff --git a/dpkg/origins/debian b/dpkg/origins/debian new file mode 100644 index 0000000..91f6ed1 --- /dev/null +++ b/dpkg/origins/debian @@ -0,0 +1,3 @@ +Vendor: Debian +Vendor-URL: http://www.debian.org/ +Bugs: debbugs://bugs.debian.org diff --git a/dpkg/origins/default b/dpkg/origins/default new file mode 120000 index 0000000..b2f7fd3 --- /dev/null +++ b/dpkg/origins/default @@ -0,0 +1 @@ +debian \ No newline at end of file diff --git a/emacs/site-start.d/00debian-vars.el b/emacs/site-start.d/00debian-vars.el new file mode 100644 index 0000000..a9db99c --- /dev/null +++ b/emacs/site-start.d/00debian-vars.el @@ -0,0 +1,57 @@ +;; 00debian-vars.el +;; +;; Initialize some emacs variables from debian policy files. +;; +;; Copyright (C) 1997, Frederic Lepied +;; +;; original Author: Frederic Lepied +;; enhanced and documented by: Mark Eichin + +;;============================================================================= +;; Autoloaded section. +;;============================================================================= + + +;;;### + +(eval-when-compile + ;; Quiet byte compiler + (defvar gnus-nntpserver-file)) + +;;;*** + + +;;============================================================================= +;; Configuration section. +;;============================================================================= +(defun debian-file->string (name &optional func) + "Convert a file into a string" + (interactive "fFile name : ") + (let ((filename (expand-file-name name))) + (if (not (file-readable-p filename)) + nil + (with-temp-buffer + ;; Do not run any user `find-file-hooks' + (insert-file-contents-literally filename) + (if func + (funcall func)) + (buffer-string))))) + +(defun debian-clean-mailname () + (while (search-forward "\n" nil t) + (replace-match "" nil t))) + +;; Particular variables, and their justification: +;; policy/ch4.html, 4.3 Mail processing on Debian systems, /etc/mailname +;; policy/ch-binarypkg.html, 3.5 Maintainer scripts, /etc/news/server + +(let ((mailname + (debian-file->string "/etc/mailname" (function debian-clean-mailname)))) + (if mailname + (setq mail-host-address mailname))) + +;; Don't need to check NNTPSERVER for override, gnus does that for us. +(if (file-readable-p "/etc/news/server") + (setq gnus-nntpserver-file "/etc/news/server")) + +;;; 00debian-vars.el ends here diff --git a/emacs/site-start.d/50dictionaries-common.el b/emacs/site-start.d/50dictionaries-common.el new file mode 100644 index 0000000..924f605 --- /dev/null +++ b/emacs/site-start.d/50dictionaries-common.el @@ -0,0 +1,40 @@ +;; File: startup.el.in +;; Description: Emacsen startup for dictionaries-common in Debian +;; Authors: Rafael Laboissière +;; Agustin Martin +;; Created on: Fri Oct 22 09:48:21 CEST 1999 + +(let ((skip-emacs-flavors-list '(emacs19 + emacs20 + emacs21 + emacs22 + emacs-snapshot)) + (debian-dict-entries "/var/cache/dictionaries-common/emacsen-ispell-dicts.el")) + (if (member debian-emacs-flavor skip-emacs-flavors-list) + (message "Skipping dictionaries-common setup for %s" debian-emacs-flavor) + + (debian-pkg-add-load-path-item + (concat "/usr/share/" + (symbol-name debian-emacs-flavor) + "/site-lisp/dictionaries-common")) + + (autoload 'flyspell-word "flyspell" nil t) + (autoload 'flyspell-mode "flyspell" nil t) + (autoload 'flyspell-prog-mode "flyspell" nil t) + + ;; Load Debian emacsen cache file, with entries for installed dictionaries + ;; This might result in a call to debian-ispell, so do this only if + ;; a) It exists, that is, package is not removed. + ;; b) Not in installations under dpkg control, otherwise we might get some + ;; bogus errors on installation because of #132355 and friends. + (if (file-exists-p "/usr/share/emacs/site-lisp/dictionaries-common/debian-ispell.el") + (if (getenv "DPKG_RUNNING_VERSION") + (message "Info: Skip debian-el loading if run under dpkg control.") + (let ((coding-system-for-read 'raw-text)) ;; Read these as data streams + (load "debian-ispell" t) + (load debian-dict-entries t))) + (message "Info: Package dictionaries-common removed but not purged.")))) + +;;; Previous code for loading ispell.el and refreshing spell-checking +;;; pulldown menus has been removed from this file since it should no +;;; longer be needed. diff --git a/emacs/site-start.el b/emacs/site-start.el new file mode 100644 index 0000000..06a95b1 --- /dev/null +++ b/emacs/site-start.el @@ -0,0 +1,8 @@ +;; Emacsen independent startup file. All of the various installed +;; flavors of emacs (emacs22, emacs23, xemacs21) will load this file +;; at startup. Make sure any code you put here is emacs flavor +;; independent. + +;; Package maintainers: do not have Debian packages edit this file. +;; See /usr/share/doc/emacsen-common/debian-emacs-policy.gz for the +;; proper way to handle Emacs package initialization code. diff --git a/environment b/environment new file mode 100644 index 0000000..e69de29 diff --git a/fstab b/fstab new file mode 100644 index 0000000..7fd843e --- /dev/null +++ b/fstab @@ -0,0 +1,14 @@ +# /etc/fstab: static file system information. +# +# Use 'blkid' to print the universally unique identifier for a +# device; this may be used with UUID= as a more robust way to name devices +# that works even if disks are added and removed. See fstab(5). +# +# +# / was on /dev/sda1 during installation +UUID=05555fe1-84fa-4685-97d0-cdd2c672e919 / ext4 discard,relatime,errors=remount-ro 0 1 +/dev/mapper/vg00-swap none swap sw 0 0 +/dev/mapper/vg00-home /home ext4 acl,user_xattr 0 2 +/dev/mapper/vg00-tmp /tmp ext4 noatime 0 2 +/dev/mapper/vg00-var /var ext4 acl,user_xattr 0 2 + diff --git a/gai.conf b/gai.conf new file mode 100644 index 0000000..4616ed0 --- /dev/null +++ b/gai.conf @@ -0,0 +1,65 @@ +# Configuration for getaddrinfo(3). +# +# So far only configuration for the destination address sorting is needed. +# RFC 3484 governs the sorting. But the RFC also says that system +# administrators should be able to overwrite the defaults. This can be +# achieved here. +# +# All lines have an initial identifier specifying the option followed by +# up to two values. Information specified in this file replaces the +# default information. Complete absence of data of one kind causes the +# appropriate default information to be used. The supported commands include: +# +# reload +# If set to yes, each getaddrinfo(3) call will check whether this file +# changed and if necessary reload. This option should not really be +# used. There are possible runtime problems. The default is no. +# +# label +# Add another rule to the RFC 3484 label table. See section 2.1 in +# RFC 3484. The default is: +# +#label ::1/128 0 +#label ::/0 1 +#label 2002::/16 2 +#label ::/96 3 +#label ::ffff:0:0/96 4 +#label fec0::/10 5 +#label fc00::/7 6 +#label 2001:0::/32 7 +# +# This default differs from the tables given in RFC 3484 by handling +# (now obsolete) site-local IPv6 addresses and Unique Local Addresses. +# The reason for this difference is that these addresses are never +# NATed while IPv4 site-local addresses most probably are. Given +# the precedence of IPv6 over IPv4 (see below) on machines having only +# site-local IPv4 and IPv6 addresses a lookup for a global address would +# see the IPv6 be preferred. The result is a long delay because the +# site-local IPv6 addresses cannot be used while the IPv4 address is +# (at least for the foreseeable future) NATed. We also treat Teredo +# tunnels special. +# +# precedence +# Add another rule to the RFC 3484 precedence table. See section 2.1 +# and 10.3 in RFC 3484. The default is: +# +#precedence ::1/128 50 +#precedence ::/0 40 +#precedence 2002::/16 30 +#precedence ::/96 20 +#precedence ::ffff:0:0/96 10 +# +# For sites which prefer IPv4 connections change the last line to +# +#precedence ::ffff:0:0/96 100 + +# +# scopev4 +# Add another rule to the RFC 6724 scope table for IPv4 addresses. +# By default the scope IDs described in section 3.2 in RFC 6724 are +# used. Changing these defaults should hardly ever be necessary. +# The defaults are equivalent to: +# +#scopev4 ::ffff:169.254.0.0/112 2 +#scopev4 ::ffff:127.0.0.0/104 2 +#scopev4 ::ffff:0.0.0.0/96 14 diff --git a/groff/man.local b/groff/man.local new file mode 100644 index 0000000..1625aeb --- /dev/null +++ b/groff/man.local @@ -0,0 +1,21 @@ +.\" This file is loaded after an-old.tmac. +.\" Put any local modifications to an-old.tmac here. +. +.if n \{\ +. \" Debian: Map \(oq to ' rather than ` in nroff mode for devices other +. \" than utf8. +. if !'\*[.T]'utf8' \ +. tr \[oq]' +. +. \" Debian: Disable the use of SGR (ANSI colour) escape sequences by +. \" grotty. +. if '\V[GROFF_SGR]'' \ +. output x X tty: sgr 0 +. +. \" Debian: Strictly, "-" is a hyphen while "\-" is a minus sign, and the +. \" former may not always be rendered in the form expected for things like +. \" command-line options. Uncomment this if you want to make sure that +. \" manual pages you're writing are clear of this problem. +. \" if '\*[.T]'utf8' \ +. \" char - \[hy] +.\} diff --git a/groff/mdoc.local b/groff/mdoc.local new file mode 100644 index 0000000..54c0fa2 --- /dev/null +++ b/groff/mdoc.local @@ -0,0 +1,21 @@ +.\" This file is loaded after doc.tmac. +.\" Put any local modifications to doc.tmac here. +. +.if n \{\ +. \" Debian: Map \(oq to ' rather than ` in nroff mode for devices other +. \" than utf8. +. if !'\*[.T]'utf8' \ +. tr \[oq]' +. +. \" Debian: Disable the use of SGR (ANSI colour) escape sequences by +. \" grotty. +. if '\V[GROFF_SGR]'' \ +. output x X tty: sgr 0 +. +. \" Debian: Strictly, "-" is a hyphen while "\-" is a minus sign, and the +. \" former may not always be rendered in the form expected for things like +. \" command-line options. Uncomment this if you want to make sure that +. \" manual pages you're writing are clear of this problem. +. \" if '\*[.T]'utf8' \ +. \" char - \[hy] +.\} diff --git a/group b/group new file mode 100644 index 0000000..d5ee13f --- /dev/null +++ b/group @@ -0,0 +1,51 @@ +root:x:0: +daemon:x:1: +bin:x:2: +sys:x:3: +adm:x:4: +tty:x:5: +disk:x:6: +lp:x:7: +mail:x:8: +news:x:9: +uucp:x:10: +man:x:12: +proxy:x:13: +kmem:x:15: +dialout:x:20: +fax:x:21: +voice:x:22: +cdrom:x:24: +floppy:x:25: +tape:x:26: +sudo:x:27: +audio:x:29: +dip:x:30: +www-data:x:33: +backup:x:34: +operator:x:37: +list:x:38: +irc:x:39: +src:x:40: +gnats:x:41: +shadow:x:42: +utmp:x:43: +video:x:44: +sasl:x:45: +plugdev:x:46: +staff:x:50: +games:x:60: +users:x:100: +nogroup:x:65534: +input:x:101: +systemd-journal:x:102: +systemd-timesync:x:103: +systemd-network:x:104: +systemd-resolve:x:105: +systemd-bus-proxy:x:106: +crontab:x:107: +netdev:x:108: +ssh:x:109: +ssl-cert:x:110: +postfix:x:111: +postdrop:x:112: diff --git a/group- b/group- new file mode 100644 index 0000000..8d72bbb --- /dev/null +++ b/group- @@ -0,0 +1,50 @@ +root:x:0: +daemon:x:1: +bin:x:2: +sys:x:3: +adm:x:4: +tty:x:5: +disk:x:6: +lp:x:7: +mail:x:8: +news:x:9: +uucp:x:10: +man:x:12: +proxy:x:13: +kmem:x:15: +dialout:x:20: +fax:x:21: +voice:x:22: +cdrom:x:24: +floppy:x:25: +tape:x:26: +sudo:x:27: +audio:x:29: +dip:x:30: +www-data:x:33: +backup:x:34: +operator:x:37: +list:x:38: +irc:x:39: +src:x:40: +gnats:x:41: +shadow:x:42: +utmp:x:43: +video:x:44: +sasl:x:45: +plugdev:x:46: +staff:x:50: +games:x:60: +users:x:100: +nogroup:x:65534: +input:x:101: +systemd-journal:x:102: +systemd-timesync:x:103: +systemd-network:x:104: +systemd-resolve:x:105: +systemd-bus-proxy:x:106: +crontab:x:107: +netdev:x:108: +ssh:x:109: +ssl-cert:x:110: +postfix:x:111: diff --git a/grub.d/00_header b/grub.d/00_header new file mode 100755 index 0000000..149e2cb --- /dev/null +++ b/grub.d/00_header @@ -0,0 +1,390 @@ +#! /bin/sh +set -e + +# grub-mkconfig helper script. +# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. +# +# GRUB is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# GRUB is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GRUB. If not, see . + +prefix="/usr" +exec_prefix="/usr" +datarootdir="/usr/share" +grub_lang=`echo $LANG | cut -d . -f 1` +grubdir="`echo "/boot/grub" | sed 's,//*,/,g'`" +quick_boot="0" + +export TEXTDOMAIN=grub +export TEXTDOMAINDIR="${datarootdir}/locale" + +. "${datarootdir}/grub/grub-mkconfig_lib" + +# Do this as early as possible, since other commands might depend on it. +# (e.g. the `loadfont' command might need lvm or raid modules) +for i in ${GRUB_PRELOAD_MODULES} ; do + echo "insmod $i" +done + +if [ "x${GRUB_DEFAULT}" = "x" ] ; then GRUB_DEFAULT=0 ; fi +if [ "x${GRUB_DEFAULT}" = "xsaved" ] ; then GRUB_DEFAULT='${saved_entry}' ; fi +if [ "x${GRUB_TIMEOUT}" = "x" ] ; then GRUB_TIMEOUT=5 ; fi +if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=auto ; fi + +if [ "x${GRUB_DEFAULT_BUTTON}" = "x" ] ; then GRUB_DEFAULT_BUTTON="$GRUB_DEFAULT" ; fi +if [ "x${GRUB_DEFAULT_BUTTON}" = "xsaved" ] ; then GRUB_DEFAULT_BUTTON='${saved_entry}' ; fi +if [ "x${GRUB_TIMEOUT_BUTTON}" = "x" ] ; then GRUB_TIMEOUT_BUTTON="$GRUB_TIMEOUT" ; fi + +cat << EOF +if [ -s \$prefix/grubenv ]; then + set have_grubenv=true + load_env +fi +EOF +if [ "x$GRUB_BUTTON_CMOS_ADDRESS" != "x" ]; then + cat < /dev/null ; then + font_path="${path}" + else + continue + fi + break 2 + done + done + if [ -n "${font_path}" ] ; then + cat << EOF +if [ x\$feature_default_font_path = xy ] ; then + font=unicode +else +EOF + # Make the font accessible + prepare_grub_to_access_device `${grub_probe} --target=device "${font_path}"` + cat << EOF + font="`make_system_path_relative_to_its_root "${font_path}"`" +fi + +if loadfont \$font ; then +EOF + else + cat << EOF +if loadfont unicode ; then +EOF + fi + fi + + cat << EOF + set gfxmode=${GRUB_GFXMODE} + load_video + insmod gfxterm +EOF + +# Gettext variables and module +if [ "x${LANG}" != "xC" ] && [ "x${LANG}" != "x" ]; then + cat << EOF + set locale_dir=\$prefix/locale + set lang=${grub_lang} + insmod gettext +EOF +fi + +cat <&2 + + prepare_grub_to_access_device `${grub_probe} --target=device "$GRUB_THEME"` + cat << EOF +insmod gfxmenu +EOF + themedir="`dirname "$GRUB_THEME"`" + for x in "$themedir"/*.pf2 "$themedir"/f/*.pf2; do + if [ -f "$x" ]; then + cat << EOF +loadfont (\$root)`make_system_path_relative_to_its_root $x` +EOF + fi + done + if [ x"`echo "$themedir"/*.jpg`" != x"$themedir/*.jpg" ] || [ x"`echo "$themedir"/*.jpeg`" != x"$themedir/*.jpeg" ]; then + cat << EOF +insmod jpeg +EOF + fi + if [ x"`echo "$themedir"/*.png`" != x"$themedir/*.png" ]; then + cat << EOF +insmod png +EOF + fi + if [ x"`echo "$themedir"/*.tga`" != x"$themedir/*.tga" ]; then + cat << EOF +insmod tga +EOF + fi + + cat << EOF +set theme=(\$root)`make_system_path_relative_to_its_root $GRUB_THEME` +export theme +EOF + elif [ "x$GRUB_BACKGROUND" != x ] && [ -f "$GRUB_BACKGROUND" ] \ + && is_path_readable_by_grub "$GRUB_BACKGROUND"; then + gettext_printf "Found background: %s\n" "$GRUB_BACKGROUND" >&2 + case "$GRUB_BACKGROUND" in + *.png) reader=png ;; + *.tga) reader=tga ;; + *.jpg|*.jpeg) reader=jpeg ;; + *) gettext "Unsupported image format" >&2; echo >&2; exit 1 ;; + esac + prepare_grub_to_access_device `${grub_probe} --target=device "$GRUB_BACKGROUND"` + cat << EOF +insmod $reader +background_image -m stretch `make_system_path_relative_to_its_root "$GRUB_BACKGROUND"` +EOF + fi +fi + +make_timeout () +{ + cat << EOF +if [ "\${recordfail}" = 1 ] ; then + set timeout=${GRUB_RECORDFAIL_TIMEOUT:--1} +else +EOF + if [ "x${3}" != "x" ] ; then + timeout="${2}" + style="${3}" + elif [ "x${1}" != "x" ] && \ + ([ "$quick_boot" = 1 ] || [ "x${1}" != "x0" ]) ; then + # Handle the deprecated GRUB_HIDDEN_TIMEOUT scheme. + timeout="${1}" + if [ "x${2}" != "x0" ] ; then + grub_warn "$(gettext "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.")" + fi + if [ "x${GRUB_HIDDEN_TIMEOUT_QUIET}" = "xtrue" ] ; then + style="hidden" + verbose= + else + style="countdown" + verbose=" --verbose" + fi + else + # No hidden timeout, so treat as GRUB_TIMEOUT_STYLE=menu + timeout="${2}" + style="menu" + fi + cat << EOF + if [ x\$feature_timeout_style = xy ] ; then + set timeout_style=${style} + set timeout=${timeout} +EOF + if [ "x${style}" = "xmenu" ] ; then + cat << EOF + # Fallback normal timeout code in case the timeout_style feature is + # unavailable. + else + set timeout=${timeout} +EOF + else + cat << EOF + # Fallback hidden-timeout code in case the timeout_style feature is + # unavailable. + elif sleep${verbose} --interruptible ${timeout} ; then + set timeout=0 +EOF + fi + cat << EOF + fi +fi +EOF +} + +if [ "x$GRUB_BUTTON_CMOS_ADDRESS" != "x" ]; then + cat < +# +# GRUB is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# GRUB is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GRUB. If not, see . + +# Include the GRUB helper library for grub-mkconfig. +. /usr/share/grub/grub-mkconfig_lib + +# We want to work in /boot/grub/ only. +test -d /boot/grub; cd /boot/grub + +# Set the location of a possibly necessary cache file for the background image. +# NOTE: This MUST BE A DOTFILE to avoid confusing it with user-defined images. +BACKGROUND_CACHE=".background_cache" + +set_default_theme(){ + case $GRUB_DISTRIBUTOR in + Tanglu|Ubuntu|Kubuntu) + # Set a monochromatic theme for Tanglu/Ubuntu. + echo "${1}set menu_color_normal=white/black" + echo "${1}set menu_color_highlight=black/light-gray" + + if [ -e /lib/plymouth/themes/default.grub ]; then + sed "s/^/${1}/" /lib/plymouth/themes/default.grub + fi + ;; + *) + # Set the traditional Debian blue theme. + echo "${1}set menu_color_normal=cyan/blue" + echo "${1}set menu_color_highlight=white/blue" + ;; + esac +} + +module_available(){ + local module + for module in "${1}.mod" */"${1}.mod"; do + if [ -f "${module}" ]; then + return 0 + fi + done + return 1 +} + +set_background_image(){ + # Step #1: Search all available output modes ... + local output + for output in ${GRUB_TERMINAL_OUTPUT}; do + if [ "x$output" = "xgfxterm" ]; then + break + fi + done + + # ... and check if we are able to display a background image at all. + if ! [ "x${output}" = "xgfxterm" ]; then + return 1 + fi + + # Step #2: Check if the specified background image exists. + if ! [ -f "${1}" ]; then + return 2 + fi + + # Step #3: Search the correct GRUB module for our background image. + local reader + case "${1}" in + *.jpg|*.JPG|*.jpeg|*.JPEG) reader="jpeg";; + *.png|*.PNG) reader="png";; + *.tga|*.TGA) reader="tga";; + *) return 3;; # Unknown image type. + esac + + # Step #4: Check if the necessary GRUB module is available. + if ! module_available "${reader}"; then + return 4 + fi + + # Step #5: Check if GRUB can read the background image directly. + # If so, we can remove the cache file (if any). Otherwise the backgound + # image needs to be cached under /boot/grub/. + if is_path_readable_by_grub "${1}"; then + rm --force "${BACKGROUND_CACHE}.jpeg" \ + "${BACKGROUND_CACHE}.png" "${BACKGROUND_CACHE}.tga" + elif cp "${1}" "${BACKGROUND_CACHE}.${reader}"; then + set -- "${BACKGROUND_CACHE}.${reader}" "${2}" "${3}" + else + return 5 + fi + + # Step #6: Prepare GRUB to read the background image. + if ! prepare_grub_to_access_device "`${grub_probe} --target=device "${1}"`"; then + return 6 + fi + + # Step #7: Everything went fine, print out a message to stderr ... + echo "Found background image: ${1}" >&2 + + # ... and write our configuration snippet to stdout. Use the colors + # desktop-base specified. If we're using a user-defined background, use + # the default colors since we've got no idea how the image looks like. + # If loading the background image fails, use the default theme. + echo "insmod ${reader}" + echo "if background_image `make_system_path_relative_to_its_root "${1}"`; then" + if [ -n "${2}" ]; then + echo " set color_normal=${2}" + fi + if [ -n "${3}" ]; then + echo " set color_highlight=${3}" + fi + if [ -z "${2}" ] && [ -z "${3}" ]; then + echo " true" + fi + echo "else" + set_default_theme " " + echo "fi" +} + +# Earlier versions of grub-pc copied the default background image to /boot/grub +# during postinst. Remove those obsolete images if they haven't been touched by +# the user. They are still available under /usr/share/images/desktop-base/ if +# desktop-base is installed. +while read checksum background; do + if [ -f "${background}" ] && [ "x`sha1sum "${background}"`" = "x${checksum} ${background}" ]; then + echo "Removing old background image: ${background}" >&2 + rm "${background}" + fi +done <. + +prefix="/usr" +exec_prefix="/usr" +datarootdir="/usr/share" +ubuntu_recovery="0" +quiet_boot="0" +quick_boot="0" +gfxpayload_dynamic="0" +vt_handoff="0" + +. "${datarootdir}/grub/grub-mkconfig_lib" + +export TEXTDOMAIN=grub +export TEXTDOMAINDIR="${datarootdir}/locale" + +CLASS="--class gnu-linux --class gnu --class os" +SUPPORTED_INITS="sysvinit:/lib/sysvinit/init systemd:/lib/systemd/systemd upstart:/sbin/upstart" + +if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then + OS=GNU/Linux +else + case ${GRUB_DISTRIBUTOR} in + Ubuntu|Kubuntu) + OS="${GRUB_DISTRIBUTOR}" + ;; + *) + OS="${GRUB_DISTRIBUTOR} GNU/Linux" + ;; + esac + CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}" +fi + +# loop-AES arranges things so that /dev/loop/X can be our root device, but +# the initrds that Linux uses don't like that. +case ${GRUB_DEVICE} in + /dev/loop/*|/dev/loop[0-9]) + GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"` + # We can't cope with devices loop-mounted from files here. + case ${GRUB_DEVICE} in + /dev/*) ;; + *) exit 0 ;; + esac + ;; +esac + +if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \ + || ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" \ + || uses_abstraction "${GRUB_DEVICE}" lvm; then + LINUX_ROOT_DEVICE=${GRUB_DEVICE} +else + LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID} +fi + +case x"$GRUB_FS" in + xbtrfs) + rootsubvol="`make_system_path_relative_to_its_root /`" + rootsubvol="${rootsubvol#/}" + if [ "x${rootsubvol}" != x ]; then + GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}" + fi;; + xzfs) + rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true` + bootfs="`make_system_path_relative_to_its_root / | sed -e "s,@$,,"`" + LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs}" + ;; +esac + +title_correction_code= + +if [ -x /lib/recovery-mode/recovery-menu ]; then + GRUB_CMDLINE_LINUX_RECOVERY=recovery +else + GRUB_CMDLINE_LINUX_RECOVERY=single +fi +if [ "$ubuntu_recovery" = 1 ]; then + GRUB_CMDLINE_LINUX_RECOVERY="$GRUB_CMDLINE_LINUX_RECOVERY nomodeset" +fi + +if [ "$vt_handoff" = 1 ]; then + for word in $GRUB_CMDLINE_LINUX_DEFAULT; do + if [ "$word" = splash ]; then + GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT \$vt_handoff" + fi + done +fi + +linux_entry () +{ + os="$1" + version="$2" + type="$3" + args="$4" + + if [ -z "$boot_device_id" ]; then + boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" + fi + if [ x$type != xsimple ] ; then + case $type in + recovery) + title="$(gettext_printf "%s, with Linux %s (%s)" "${os}" "${version}" "$(gettext "${GRUB_RECOVERY_TITLE}")")" ;; + init-*) + title="$(gettext_printf "%s, with Linux %s (%s)" "${os}" "${version}" "${type#init-}")" ;; + *) + title="$(gettext_printf "%s, with Linux %s" "${os}" "${version}")" ;; + esac + if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ] || [ x"Previous Linux versions>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then + replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" + quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" + title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" + grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")" + fi + echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/" + else + echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" + fi + if [ "$quick_boot" = 1 ]; then + echo " recordfail" | sed "s/^/$submenu_indentation/" + fi + if [ x$type != xrecovery ] ; then + save_default_entry | grub_add_tab + fi + + # Use ELILO's generic "efifb" when it's known to be available. + # FIXME: We need an interface to select vesafb in case efifb can't be used. + if [ "x$GRUB_GFXPAYLOAD_LINUX" = x ]; then + echo " load_video" | sed "s/^/$submenu_indentation/" + else + if [ "x$GRUB_GFXPAYLOAD_LINUX" != xtext ]; then + echo " load_video" | sed "s/^/$submenu_indentation/" + fi + fi + if ([ "$ubuntu_recovery" = 0 ] || [ x$type != xrecovery ]) && \ + ([ "x$GRUB_GFXPAYLOAD_LINUX" != x ] || [ "$gfxpayload_dynamic" = 1 ]); then + echo " gfxmode \$linux_gfx_mode" | sed "s/^/$submenu_indentation/" + fi + + echo " insmod gzio" | sed "s/^/$submenu_indentation/" + echo " if [ x\$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi" | sed "s/^/$submenu_indentation/" + + if [ x$dirname = x/ ]; then + if [ -z "${prepare_root_cache}" ]; then + prepare_root_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE} | grub_add_tab)" + fi + printf '%s\n' "${prepare_root_cache}" | sed "s/^/$submenu_indentation/" + else + if [ -z "${prepare_boot_cache}" ]; then + prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" + fi + printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" + fi + if [ x"$quiet_boot" = x0 ] || [ x"$type" != xsimple ]; then + message="$(gettext_printf "Loading Linux %s ..." ${version})" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$message" | grub_quote)' +EOF + fi + if test -d /sys/firmware/efi && test -e "${linux}.efi.signed"; then + sed "s/^/$submenu_indentation/" << EOF + linux ${rel_dirname}/${basename}.efi.signed root=${linux_root_device_thisversion} ro ${args} +EOF + else + sed "s/^/$submenu_indentation/" << EOF + linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args} +EOF + fi + if test -n "${initrd}" ; then + # TRANSLATORS: ramdisk isn't identifier. Should be translated. + if [ x"$quiet_boot" = x0 ] || [ x"$type" != xsimple ]; then + message="$(gettext_printf "Loading initial ramdisk ...")" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$message" | grub_quote)' +EOF + fi + sed "s/^/$submenu_indentation/" << EOF + initrd ${rel_dirname}/${initrd} +EOF + fi + sed "s/^/$submenu_indentation/" << EOF +} +EOF +} + +machine=`uname -m` +case "x$machine" in + xi?86 | xx86_64) + list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do + if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi + done` ;; + *) + list=`for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do + if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi + done` ;; +esac + +case "$machine" in + i?86) GENKERNEL_ARCH="x86" ;; + mips|mips64) GENKERNEL_ARCH="mips" ;; + mipsel|mips64el) GENKERNEL_ARCH="mipsel" ;; + arm*) GENKERNEL_ARCH="arm" ;; + *) GENKERNEL_ARCH="$machine" ;; +esac + +prepare_boot_cache= +prepare_root_cache= +boot_device_id= +title_correction_code= + +cat << 'EOF' +function gfxmode { + set gfxpayload="${1}" +EOF +if [ "$vt_handoff" = 1 ]; then + cat << 'EOF' + if [ "${1}" = "keep" ]; then + set vt_handoff=vt.handoff=7 + else + set vt_handoff= + fi +EOF +fi +cat << EOF +} +EOF + +# Use ELILO's generic "efifb" when it's known to be available. +# FIXME: We need an interface to select vesafb in case efifb can't be used. +if [ "x$GRUB_GFXPAYLOAD_LINUX" != x ] || [ "$gfxpayload_dynamic" = 0 ]; then + echo "set linux_gfx_mode=$GRUB_GFXPAYLOAD_LINUX" +else + cat << EOF +if [ "\${recordfail}" != 1 ]; then + if [ -e \${prefix}/gfxblacklist.txt ]; then + if hwmatch \${prefix}/gfxblacklist.txt 3; then + if [ \${match} = 0 ]; then + set linux_gfx_mode=keep + else + set linux_gfx_mode=text + fi + else + set linux_gfx_mode=text + fi + else + set linux_gfx_mode=keep + fi +else + set linux_gfx_mode=text +fi +EOF +fi +cat << EOF +export linux_gfx_mode +EOF + +# Extra indentation to add to menu entries in a submenu. We're not in a submenu +# yet, so it's empty. In a submenu it will be equal to '\t' (one tab). +submenu_indentation="" + +is_top_level=true +while [ "x$list" != "x" ] ; do + linux=`version_find_latest $list` + case $linux in + *.efi.signed) + # We handle these in linux_entry. + list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '` + continue + ;; + esac + gettext_printf "Found linux image: %s\n" "$linux" >&2 + basename=`basename $linux` + dirname=`dirname $linux` + rel_dirname=`make_system_path_relative_to_its_root $dirname` + version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` + alt_version=`echo $version | sed -e "s,\.old$,,g"` + linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" + + initrd= + for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${version}.gz" \ + "initrd-${version}" "initramfs-${version}.img" \ + "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ + "initrd-${alt_version}" "initramfs-${alt_version}.img" \ + "initramfs-genkernel-${version}" \ + "initramfs-genkernel-${alt_version}" \ + "initramfs-genkernel-${GENKERNEL_ARCH}-${version}" \ + "initramfs-genkernel-${GENKERNEL_ARCH}-${alt_version}"; do + if test -e "${dirname}/${i}" ; then + initrd="$i" + break + fi + done + + config= + for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do + if test -e "${i}" ; then + config="${i}" + break + fi + done + + initramfs= + if test -n "${config}" ; then + initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"` + fi + + if test -n "${initrd}" ; then + gettext_printf "Found initrd image: %s\n" "${dirname}/${initrd}" >&2 + elif test -z "${initramfs}" ; then + # "UUID=" and "ZFS=" magic is parsed by initrd or initramfs. Since there's + # no initrd or builtin initramfs, it can't work here. + linux_root_device_thisversion=${GRUB_DEVICE} + fi + + if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then + linux_entry "${OS}" "${version}" simple \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" + + submenu_indentation="$grub_tab" + + if [ -z "$boot_device_id" ]; then + boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" + fi + # TRANSLATORS: %s is replaced with an OS name + echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' {" + is_top_level=false + fi + + linux_entry "${OS}" "${version}" advanced \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" + for supported_init in ${SUPPORTED_INITS}; do + init_path="${supported_init#*:}" + if [ -x "${init_path}" ] && [ "$(readlink -f /sbin/init)" != "${init_path}" ]; then + linux_entry "${OS}" "${version}" "init-${supported_init%%:*}" \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT} init=${init_path}" + fi + done + if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then + linux_entry "${OS}" "${version}" recovery \ + "${GRUB_CMDLINE_LINUX_RECOVERY} ${GRUB_CMDLINE_LINUX}" + fi + + list=`echo $list | tr ' ' '\n' | fgrep -vx "$linux" | tr '\n' ' '` +done + +# If at least one kernel was found, then we need to +# add a closing '}' for the submenu command. +if [ x"$is_top_level" != xtrue ]; then + echo '}' +fi + +echo "$title_correction_code" diff --git a/grub.d/20_linux_xen b/grub.d/20_linux_xen new file mode 100755 index 0000000..864f95b --- /dev/null +++ b/grub.d/20_linux_xen @@ -0,0 +1,288 @@ +#! /bin/sh +set -e + +# grub-mkconfig helper script. +# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. +# +# GRUB is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# GRUB is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GRUB. If not, see . + +prefix="/usr" +exec_prefix="/usr" +datarootdir="/usr/share" + +. "${datarootdir}/grub/grub-mkconfig_lib" + +export TEXTDOMAIN=grub +export TEXTDOMAINDIR="${datarootdir}/locale" + +CLASS="--class gnu-linux --class gnu --class os --class xen" +SUPPORTED_INITS="sysvinit:/lib/sysvinit/init systemd:/lib/systemd/systemd upstart:/sbin/upstart" + +if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then + OS=GNU/Linux +else + OS="${GRUB_DISTRIBUTOR} GNU/Linux" + CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}" +fi + +# loop-AES arranges things so that /dev/loop/X can be our root device, but +# the initrds that Linux uses don't like that. +case ${GRUB_DEVICE} in + /dev/loop/*|/dev/loop[0-9]) + GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"` + # We can't cope with devices loop-mounted from files here. + case ${GRUB_DEVICE} in + /dev/*) ;; + *) exit 0 ;; + esac + ;; +esac + +if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \ + || ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" \ + || uses_abstraction "${GRUB_DEVICE}" lvm; then + LINUX_ROOT_DEVICE=${GRUB_DEVICE} +else + LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID} +fi + +# Allow overriding GRUB_CMDLINE_LINUX and GRUB_CMDLINE_LINUX_DEFAULT. +if [ "${GRUB_CMDLINE_LINUX_XEN_REPLACE}" ]; then + GRUB_CMDLINE_LINUX="${GRUB_CMDLINE_LINUX_XEN_REPLACE}" +fi +if [ "${GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT}" ]; then + GRUB_CMDLINE_LINUX_DEFAULT="${GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT}" +fi + +case x"$GRUB_FS" in + xbtrfs) + rootsubvol="`make_system_path_relative_to_its_root /`" + rootsubvol="${rootsubvol#/}" + if [ "x${rootsubvol}" != x ]; then + GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}" + fi;; + xzfs) + rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true` + bootfs="`make_system_path_relative_to_its_root / | sed -e "s,@$,,"`" + LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs}" + ;; +esac + +title_correction_code= + +linux_entry () +{ + os="$1" + version="$2" + xen_version="$3" + type="$4" + args="$5" + xen_args="$6" + if [ -z "$boot_device_id" ]; then + boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" + fi + if [ x$type != xsimple ] ; then + if [ x$type = xrecovery ] ; then + title="$(gettext_printf "%s, with Xen %s and Linux %s (%s)" "${os}" "${xen_version}" "${version}" "$(gettext "${GRUB_RECOVERY_TITLE}")")" + elif [ "${type#init-}" != "$type" ] ; then + title="$(gettext_printf "%s, with Xen %s and Linux %s (%s)" "${os}" "${xen_version}" "${version}" "${type#init-}")" + else + title="$(gettext_printf "%s, with Xen %s and Linux %s" "${os}" "${xen_version}" "${version}")" + fi + replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" + if [ x"Xen ${xen_version}>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then + quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" + title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" + grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")" + fi + echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'xen-gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/" + else + title="$(gettext_printf "%s, with Xen hypervisor" "${os}")" + echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'xen-gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" + fi + if [ x$type != xrecovery ] ; then + save_default_entry | grub_add_tab | sed "s/^/$submenu_indentation/" + fi + + if [ -z "${prepare_boot_cache}" ]; then + prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" + fi + printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" + xmessage="$(gettext_printf "Loading Xen %s ..." ${xen_version})" + lmessage="$(gettext_printf "Loading Linux %s ..." ${version})" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$xmessage" | grub_quote)' + if [ "\$grub_platform" = "pc" -o "\$grub_platform" = "" ]; then + xen_rm_opts= + else + xen_rm_opts="no-real-mode edd=off" + fi + multiboot ${rel_xen_dirname}/${xen_basename} placeholder ${xen_args} \${xen_rm_opts} + echo '$(echo "$lmessage" | grub_quote)' + module ${rel_dirname}/${basename} placeholder root=${linux_root_device_thisversion} ro ${args} +EOF + if test -n "${initrd}" ; then + # TRANSLATORS: ramdisk isn't identifier. Should be translated. + message="$(gettext_printf "Loading initial ramdisk ...")" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$message" | grub_quote)' + module --nounzip ${rel_dirname}/${initrd} +EOF + fi + sed "s/^/$submenu_indentation/" << EOF +} +EOF +} + +linux_list=`for i in /boot/vmlinu[xz]-* /vmlinu[xz]-* /boot/kernel-*; do + if grub_file_is_not_garbage "$i"; then + basename=$(basename $i) + version=$(echo $basename | sed -e "s,^[^0-9]*-,,g") + dirname=$(dirname $i) + config= + for j in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do + if test -e "${j}" ; then + config="${j}" + break + fi + done + if (grep -qx "CONFIG_XEN_DOM0=y" "${config}" 2> /dev/null || grep -qx "CONFIG_XEN_PRIVILEGED_GUEST=y" "${config}" 2> /dev/null); then echo -n "$i " ; fi + fi + done` +if [ "x${linux_list}" = "x" ] ; then + exit 0 +fi + +file_is_not_sym () { + case "$1" in + */xen-syms-*) + return 1;; + *) + return 0;; + esac +} + +xen_list=`for i in /boot/xen*; do + if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" ; then echo -n "$i " ; fi + done` +prepare_boot_cache= +boot_device_id= + +title_correction_code= + +machine=`uname -m` + +case "$machine" in + i?86) GENKERNEL_ARCH="x86" ;; + mips|mips64) GENKERNEL_ARCH="mips" ;; + mipsel|mips64el) GENKERNEL_ARCH="mipsel" ;; + arm*) GENKERNEL_ARCH="arm" ;; + *) GENKERNEL_ARCH="$machine" ;; +esac + +# Extra indentation to add to menu entries in a submenu. We're not in a submenu +# yet, so it's empty. In a submenu it will be equal to '\t' (one tab). +submenu_indentation="" + +is_top_level=true + +while [ "x${xen_list}" != "x" ] ; do + list="${linux_list}" + current_xen=`version_find_latest $xen_list` + xen_basename=`basename ${current_xen}` + xen_dirname=`dirname ${current_xen}` + rel_xen_dirname=`make_system_path_relative_to_its_root $xen_dirname` + xen_version=`echo $xen_basename | sed -e "s,.gz$,,g;s,^xen-,,g"` + if [ -z "$boot_device_id" ]; then + boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" + fi + if [ "x$is_top_level" != xtrue ]; then + echo " submenu '$(gettext_printf "Xen hypervisor, version %s" "${xen_version}" | grub_quote)' \$menuentry_id_option 'xen-hypervisor-$xen_version-$boot_device_id' {" + fi + while [ "x$list" != "x" ] ; do + linux=`version_find_latest $list` + gettext_printf "Found linux image: %s\n" "$linux" >&2 + basename=`basename $linux` + dirname=`dirname $linux` + rel_dirname=`make_system_path_relative_to_its_root $dirname` + version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` + alt_version=`echo $version | sed -e "s,\.old$,,g"` + linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" + + initrd= + for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${version}.gz" \ + "initrd-${version}" "initramfs-${version}.img" \ + "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ + "initrd-${alt_version}" "initramfs-${alt_version}.img" \ + "initramfs-genkernel-${version}" \ + "initramfs-genkernel-${alt_version}" \ + "initramfs-genkernel-${GENKERNEL_ARCH}-${version}" \ + "initramfs-genkernel-${GENKERNEL_ARCH}-${alt_version}" ; do + if test -e "${dirname}/${i}" ; then + initrd="$i" + break + fi + done + if test -n "${initrd}" ; then + gettext_printf "Found initrd image: %s\n" "${dirname}/${initrd}" >&2 + else + # "UUID=" magic is parsed by initrds. Since there's no initrd, it can't work here. + linux_root_device_thisversion=${GRUB_DEVICE} + fi + + if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then + linux_entry "${OS}" "${version}" "${xen_version}" simple \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}" + + submenu_indentation="$grub_tab$grub_tab" + + if [ -z "$boot_device_id" ]; then + boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" + fi + # TRANSLATORS: %s is replaced with an OS name + echo "submenu '$(gettext_printf "Advanced options for %s (with Xen hypervisor)" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' {" + echo " submenu '$(gettext_printf "Xen hypervisor, version %s" "${xen_version}" | grub_quote)' \$menuentry_id_option 'xen-hypervisor-$xen_version-$boot_device_id' {" + is_top_level=false + fi + + linux_entry "${OS}" "${version}" "${xen_version}" advanced \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}" + for supported_init in ${SUPPORTED_INITS}; do + init_path="${supported_init#*:}" + if [ -x "${init_path}" ] && [ "$(readlink -f /sbin/init)" != "${init_path}" ]; then + linux_entry "${OS}" "${version}" "${xen_version}" "init-${supported_init%%:*}" \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT} init=${init_path}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}" + + fi + done + if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then + linux_entry "${OS}" "${version}" "${xen_version}" recovery \ + "single ${GRUB_CMDLINE_LINUX}" "${GRUB_CMDLINE_XEN}" + fi + + list=`echo $list | tr ' ' '\n' | fgrep -vx "$linux" | tr '\n' ' '` + done + if [ x"$is_top_level" != xtrue ]; then + echo ' }' + fi + xen_list=`echo $xen_list | tr ' ' '\n' | fgrep -vx "$current_xen" | tr '\n' ' '` +done + +# If at least one kernel was found, then we need to +# add a closing '}' for the submenu command. +if [ x"$is_top_level" != xtrue ]; then + echo '}' +fi + +echo "$title_correction_code" diff --git a/grub.d/30_os-prober b/grub.d/30_os-prober new file mode 100755 index 0000000..bb698c0 --- /dev/null +++ b/grub.d/30_os-prober @@ -0,0 +1,371 @@ +#! /bin/sh +set -e + +# grub-mkconfig helper script. +# Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. +# +# GRUB is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# GRUB is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GRUB. If not, see . + +prefix="/usr" +exec_prefix="/usr" +datarootdir="/usr/share" +quick_boot="0" + +export TEXTDOMAIN=grub +export TEXTDOMAINDIR="${datarootdir}/locale" + +. "${datarootdir}/grub/grub-mkconfig_lib" + +found_other_os= + +adjust_timeout () { + if [ "$quick_boot" = 1 ] && [ "x${found_other_os}" != "x" ]; then + cat << EOF +set timeout_style=menu +if [ "\${timeout}" = 0 ]; then + set timeout=10 +fi +EOF + fi +} + +if [ "x${GRUB_DISABLE_OS_PROBER}" = "xtrue" ]; then + exit 0 +fi + +if [ -z "`which os-prober 2> /dev/null`" -o -z "`which linux-boot-prober 2> /dev/null`" ] ; then + # missing os-prober and/or linux-boot-prober + exit 0 +fi + +OSPROBED="`os-prober | tr ' ' '^' | paste -s -d ' '`" +if [ -z "${OSPROBED}" ] ; then + # empty os-prober output, nothing doing + exit 0 +fi + +osx_entry() { + found_other_os=1 + if [ x$2 = x32 ]; then + # TRANSLATORS: it refers to kernel architecture (32-bit) + bitstr="$(gettext "(32-bit)")" + else + # TRANSLATORS: it refers to kernel architecture (64-bit) + bitstr="$(gettext "(64-bit)")" + fi + # TRANSLATORS: it refers on the OS residing on device %s + onstr="$(gettext_printf "(on %s)" "${DEVICE}")" + cat << EOF +menuentry '$(echo "${LONGNAME} $bitstr $onstr" | grub_quote)' --class osx --class darwin --class os \$menuentry_id_option 'osprober-xnu-$2-$(grub_get_device_id "${DEVICE}")' { +EOF + save_default_entry | grub_add_tab + prepare_grub_to_access_device ${DEVICE} | grub_add_tab + cat << EOF + load_video + set do_resume=0 + if [ /var/vm/sleepimage -nt10 / ]; then + if xnu_resume /var/vm/sleepimage; then + set do_resume=1 + fi + fi + if [ \$do_resume = 0 ]; then + xnu_uuid ${OSXUUID} uuid + if [ -f /Extra/DSDT.aml ]; then + acpi -e /Extra/DSDT.aml + fi + if [ /kernelcache -nt /System/Library/Extensions ]; then + $1 /kernelcache boot-uuid=\${uuid} rd=*uuid + else + $1 /mach_kernel boot-uuid=\${uuid} rd=*uuid + if [ /System/Library/Extensions.mkext -nt /System/Library/Extensions ]; then + xnu_mkext /System/Library/Extensions.mkext + else + xnu_kextdir /System/Library/Extensions + fi + fi + if [ -f /Extra/Extensions.mkext ]; then + xnu_mkext /Extra/Extensions.mkext + fi + if [ -d /Extra/Extensions ]; then + xnu_kextdir /Extra/Extensions + fi + if [ -f /Extra/devprop.bin ]; then + xnu_devprop_load /Extra/devprop.bin + fi + if [ -f /Extra/splash.jpg ]; then + insmod jpeg + xnu_splash /Extra/splash.jpg + fi + if [ -f /Extra/splash.png ]; then + insmod png + xnu_splash /Extra/splash.png + fi + if [ -f /Extra/splash.tga ]; then + insmod tga + xnu_splash /Extra/splash.tga + fi + fi +} +EOF +} + +used_osprober_linux_ids= + +wubi= + +for OS in ${OSPROBED} ; do + DEVICE="`echo ${OS} | cut -d ':' -f 1`" + LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`" + LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`" + BOOT="`echo ${OS} | cut -d ':' -f 4`" + if UUID="`${grub_probe} --target=fs_uuid --device ${DEVICE%@*}`"; then + EXPUUID="$UUID" + + if [ x"${DEVICE#*@}" != x ] ; then + EXPUUID="${EXPUUID}@${DEVICE#*@}" + fi + + if [ "x${GRUB_OS_PROBER_SKIP_LIST}" != "x" -a "x`echo ${GRUB_OS_PROBER_SKIP_LIST} | grep -i -e '\b'${EXPUUID}'\b'`" != "x" ] ; then + echo "Skipped ${LONGNAME} on ${DEVICE} by user request." >&2 + continue + fi + fi + + BTRFS="`echo ${OS} | cut -d ':' -f 5`" + if [ "x$BTRFS" = "xbtrfs" ]; then + BTRFSuuid="`echo ${OS} | cut -d ':' -f 6`" + BTRFSsubvol="`echo ${OS} | cut -d ':' -f 7`" + fi + + if [ -z "${LONGNAME}" ] ; then + LONGNAME="${LABEL}" + fi + + gettext_printf "Found %s on %s\n" "${LONGNAME}" "${DEVICE}" >&2 + + case ${BOOT} in + chain) + + case ${LONGNAME} in + Windows*) + if [ -z "$wubi" ]; then + if [ -x /usr/share/lupin-support/grub-mkimage ] && \ + /usr/share/lupin-support/grub-mkimage --test; then + wubi=yes + else + wubi=no + fi + fi + if [ "$wubi" = yes ]; then + echo "Skipping ${LONGNAME} on Wubi system" >&2 + continue + fi + ;; + esac + + found_other_os=1 + onstr="$(gettext_printf "(on %s)" "${DEVICE}")" + cat << EOF +menuentry '$(echo "${LONGNAME} $onstr" | grub_quote)' --class windows --class os \$menuentry_id_option 'osprober-chain-$(grub_get_device_id "${DEVICE}")' { +EOF + save_default_entry | grub_add_tab + prepare_grub_to_access_device ${DEVICE} | grub_add_tab + + if [ x"`${grub_probe} --device ${DEVICE} --target=partmap`" = xmsdos ]; then + cat << EOF + parttool \${root} hidden- +EOF + fi + + case ${LONGNAME} in + Windows\ Vista*|Windows\ 7*|Windows\ Server\ 2008*) + ;; + *) + cat << EOF + drivemap -s (hd0) \${root} +EOF + ;; + esac + + cat < /dev/null; do + counter=$((counter+1)); + done + if [ -z "$boot_device_id" ]; then + boot_device_id="$(grub_get_device_id "${DEVICE}")" + fi + used_osprober_linux_ids="$used_osprober_linux_ids 'osprober-gnulinux-$LKERNEL-${recovery_params}-$counter-$boot_device_id'" + + if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then + cat << EOF +menuentry '$(echo "$OS $onstr" | grub_quote)' --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-simple-$boot_device_id' { +EOF + save_default_entry | grub_add_tab + printf '%s\n' "${prepare_boot_cache}" + cat << EOF + linux ${LKERNEL} ${LPARAMS} +EOF + if [ -n "${LINITRD}" ] ; then + cat << EOF + initrd ${LINITRD} +EOF + fi + cat << EOF +} +EOF + echo "submenu '$(gettext_printf "Advanced options for %s" "${OS} $onstr" | grub_quote)' \$menuentry_id_option 'osprober-gnulinux-advanced-$boot_device_id' {" + is_top_level=false + fi + title="${LLABEL} $onstr" + cat << EOF + menuentry '$(echo "$title" | grub_quote)' --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-$LKERNEL-${recovery_params}-$boot_device_id' { +EOF + save_default_entry | sed -e "s/^/$grub_tab$grub_tab/" + printf '%s\n' "${prepare_boot_cache}" | grub_add_tab + cat << EOF + linux ${LKERNEL} ${LPARAMS} +EOF + if [ -n "${LINITRD}" ] ; then + cat << EOF + initrd ${LINITRD} +EOF + fi + cat << EOF + } +EOF + if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ] || [ x"Previous Linux versions>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then + replacement_title="$(echo "Advanced options for ${OS} $onstr" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" + quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" + title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" + grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")" + fi + done + if [ x"$is_top_level" != xtrue ]; then + echo '}' + fi + echo "$title_correction_code" + ;; + macosx) + if [ "${UUID}" ]; then + OSXUUID="${UUID}" + osx_entry xnu_kernel 32 + osx_entry xnu_kernel64 64 + fi + ;; + hurd) + found_other_os=1 + onstr="$(gettext_printf "(on %s)" "${DEVICE}")" + cat << EOF +menuentry '$(echo "${LONGNAME} $onstr" | grub_quote)' --class hurd --class gnu --class os \$menuentry_id_option 'osprober-gnuhurd-/boot/gnumach.gz-false-$(grub_get_device_id "${DEVICE}")' { +EOF + save_default_entry | grub_add_tab + prepare_grub_to_access_device ${DEVICE} | grub_add_tab + grub_device="`${grub_probe} --device ${DEVICE} --target=drive`" + mach_device="`echo "${grub_device}" | sed -e 's/(\(hd.*\),msdos\(.*\))/\1s\2/'`" + grub_fs="`${grub_probe} --device ${DEVICE} --target=fs`" + case "${grub_fs}" in + *fs) hurd_fs="${grub_fs}" ;; + *) hurd_fs="${grub_fs}fs" ;; + esac + cat << EOF + multiboot /boot/gnumach.gz root=device:${mach_device} + module /hurd/${hurd_fs}.static ${hurd_fs} --readonly \\ + --multiboot-command-line='\${kernel-command-line}' \\ + --host-priv-port='\${host-port}' \\ + --device-master-port='\${device-port}' \\ + --exec-server-task='\${exec-task}' -T typed '\${root}' \\ + '\$(task-create)' '\$(task-resume)' + module /lib/ld.so.1 exec /hurd/exec '\$(exec-task=task-create)' +} +EOF + ;; + minix) + cat << EOF +menuentry "${LONGNAME} (on ${DEVICE}, Multiboot)" { +EOF + save_default_entry | sed -e "s/^/\t/" + prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/" + cat << EOF + multiboot /boot/image_latest +} +EOF + ;; + *) + echo -n " " + # TRANSLATORS: %s is replaced by OS name. + gettext_printf "%s is not yet supported by grub-mkconfig.\n" "${LONGNAME}" >&2 + ;; + esac +done + +adjust_timeout diff --git a/grub.d/30_uefi-firmware b/grub.d/30_uefi-firmware new file mode 100755 index 0000000..1c5fcd4 --- /dev/null +++ b/grub.d/30_uefi-firmware @@ -0,0 +1,46 @@ +#! /bin/sh +set -e + +# grub-mkconfig helper script. +# Copyright (C) 2012 Free Software Foundation, Inc. +# +# GRUB is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# GRUB is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GRUB. If not, see . + +prefix="/usr" +exec_prefix="/usr" +datarootdir="/usr/share" + +export TEXTDOMAIN=grub +export TEXTDOMAINDIR="${datarootdir}/locale" + +. "${datarootdir}/grub/grub-mkconfig_lib" + +efi_vars_dir=/sys/firmware/efi/vars +EFI_GLOBAL_VARIABLE=8be4df61-93ca-11d2-aa0d-00e098032b8c +OsIndications="$efi_vars_dir/OsIndicationsSupported-$EFI_GLOBAL_VARIABLE/data" + +if [ -e "$OsIndications" ] && \ + [ "$(( $(printf %x \'"$(cat $OsIndications | cut -b1)") & 1 ))" = 1 ]; then + LABEL="System setup" + + gettext_printf "Adding boot menu entry for EFI firmware configuration\n" >&2 + + onstr="$(gettext_printf "(on %s)" "${DEVICE}")" + + cat << EOF +menuentry '$LABEL' \$menuentry_id_option 'uefi-firmware' { + fwsetup +} +EOF +fi diff --git a/grub.d/40_custom b/grub.d/40_custom new file mode 100755 index 0000000..48068de --- /dev/null +++ b/grub.d/40_custom @@ -0,0 +1,5 @@ +#!/bin/sh +exec tail -n +3 $0 +# This file provides an easy way to add custom menu entries. Simply type the +# menu entries you want to add after this comment. Be careful not to change +# the 'exec tail' line above. diff --git a/grub.d/41_custom b/grub.d/41_custom new file mode 100755 index 0000000..fcc21a9 --- /dev/null +++ b/grub.d/41_custom @@ -0,0 +1,9 @@ +#!/bin/sh +cat </dev/null + log_end_msg $? +} + +case "$1" in + start) + load_modules || true + log_begin_msg "Starting ACPI services..." + start-stop-daemon --start --quiet --oknodo --exec "$ACPID" -- $OPTIONS + log_end_msg $? + ;; + stop) + log_begin_msg "Stopping ACPI services..." + start-stop-daemon --stop --quiet --oknodo --retry 2 --exec "$ACPID" + log_end_msg $? + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + reload|force-reload) + log_begin_msg "Reloading ACPI services..." + start-stop-daemon --stop --signal 1 --exec "$ACPID" + log_end_msg $? + ;; + status) + status_of_proc "$ACPID" acpid + ;; + *) + log_success_msg "Usage: /etc/init.d/acpid {start|stop|restart|reload|force-reload|status}" + exit 1 +esac + diff --git a/init.d/bootlogs b/init.d/bootlogs new file mode 100755 index 0000000..3ad7d8b --- /dev/null +++ b/init.d/bootlogs @@ -0,0 +1,60 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: bootlogs +# Required-Start: hostname $local_fs +# Required-Stop: +# Should-Start: $x-display-manager gdm kdm xdm ldm sdm wdm nodm +# Default-Start: 1 2 3 4 5 +# Default-Stop: +# Short-Description: Log file handling to be done during bootup. +# Description: Various things that don't need to be done particularly +# early in the boot, just before getty is run. +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +[ "$DELAYLOGIN" ] || DELAYLOGIN=yes +. /lib/init/vars.sh + +do_start () { + # Save kernel messages in /var/log/dmesg + if which dmesg >/dev/null 2>&1 + then + [ -f /var/log/dmesg ] && savelog -q -p -c 5 /var/log/dmesg + dmesg -s 524288 > /var/log/dmesg + chgrp adm /var/log/dmesg || : + elif [ -c /dev/klog ] + then + [ -f /var/log/dmesg ] && savelog -q -p -c 5 /var/log/dmesg + dd if=/dev/klog of=/var/log/dmesg & + sleep 1 + kill $! + [ -f /var/log/dmesg ] && { chgrp adm /var/log/dmesg || : ; } + fi +} + +do_status () { + return 0 +} + +case "$1" in + start|"") + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + # No-op + ;; + status) + do_status + exit $? + ;; + *) + echo "Usage: bootlogs [start|stop|status]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/bootmisc.sh b/init.d/bootmisc.sh new file mode 100755 index 0000000..5c73683 --- /dev/null +++ b/init.d/bootmisc.sh @@ -0,0 +1,59 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: bootmisc +# Required-Start: $remote_fs +# Required-Stop: +# Should-Start: udev +# Default-Start: S +# Default-Stop: +# Short-Description: Miscellaneous things to be done during bootup. +# Description: Some cleanup. Note, it need to run after mountnfs-bootclean.sh. +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +[ "$DELAYLOGIN" ] || DELAYLOGIN=yes +. /lib/init/vars.sh + +do_start () { + # + # If login delaying is enabled then create the flag file + # which prevents logins before startup is complete + # + case "$DELAYLOGIN" in + Y*|y*) + echo "System bootup in progress - please wait" > /var/lib/initscripts/nologin + ;; + esac + + # Create /var/run/utmp so we can login. + : > /var/run/utmp + if grep -q ^utmp: /etc/group + then + chmod 664 /var/run/utmp + chgrp utmp /var/run/utmp + fi + + # Remove bootclean's flag files. + # Don't run bootclean again after this! + rm -f /tmp/.clean /run/.clean /run/lock/.clean + rm -f /tmp/.tmpfs /run/.tmpfs /run/lock/.tmpfs +} + +case "$1" in + start|"") + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: bootmisc.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/checkfs.sh b/init.d/checkfs.sh new file mode 100755 index 0000000..07302d4 --- /dev/null +++ b/init.d/checkfs.sh @@ -0,0 +1,155 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: checkfs +# Required-Start: checkroot +# Required-Stop: +# Should-Start: +# Default-Start: S +# Default-Stop: +# X-Interactive: true +# Short-Description: Check all filesystems. +### END INIT INFO + +# Include /usr/bin in path to find on_ac_power if /usr/ is on the root +# partition. +PATH=/sbin:/bin:/usr/bin +FSCK_LOGFILE=/var/log/fsck/checkfs +[ "$FSCKFIX" ] || FSCKFIX=no +. /lib/init/vars.sh + +. /lib/lsb/init-functions +. /lib/init/mount-functions.sh +. /lib/init/swap-functions.sh + +do_start () { + # Trap SIGINT so that we can handle user interupt of fsck. + trap "" INT + + # See if we're on AC Power. If not, we're not gonna run our + # check. If on_ac_power (in /usr/) is unavailable, behave as + # before and check all file systems needing it. + +# Disabled AC power check until fsck can be told to only check the +# file system if it is corrupt when running on battery. (bug #526398) +# if which on_ac_power >/dev/null 2>&1 +# then +# on_ac_power >/dev/null 2>&1 +# if [ $? -eq 1 ] +# then +# [ "$VERBOSE" = no ] || log_success_msg "Running on battery power, so skipping file system check." +# BAT=yes +# fi +# fi + BAT="" + fscheck="yes" + + if is_fastboot_active + then + [ "$fscheck" = yes ] && log_warning_msg "Fast boot enabled, so skipping file system check." + fscheck=no + fi + + # + # Check the rest of the file systems. + # + if [ "$fscheck" = yes ] && [ ! "$BAT" ] && [ "$FSCKTYPES" != "none" ] + then + + # Execute swapon command again, in case there are lvm + # or md swap partitions. fsck can suck RAM. + swaponagain 'lvm and md' + + if [ -f /forcefsck ] || grep -q -s -w -i "forcefsck" /proc/cmdline + then + force="-f" + else + force="" + fi + if [ "$FSCKFIX" = yes ] + then + fix="-y" + else + fix="-a" + fi + spinner="-C" + case "$TERM" in + dumb|network|unknown|"") + spinner="" + ;; + esac + [ "$(uname -m)" = s390x ] && spinner="" # This should go away + FSCKTYPES_OPT="" + [ "$FSCKTYPES" ] && FSCKTYPES_OPT="-t $FSCKTYPES" + handle_failed_fsck() { + log_failure_msg "File system check failed. +A log is being saved in ${FSCK_LOGFILE} if that location is writable. +Please repair the file system manually." + log_warning_msg "A maintenance shell will now be started. +CONTROL-D will terminate this shell and resume system boot." + # Start a single user shell on the console + if ! sulogin $CONSOLE + then + log_failure_msg "Attempt to start maintenance shell failed. +Continuing with system boot in 5 seconds." + sleep 5 + fi + } + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Checking file systems" + logsave -s $FSCK_LOGFILE fsck $spinner -R -A $fix $force $FSCKTYPES_OPT + FSCKCODE=$? + + if [ "$FSCKCODE" -eq 32 ] + then + log_action_end_msg 1 "code $FSCKCODE" + log_warning_msg "File system check was interrupted by user" + elif [ "$FSCKCODE" -gt 1 ] + then + log_action_end_msg 1 "code $FSCKCODE" + handle_failed_fsck + else + log_action_end_msg 0 + fi + else + if [ "$FSCKTYPES" ] + then + log_action_msg "Will now check all file systems of types $FSCKTYPES" + else + log_action_msg "Will now check all file systems" + fi + logsave -s $FSCK_LOGFILE fsck $spinner -V -R -A $fix $force $FSCKTYPES_OPT + FSCKCODE=$? + if [ "$FSCKCODE" -eq 32 ] + then + log_warning_msg "File system check was interrupted by user" + elif [ "$FSCKCODE" -gt 1 ] + then + handle_failed_fsck + else + log_success_msg "Done checking file systems. +A log is being saved in ${FSCK_LOGFILE} if that location is writable." + fi + fi + fi + rm -f /fastboot /forcefsck 2>/dev/null +} + +case "$1" in + start|"") + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: checkfs.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/checkroot-bootclean.sh b/init.d/checkroot-bootclean.sh new file mode 100755 index 0000000..effe252 --- /dev/null +++ b/init.d/checkroot-bootclean.sh @@ -0,0 +1,43 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: checkroot-bootclean +# Required-Start: checkroot +# Required-Stop: +# Default-Start: S +# Default-Stop: +# X-Start-Before: bootmisc +# Short-Description: bootclean after checkroot. +# Description: Clean temporary filesystems after +# the root filesystem has been mounted. +# At this point, directories which may be +# masked by future mounts may be cleaned. +### END INIT INFO + +. /lib/init/bootclean.sh + +case "$1" in + start|"") + # Clean /tmp, /run and /run/lock. Remove the .clean files to + # force initial cleaning. This is intended to allow cleaning + # of directories masked by mounts while the system was + # previously running, which would otherwise prevent them being + # cleaned. + rm -f /tmp/.clean /run/.clean /run/lock/.clean + + clean_all + exit $? + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: checkroot-bootclean.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/checkroot.sh b/init.d/checkroot.sh new file mode 100755 index 0000000..bce9c41 --- /dev/null +++ b/init.d/checkroot.sh @@ -0,0 +1,365 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: checkroot mtab +# Required-Start: mountdevsubfs hostname +# Required-Stop: +# Should-Start: keymap hwclockfirst hdparm bootlogd +# Should-stop: +# Default-Start: S +# Default-Stop: +# X-Interactive: true +# Short-Description: Check to root file system. +### END INIT INFO + +# Include /usr/bin in path to find on_ac_power if /usr/ is on the root +# partition. +PATH=/sbin:/bin:/usr/bin +FSCK_LOGFILE=/var/log/fsck/checkroot +[ "$FSCKFIX" ] || FSCKFIX=no +[ "$SULOGIN" ] || SULOGIN=no +. /lib/init/vars.sh + +. /lib/lsb/init-functions +. /lib/init/mount-functions.sh + +do_start () { + # Trap SIGINT so that we can handle user interrupt of fsck. + trap "" INT + + # + # Set SULOGIN in /etc/default/rcS to yes if you want a sulogin to + # be spawned from this script *before anything else* with a timeout, + # like sysv does. + # + [ "$SULOGIN" = yes ] && sulogin -t 30 $CONSOLE + + KERNEL="$(uname -s)" + MACHINE="$(uname -m)" + + read_fstab + + # + # Activate the swap device(s) in /etc/fstab. This needs to be done + # before fsck, since fsck can be quite memory-hungry. + # + ENABLE_SWAP=no + case "$KERNEL" in + Linux) + if [ "$NOSWAP" = yes ] + then + [ "$VERBOSE" = no ] || log_warning_msg "Not activating swap as requested via bootoption noswap." + ENABLE_SWAP=no + else + if [ "$swap_on_lv" = yes ] + then + [ "$VERBOSE" = no ] || log_warning_msg "Not activating swap on logical volume." + elif [ "$swap_on_file" = yes ] + then + [ "$VERBOSE" = no ] || log_warning_msg "Not activating swap on swapfile." + else + ENABLE_SWAP=yes + fi + fi + ;; + *) + ENABLE_SWAP=yes + ;; + esac + if [ "$ENABLE_SWAP" = yes ] + then + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Activating swap" + swapon -a -e >/dev/null 2>&1 + log_action_end_msg $? + else + log_daemon_msg "Activating swap" + swapon -a -v + log_end_msg $? + fi + fi + + # + # Does the root device in /etc/fstab match with the actual device ? + # If not we try to use the /dev/root alias device, and if that + # fails we create a temporary node in /run. + # + # Do this only on Linux. Neither kFreeBSD nor Hurd have + # /dev/root and the device ids used here are specific to + # Linux. + KERNEL="$(uname)" + if [ "$rootcheck" = yes ] && [ "$KERNEL" = Linux ] + then + ddev="$(mountpoint -qx $rootdev)" + rdev="$(mountpoint -d /)" + if [ "$ddev" != "$rdev" ] && [ "$ddev" != "4:0" ] + then + if [ "$(mountpoint -qx /dev/root)" = "4:0" ] + then + rootdev=/dev/root + else + if \ + rm -f /run/rootdev \ + && mknod -m 600 /run/rootdev b ${rdev%:*} ${rdev#*:} \ + && [ -e /run/rootdev ] + then + rootdev=/run/rootdev + else + rootfatal=yes + fi + fi + fi + fi + + # + # Bother, said Pooh. + # + if [ "$rootfatal" = yes ] + then + log_failure_msg "The device node $rootdev for the root filesystem is missing or incorrect +or there is no entry for the root filesystem listed in /etc/fstab. +The system is also unable to create a temporary node in /run. +This means you have to fix the problem manually." + log_warning_msg "A maintenance shell will now be started. +CONTROL-D will terminate this shell and restart the system." + # Start a single user shell on the console + if ! sulogin $CONSOLE + then + log_failure_msg "Attempt to start maintenance shell failed. +Will restart in 5 seconds." + sleep 5 + fi + [ "$VERBOSE" = no ] || log_action_msg "Will now restart" + reboot -f + fi + + # See if we're on AC Power. If not, we're not gonna run our + # check. If on_ac_power (in /usr/) is unavailable, behave as + # before and check all file systems needing it. +# Disabled AC power check until fsck can be told to only check the +# file system if it is corrupt when running on battery. (bug #526398) +# if which on_ac_power >/dev/null 2>&1 && [ "$rootcheck" = yes ] +# then +# on_ac_power >/dev/null 2>&1 +# if [ "$?" -eq 1 ] +# then +# log_warning_msg "On battery power, so skipping file system check." +# rootcheck=no +# fi +# fi + + # + # See if we want to check the root file system. + # + FSCKCODE=0 + if is_fastboot_active + then + [ "$rootcheck" = yes ] && log_warning_msg "Fast boot enabled, so skipping root file system check." + rootcheck=no + fi + + if which findmnt >/dev/null 2>&1 + then + if [ "$(findmnt -f -n -o FSTYPE /)" = "btrfs" ] + then + [ "$rootcheck" = yes ] && log_warning_msg "btrfs root detected, so skipping root file system check." + rootcheck=no + fi + fi + + if [ "$rootcheck" = yes ] + then + # + # Ensure that root is quiescent and read-only before fsck'ing. + # + # mount -n -o remount,ro / would be the correct syntax but + # mount can get confused when there is a "bind" mount defined + # in fstab that bind-mounts "/" somewhere else. + # + # So we use mount -n -o remount,ro $rootdev / but that can + # fail on older kernels on sparc64/alpha architectures due + # to a bug in sys_mount(). + # + # As a compromise we try both. + # + if \ + ! mount -n -o remount,ro $rootdev / \ + && ! mount -n -o remount,ro -t dummytype $rootdev / 2>/dev/null \ + && ! mount -n -o remount,ro / 2>/dev/null + then + log_failure_msg "Cannot check root file system because it is not mounted read-only." + rootcheck=no + fi + fi + + # + # The actual checking is done here. + # + if [ "$rootcheck" = yes ] + then + if [ -f /forcefsck ] || grep -q -s -w -i "forcefsck" /proc/cmdline + then + force="-f" + else + force="" + fi + + if [ "$FSCKFIX" = yes ] + then + fix="-y" + else + fix="-a" + fi + + spinner="-C" + case "$TERM" in + dumb|network|unknown|"") + spinner="" ;; + esac + # This Linux/s390x special case should go away. + if [ "${KERNEL}:${MACHINE}" = Linux:s390x ] + then + spinner="" + fi + + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Checking root file system" + logsave -s $FSCK_LOGFILE fsck $spinner $force $fix -t $roottype $rootdev + FSCKCODE=$? + if [ "$FSCKCODE" = 0 ] + then + log_action_end_msg 0 + else + log_action_end_msg 1 "code $FSCKCODE" + fi + else + log_daemon_msg "Will now check root file system" + logsave -s $FSCK_LOGFILE fsck $spinner $force $fix -V -t $roottype $rootdev + FSCKCODE=$? + log_end_msg $FSCKCODE + fi + fi + + # + # If there was a failure, drop into single-user mode. + # + # NOTE: "failure" is defined as exiting with a return code of + # 4 or larger. A return code of 1 indicates that file system + # errors were corrected but that the boot may proceed. A return + # code of 2 or 3 indicates that the system should immediately reboot. + # + if [ "$FSCKCODE" -eq 32 ] + then + log_warning_msg "File system check was interrupted by user" + elif [ "$FSCKCODE" -gt 3 ] + then + # Surprise! Re-directing from a HERE document (as in "cat << EOF") + # does not work because the root is currently read-only. + log_failure_msg "An automatic file system check (fsck) of the root filesystem failed. +A manual fsck must be performed, then the system restarted. +The fsck should be performed in maintenance mode with the +root filesystem mounted in read-only mode." + log_warning_msg "The root filesystem is currently mounted in read-only mode. +A maintenance shell will now be started. +After performing system maintenance, press CONTROL-D +to terminate the maintenance shell and restart the system." + # Start a single user shell on the console + if ! sulogin $CONSOLE + then + log_failure_msg "Attempt to start maintenance shell failed. +Will restart in 5 seconds." + sleep 5 + fi + [ "$VERBOSE" = no ] || log_action_msg "Will now restart" + reboot -f + elif [ "$FSCKCODE" -gt 1 ] + then + log_failure_msg "The file system check corrected errors on the root partition +but requested that the system be restarted." + log_warning_msg "The system will be restarted in 5 seconds." + sleep 5 + [ "$VERBOSE" = no ] || log_action_msg "Will now restart" + reboot -f + fi + + # + # Remount root to final mode (rw or ro). + # + # See the comments above at the previous "mount -o remount" + # for an explanation why we try this twice. + # + if ! mount -n -o remount,$rootopts,$rootmode $fstabroot / 2>/dev/null + then + mount -n -o remount,$rootopts,$rootmode / + fi + + # If possible, migrate /etc/mtab to be a symlink to + # /proc/mounts. Note that not all systems e.g. Hurd currently + # support this. + if [ "$rootmode" != "ro" ]; then + mtab_migrate + fi + + if selinux_enabled && [ -x /sbin/restorecon ] && [ -r /etc/mtab ] + then + restorecon /etc/mtab + fi + + # + # Remove /run/rootdev if we created it. + # + rm -f /run/rootdev + + # Update mount options for mounts created in early boot + # S01mountkernfs.sh + /etc/init.d/mountkernfs.sh reload + # S03mountdevsubfs.sh + /etc/init.d/mountdevsubfs.sh reload + +} + +do_status () { + # If / is read-write or swap is enabled, this script have done + # its job. + rootrw=false + swapon=false + if [ -f /etc/mtab ] ; then + if grep " / " /etc/mtab |grep -q rw ; then + rootrw=true + fi + fi + if [ -f /proc/swaps ] ; then + if [ "$(cat /proc/swaps |grep -v ^Filename)" ] ; then + swapon=true + fi + fi + if [ true = "$rootrw" ] || [ true = "$swapon" ] ; then + return 0 + else + return 4 + fi +} + +case "$1" in + start|"") + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + # No-op + ;; + status) + do_status + exit $? + ;; + *) + echo "Usage: checkroot.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/chrony b/init.d/chrony new file mode 100755 index 0000000..ec589f7 --- /dev/null +++ b/init.d/chrony @@ -0,0 +1,103 @@ +#! /bin/sh +# +# Written by Miquel van Smoorenburg . +# Modified for Debian GNU/Linux by Ian Murdock . +# Modified for Debian by Christoph Lameter +# Modified for chrony by John Hasler 1998-2012 + +### BEGIN INIT INFO +# Provides: chrony +# Required-Start: $remote_fs +# Required-Stop: $remote_fs +# Should-Start: $syslog $network $named $time +# Should-Stop: $syslog $network $named $time +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Controls chronyd NTP time daemon +# Description: Chronyd is the NTP time daemon in the Chrony package +### END INIT INFO + +PATH=/bin:/usr/bin:/sbin:/usr/sbin +DAEMON=/usr/sbin/chronyd +FLAGS="defaults" +NAME="chronyd" +DESC="time daemon" + +test -f $DAEMON || exit 0 + +. /lib/lsb/init-functions + +putonline () +{ # Do we have a default route? If so put chronyd online. + if timelimit -q -s9 -t5 -- netstat -rn 2>/dev/null | grep -q '0\.0\.0\.0' + then + sleep 2 # Chronyd can take a while to start. + KEY=$(awk '$1 ~ /^commandkey$/ { print $2; exit}' /etc/chrony/chrony.conf) + PASSWORD=`awk '$1 ~ /^'$KEY'$/ {print $2; exit}' /etc/chrony/chrony.keys` + # Make sure chronyc can't hang us up. + if timelimit -q -s9 -t5 -- /usr/bin/chronyc > /dev/null << EOF +password $PASSWORD +online +burst 5/10 +quit +EOF + then + touch /var/run/chrony-ppp-up + echo "$NAME is running and online." + else + rm -f /var/run/chrony-ppp-up + echo "$NAME is running and offline." + fi + else + rm -f /var/run/chrony-ppp-up + echo "$NAME is running and offline." + fi +} + +case "$1" in + start) + start-stop-daemon --start --verbose --exec $DAEMON + case "$?" in + 0) # daemon successfully started + putonline + ;; + 1) # daemon already running + ;; + *) # daemon could not be started + echo "$DAEMON failed to start." + exit 1 + ;; + esac + ;; + stop) + start-stop-daemon --stop --verbose --oknodo --exec $DAEMON + rm -f /var/run/chrony-ppp-up + ;; + restart|force-reload) + echo -n "Restarting $DESC: " + start-stop-daemon --stop --quiet --exec $DAEMON + sleep 1 + start-stop-daemon --start --verbose --exec $DAEMON -- -r + case "$?" in + 0) # daemon successfully started + putonline + ;; + 1) # still running + ;; + *) # daemon could not be started + echo "$DAEMON failed to restart." + rm -f /var/run/chrony-ppp-up + exit 1 + ;; + esac + ;; + status) + status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? + ;; + *) + echo "Usage: /etc/init.d/chrony {start|stop|restart|force-reload|status}" + exit 1 + ;; +esac + +exit 0 diff --git a/init.d/console-setup b/init.d/console-setup new file mode 100755 index 0000000..897b49e --- /dev/null +++ b/init.d/console-setup @@ -0,0 +1,62 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: console-setup +# Required-Start: $remote_fs +# Required-Stop: +# Should-Start: console-screen kbd +# Default-Start: S +# Default-Stop: +# X-Interactive: true +# Short-Description: Set console font and keymap +### END INIT INFO + +set -e + +# This script is used jointly by console-setup and console-setup-mini. +# It belongs to keyboard-configuration because it is forbidden two +# different packages to share common configuration file. + +test -f /bin/setupcon || exit 0 + +if [ -f /etc/default/locale ]; then + # In order to permit auto-detection of the charmap when + # console-setup-mini operates without configuration file. + . /etc/default/locale + export LANG +fi + +if [ -f /lib/lsb/init-functions ]; then + . /lib/lsb/init-functions +else + log_action_begin_msg () { + echo -n "$@... " + } + + log_action_end_msg () { + if [ "$1" -eq 0 ]; then + echo done. + else + echo failed. + fi + } +fi + +case "$1" in + stop|status) + # console-setup isn't a daemon + ;; + start|force-reload|restart|reload) + log_action_begin_msg "Setting up console font and keymap" + if setupcon --save; then + log_action_end_msg 0 + else + log_action_end_msg $? + fi + ;; + *) + echo 'Usage: /etc/init.d/console-setup {start|reload|restart|force-reload|stop|status}' + exit 1 + ;; +esac + +exit 0 diff --git a/init.d/cron b/init.d/cron new file mode 100755 index 0000000..d09a505 --- /dev/null +++ b/init.d/cron @@ -0,0 +1,92 @@ +#!/bin/sh +# Start/stop the cron daemon. +# +### BEGIN INIT INFO +# Provides: cron +# Required-Start: $remote_fs $syslog $time +# Required-Stop: $remote_fs $syslog $time +# Should-Start: $network $named slapd autofs ypbind nscd nslcd winbind +# Should-Stop: $network $named slapd autofs ypbind nscd nslcd winbind +# Default-Start: 2 3 4 5 +# Default-Stop: +# Short-Description: Regular background program processing daemon +# Description: cron is a standard UNIX program that runs user-specified +# programs at periodic scheduled times. vixie cron adds a +# number of features to the basic UNIX cron, including better +# security and more powerful configuration options. +### END INIT INFO + +PATH=/bin:/usr/bin:/sbin:/usr/sbin +DESC="cron daemon" +NAME=cron +DAEMON=/usr/sbin/cron +PIDFILE=/var/run/crond.pid +SCRIPTNAME=/etc/init.d/"$NAME" + +test -f $DAEMON || exit 0 + +. /lib/lsb/init-functions + +[ -r /etc/default/cron ] && . /etc/default/cron + +# Read the system's locale and set cron's locale. This is only used for +# setting the charset of mails generated by cron. To provide locale +# information to tasks running under cron, see /etc/pam.d/cron. +# +# We read /etc/environment, but warn about locale information in +# there because it should be in /etc/default/locale. +parse_environment () +{ + for ENV_FILE in /etc/environment /etc/default/locale; do + [ -r "$ENV_FILE" ] || continue + [ -s "$ENV_FILE" ] || continue + + for var in LANG LANGUAGE LC_ALL LC_CTYPE; do + value=`egrep "^${var}=" "$ENV_FILE" | tail -n1 | cut -d= -f2` + [ -n "$value" ] && eval export $var=$value + + if [ -n "$value" ] && [ "$ENV_FILE" = /etc/environment ]; then + log_warning_msg "/etc/environment has been deprecated for locale information; use /etc/default/locale for $var=$value instead" + fi + done + done + +# Get the timezone set. + if [ -z "$TZ" -a -e /etc/timezone ]; then + TZ=`cat /etc/timezone` + fi +} + +# Parse the system's environment +if [ "$READ_ENV" = "yes" ] ; then + parse_environment +fi + + +case "$1" in +start) log_daemon_msg "Starting periodic command scheduler" "cron" + start_daemon -p $PIDFILE $DAEMON $EXTRA_OPTS + log_end_msg $? + ;; +stop) log_daemon_msg "Stopping periodic command scheduler" "cron" + killproc -p $PIDFILE $DAEMON + RETVAL=$? + [ $RETVAL -eq 0 ] && [ -e "$PIDFILE" ] && rm -f $PIDFILE + log_end_msg $RETVAL + ;; +restart) log_daemon_msg "Restarting periodic command scheduler" "cron" + $0 stop + $0 start + ;; +reload|force-reload) log_daemon_msg "Reloading configuration files for periodic command scheduler" "cron" + # cron reloads automatically + log_end_msg 0 + ;; +status) + status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $? + ;; +*) log_action_msg "Usage: /etc/init.d/cron {start|stop|status|restart|reload|force-reload}" + exit 2 + ;; +esac +exit 0 diff --git a/init.d/dhcpcd b/init.d/dhcpcd new file mode 100755 index 0000000..21fbe4f --- /dev/null +++ b/init.d/dhcpcd @@ -0,0 +1,96 @@ +#!/bin/sh +# +### BEGIN INIT INFO +# Provides: dhcpcd +# Required-Start: $local_fs +# Required-Stop: $local_fs +# Should-Start: +# Should-Stop: +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: IPv4 DHCP client with IPv4LL support +# Description: +### END INIT INFO + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +DHCPCD=/sbin/dhcpcd +NAME=dhcpcd +PIDFILE=/var/run/dhcpcd.pid + +test -x $DHCPCD || exit 0 + +INTERFACES=/etc/network/interfaces + +. /lib/lsb/init-functions + +sanity() +{ + local x= + + case "$($DHCPCD --version)" in + [1234].*) + log_failure_msg "Not running $NAME because an older version" \ + "is currently preferred" + exit 6 + esac + + for x in /var/run/dhcpcd-*.pid; do + [ -f "$x" ] || continue + log_failure_msg "Not running $NAME because there is aleady an" \ + "interface specific instance" + log_failure_msg "$x" + exit 6 + done + + if grep -q "^[[:space:]]*iface[[:space:]]*.*[[:space:]]*inet[[:space:]]*dhcp" \ + $INTERFACES; then + log_failure_msg "Not running $NAME because $INTERFACES" + log_failure_msg "defines some interfaces that will use a" \ + "DHCP client" + exit 6 + fi +} + +case "$1" in +start) + sanity + if pidofproc -p $PIDFILE $DHCPCD >/dev/null; then + log_warning_msg "$NAME is already running" + exit 0 + fi + $DHCPCD + ;; +stop) + sanity + $DHCPCD -x + ;; +restart|force-reload) + sanity + $DHCPCD -x + $DHCPCD + ;; +try-restart) + if ! pidofproc -p $PIDFILE $DHCPCD >/dev/null; then + log_warning_msg "$NAME is not running" + else + sanity + $DHCPCD -x + $DHCPCD + fi + ;; +reload) + if ! pidofproc -p $PIDFILE $DHCPCD >/dev/null; then + log_failure_msg "$NAME is not running" + exit 7 + fi + sanity + $DHCPCD -n + ;; +status) + status_of_proc -p $PIDFILE $DHCPCD "$NAME" || exit $? + ;; +*) + log_failure_msg "Usage: /etc/init.d/dhcpcd {start|stop|restart|try-restart|force-reload|status}" + exit 1 + ;; +esac diff --git a/init.d/halt b/init.d/halt new file mode 100755 index 0000000..c179a25 --- /dev/null +++ b/init.d/halt @@ -0,0 +1,83 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: halt +# Required-Start: +# Required-Stop: +# Default-Start: +# Default-Stop: 0 +# Short-Description: Execute the halt command. +# Description: +### END INIT INFO + +NETDOWN=yes + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +[ -f /etc/default/halt ] && . /etc/default/halt + +. /lib/lsb/init-functions + +do_stop () { + if [ "$INIT_HALT" = "" ] + then + case "$HALT" in + [Pp]*) + INIT_HALT=POWEROFF + ;; + [Hh]*) + INIT_HALT=HALT + ;; + *) + INIT_HALT=POWEROFF + ;; + esac + fi + + # See if we need to cut the power. + if [ "$INIT_HALT" = "POWEROFF" ] && [ -x /etc/init.d/ups-monitor ] + then + /etc/init.d/ups-monitor poweroff + fi + + # Don't shut down drives if we're using RAID. + hddown="-h" + if grep -qs '^md.*active' /proc/mdstat + then + hddown="" + fi + + # If INIT_HALT=HALT don't poweroff. + poweroff="-p" + if [ "$INIT_HALT" = "HALT" ] + then + poweroff="" + fi + + # Make it possible to not shut down network interfaces, + # needed to use wake-on-lan + netdown="-i" + if [ "$NETDOWN" = "no" ]; then + netdown="" + fi + + log_action_msg "Will now halt" + halt -d -f $netdown $poweroff $hddown +} + +case "$1" in + start|status) + # No-op + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + do_stop + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/hostname.sh b/init.d/hostname.sh new file mode 100755 index 0000000..61eb5ea --- /dev/null +++ b/init.d/hostname.sh @@ -0,0 +1,68 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: hostname +# Required-Start: +# Required-Stop: +# Should-Start: glibc +# Default-Start: S +# Default-Stop: +# Short-Description: Set hostname based on /etc/hostname +# Description: Read the machines hostname from /etc/hostname, and +# update the kernel value with this value. If +# /etc/hostname is empty, the current kernel value +# for hostname is used. If the kernel value is +# empty, the value 'localhost' is used. +### END INIT INFO + +PATH=/sbin:/bin + +. /lib/init/vars.sh +. /lib/lsb/init-functions + +do_start () { + [ -f /etc/hostname ] && HOSTNAME="$(cat /etc/hostname)" + + # Keep current name if /etc/hostname is missing. + [ -z "$HOSTNAME" ] && HOSTNAME="$(hostname)" + + # And set it to 'localhost' if no setting was found + [ -z "$HOSTNAME" ] && HOSTNAME=localhost + + [ "$VERBOSE" != no ] && log_action_begin_msg "Setting hostname to '$HOSTNAME'" + hostname "$HOSTNAME" + ES=$? + [ "$VERBOSE" != no ] && log_action_end_msg $ES + exit $ES +} + +do_status () { + HOSTNAME=$(hostname) + if [ "$HOSTNAME" ] ; then + return 0 + else + return 4 + fi +} + +case "$1" in + start|"") + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + # No-op + ;; + status) + do_status + exit $? + ;; + *) + echo "Usage: hostname.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/hwclock.sh b/init.d/hwclock.sh new file mode 100755 index 0000000..185dc29 --- /dev/null +++ b/init.d/hwclock.sh @@ -0,0 +1,123 @@ +#!/bin/sh +# hwclock.sh Set and adjust the CMOS clock. +# +# Version: @(#)hwclock.sh 2.00 14-Dec-1998 miquels@cistron.nl +# +# Patches: +# 2000-01-30 Henrique M. Holschuh +# - Minor cosmetic changes in an attempt to help new +# users notice something IS changing their clocks +# during startup/shutdown. +# - Added comments to alert users of hwclock issues +# and discourage tampering without proper doc reading. +# 2012-02-16 Roger Leigh +# - Use the UTC/LOCAL setting in /etc/adjtime rather than +# the UTC setting in /etc/default/rcS. Additionally +# source /etc/default/hwclock to permit configuration. + +# WARNING: Please read /usr/share/doc/util-linux/README.Debian.hwclock +# before changing this file. You risk serious clock +# misbehaviour otherwise. + +### BEGIN INIT INFO +# Provides: hwclock +# Required-Start: mountdevsubfs +# Required-Stop: mountdevsubfs +# Should-Stop: umountfs +# Default-Start: S +# X-Start-Before: checkroot +# Default-Stop: 0 6 +### END INIT INFO + +# These defaults are user-overridable in /etc/default/hwclock +BADYEAR=no +HWCLOCKACCESS=yes +HWCLOCKPARS= +HCTOSYS_DEVICE=rtc0 + +# We only want to use the system timezone or else we'll get +# potential inconsistency at startup. +unset TZ + +hwclocksh() +{ + [ ! -x /sbin/hwclock ] && return 0 + [ ! -r /etc/default/rcS ] || . /etc/default/rcS + [ ! -r /etc/default/hwclock ] || . /etc/default/hwclock + + . /lib/lsb/init-functions + verbose_log_action_msg() { [ "$VERBOSE" = no ] || log_action_msg "$@"; } + + case "$BADYEAR" in + no|"") BADYEAR="" ;; + yes) BADYEAR="--badyear" ;; + *) log_action_msg "unknown BADYEAR setting: \"$BADYEAR\""; return 1 ;; + esac + + case "$1" in + start) + # If the admin deleted the hwclock config, create a blank + # template with the defaults. + if [ -w /etc ] && [ ! -f /etc/adjtime ] && [ ! -e /etc/adjtime ]; then + printf "0.0 0 0.0\n0\nUTC\n" > /etc/adjtime + fi + + if [ -d /run/udev ] || [ -d /dev/.udev ]; then + return 0 + fi + + if [ "$HWCLOCKACCESS" != no ]; then + log_action_msg "Setting the system clock" + + # Just for reporting. + if head -n 3 /etc/adjtime | tail -n 1 | grep -q '^UTC$' ; then + UTC="--utc" + else + UTC= + fi + # Copies Hardware Clock time to System Clock using the correct + # timezone for hardware clocks in local time, and sets kernel + # timezone. DO NOT REMOVE. + if /sbin/hwclock --rtc=/dev/$HCTOSYS_DEVICE --hctosys $HWCLOCKPARS $BADYEAR; then + # Announce the local time. + verbose_log_action_msg "System Clock set to: `date $UTC`" + else + log_warning_msg "Unable to set System Clock to: `date $UTC`" + fi + else + verbose_log_action_msg "Not setting System Clock" + fi + ;; + stop|restart|reload|force-reload) + # + # Updates the Hardware Clock with the System Clock time. + # This will *override* any changes made to the Hardware Clock. + # + # WARNING: If you disable this, any changes to the system + # clock will not be carried across reboots. + # + + if [ "$HWCLOCKACCESS" != no ]; then + log_action_msg "Saving the system clock" + if /sbin/hwclock --rtc=/dev/$HCTOSYS_DEVICE --systohc $HWCLOCKPARS $BADYEAR; then + verbose_log_action_msg "Hardware Clock updated to `date`" + fi + else + verbose_log_action_msg "Not saving System Clock" + fi + ;; + show) + if [ "$HWCLOCKACCESS" != no ]; then + /sbin/hwclock --rtc=/dev/$HCTOSYS_DEVICE --show $HWCLOCKPARS $BADYEAR + fi + ;; + *) + log_success_msg "Usage: hwclock.sh {start|stop|reload|force-reload|show}" + log_success_msg " start sets kernel (system) clock from hardware (RTC) clock" + log_success_msg " stop and reload set hardware (RTC) clock from kernel (system) clock" + return 1 + ;; + esac +} + +hwclocksh "$@" diff --git a/init.d/kbd b/init.d/kbd new file mode 100755 index 0000000..9e0ec78 --- /dev/null +++ b/init.d/kbd @@ -0,0 +1,278 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: kbd +# Required-Start: $remote_fs +# Required-Stop: +# Default-Start: S +# Default-Stop: +# X-Interactive: true +# Description: Set console screen modes and fonts +# Short-Description: Prepare console +### END INIT INFO + +# This is the boot script for the `kbd' package. +# It loads parameters from /etc/kbd/config and maybe loads +# default font and map. +# (c) 1997 Yann Dirson + +PKG=kbd +if [ -r /etc/$PKG/config ]; then + . /etc/$PKG/config +fi + +if [ -d /etc/$PKG/config.d ]; then + for i in `run-parts --list /etc/$PKG/config.d `; do + . $i + done +fi + +# do some magic with the variables for compatibility with the config +# file of console-tools +for vc in '' `set | grep "^.*_vc[0-9][0-9]*=" | sed 's/^.*\(_vc[0-9][0-9]*\)=.*/\1/'` +do + eval [ '"'\${SCREEN_FONT$vc}'"' ] && eval CONSOLE_FONT$vc=\${CONSOLE_FONT$vc:-\${SCREEN_FONT$vc}} + eval [ '"'\${SCREEN_FONT_MAP$vc}'"' ] && eval FONT_MAP$vc=\${FONT_MAP$vc:-\${SCREEN_FONT_MAP$vc}} + eval [ '"'\${APP_CHARSET_MAP$vc}'"' ] && eval CONSOLE_MAP$vc=\${CONSOLE_MAP$vc:-\${APP_CHARSET_MAP$vc}} +done + +. /lib/lsb/init-functions + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +SETFONT_OPT="-v" + +if which setupcon >/dev/null +then + HAVE_SETUPCON=yes +fi + +# set DEVICE_PREFIX depending on devfs/udev +if [ -d /dev/vc ]; then + DEVICE_PREFIX="/dev/vc/" +else + DEVICE_PREFIX="/dev/tty" +fi + +# determine the system charmap +ENV_FILE='' +[ -r /etc/environment ] && ENV_FILE="/etc/environment" +[ -r /etc/default/locale ] && ENV_FILE="/etc/default/locale" +[ "$ENV_FILE" ] && CHARMAP=$(set -a && . "$ENV_FILE" && locale charmap) +if [ "$CHARMAP" = "UTF-8" -a -z "$CONSOLE_MAP" ] +then + UNICODE_MODE=yes +fi + +unicode_start_stop () +{ + vc=$1 + if [ -n "$UNICODE_MODE" -a -z "`eval echo \\$CONSOLE_MAP_vc$vc`" ]; then + action=unicode_start + else + action=unicode_stop + fi + if [ "${CONSOLE_FONT}" ]; then + $action "${CONSOLE_FONT}" < ${DEVICE_PREFIX}$vc > ${DEVICE_PREFIX}$vc 2> /dev/null || true + else + $action < ${DEVICE_PREFIX}$vc > ${DEVICE_PREFIX}$vc 2> /dev/null || true + fi +} + +test_console () { + local ok + ok=0 + if which tty >/dev/null; then + case "`tty`" in + /dev/tty[1-9]*|/dev/vc/[0-9]*|/dev/console|/dev/ttyv[0-9]*) + return 0 + ;; + esac + ok=1 + fi + + if which kbd_mode >/dev/null; then + mode="`(LC_ALL=C; export LC_ALL; kbd_mode) 2>&1`" + mode=${mode#The keyboard is in } + case "$mode" in + Unicode*|default*|xlate*) return 0 ;; + esac + ok=1 + fi + + if which vidcontrol >/dev/null; then + if vidcontrol -i adapter >&- 2>&-; then + return 0 + fi + ok=1 + fi + + return $ok +} + +setup () +{ + # be sure the main program is installed + which setfont >/dev/null || return + + # drop out if we can't access the console + test_console || return + + # start vcstime + if [ "${DO_VCSTIME}" = "yes" ] && which vcstime >/dev/null; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Starting clock on text console" + vcstime & + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + if [ -d /etc/init ] && which initctl >/dev/null; then + # Upstart + LIST_CONSOLES=`cd /etc/init; find -name 'tty*.conf' -printf '%f ' | sed -e 's/[^0-9 ]//g'` + elif [ -f /etc/systemd/logind.conf ] && which systemd >/dev/null; then + # systemd + N_CONSOLES=`sed -ne 's/#.*//; /NAutoVTs/ { s/[^0-9]//g; p }' /etc/systemd/logind.conf` + if [ -z "$N_CONSOLES" ]; then + N_CONSOLES=6 + fi + LIST_CONSOLES=`seq 1 "$N_CONSOLES"` + else + # traditional SysV init + LIST_CONSOLES=`sed -ne '/^[ \t]#/d; /tty[0-9]\+/ s/.*tty\([0-9]\+\).*/\1/ p' /etc/inittab` + fi + + # Global default font+map + if [ -z "${HAVE_SETUPCON}" -a "${CONSOLE_FONT}${CONSOLE_MAP}${FONT_MAP}" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting up general console font" + sfm="${FONT_MAP}" && [ "$sfm" ] && sfm="-u $sfm" + acm="${CONSOLE_MAP}" && [ "$acm" ] && acm="-m $acm" + + # Set for the first 6 VCs (as they are allocated in /etc/inittab) + for vc in $LIST_CONSOLES + do + if ! ( unicode_start_stop $vc \ + && setfont -C ${DEVICE_PREFIX}$vc ${SETFONT_OPT} $sfm ${CONSOLE_FONT} $acm ) + then + [ "$VERBOSE" != "no" ] && log_action_end_msg 1 + break + fi + done + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + # Default to Unicode mode for new VTs? + if [ -f /sys/module/vt/parameters/default_utf8 ]; then + if [ -n "$UNICODE_MODE" ]; then + echo 1 + else + echo 0 + fi > /sys/module/vt/parameters/default_utf8 + fi + + # Per-VC font+sfm + PERVC_FONTS="`set | grep "^CONSOLE_FONT_vc[0-9]*=" | tr -d \' `" + if [ -z "${HAVE_SETUPCON}" -a "${PERVC_FONTS}" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting up per-VC fonts" + for font in ${PERVC_FONTS} + do + # extract VC and FONTNAME info from variable setting + vc=`echo $font | cut -b16- | cut -d= -f1` + eval font=\$CONSOLE_FONT_vc$vc + # eventually find an associated SFM + eval sfm=\${FONT_MAP_vc${vc}} + [ "$sfm" ] && sfm="-u $sfm" + if ! ( unicode_start_stop $vc \ + && setfont -C ${DEVICE_PREFIX}$vc ${SETFONT_OPT} $sfm $font ) + then + [ "$VERBOSE" != "no" ] && log_action_end_msg 1 + break + fi + done + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + + # Per-VC ACMs + PERVC_ACMS="`set | grep "^CONSOLE_MAP_vc[0-9]*=" | tr -d \' `" + if [ -z "${HAVE_SETUPCON}" -a "${PERVC_ACMS}" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting up per-VC ACM's" + for acm in ${PERVC_ACMS} + do + # extract VC and ACM_FONTNAME info from variable setting + vc=`echo $acm | cut -b15- | cut -d= -f1` + eval acm=\$CONSOLE_MAP_vc$vc + if ! setfont -C "${DEVICE_PREFIX}$vc" ${SETFONT_OPT} -m "$acm"; then + [ "$VERBOSE" != "no" ] && log_action_end_msg 1 + break + fi + done + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + + # screensaver stuff + setterm_args="" + if [ "$BLANK_TIME" ]; then + setterm_args="$setterm_args -blank $BLANK_TIME" + fi + if [ "$BLANK_DPMS" ]; then + setterm_args="$setterm_args -powersave $BLANK_DPMS" + fi + if [ "$POWERDOWN_TIME" ]; then + setterm_args="$setterm_args -powerdown $POWERDOWN_TIME" + fi + if [ "$setterm_args" ]; then + setterm $setterm_args + fi + + # Keyboard rate and delay + KBDRATE_ARGS="" + if [ -n "$KEYBOARD_RATE" ]; then + KBDRATE_ARGS="-r $KEYBOARD_RATE" + fi + if [ -n "$KEYBOARD_DELAY" ]; then + KBDRATE_ARGS="$KBDRATE_ARGS -d $KEYBOARD_DELAY" + fi + if [ -n "$KBDRATE_ARGS" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting keyboard rate and delay" + kbdrate -s $KBDRATE_ARGS + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + # Inform gpm if present, of potential changes. + if [ -f /var/run/gpm.pid ]; then + kill -s WINCH `cat /var/run/gpm.pid` 2> /dev/null + fi + + # Allow user to remap keys on the console + if [ -z "${HAVE_SETUPCON}" -a -r /etc/$PKG/remap ]; then + dumpkeys < ${DEVICE_PREFIX}1 | sed -f /etc/$PKG/remap | loadkeys --quiet + fi + + # Set LEDS here + if [ -n "$LEDS" ]; then + for i in $LIST_CONSOLES + do + setleds -D $LEDS < $DEVICE_PREFIX$i + done + fi +} + +case "$1" in + start|reload|restart|force-reload) + if [ -n "$HAVE_SETUPCON" ] + then + log_action_msg "Setting console screen modes" + else + log_action_msg "Setting console screen modes and fonts" + fi + setup + ;; + stop) + ;; + status) + ;; + *) + setup + ;; +esac + +: + diff --git a/init.d/keyboard-setup b/init.d/keyboard-setup new file mode 100755 index 0000000..1eabc40 --- /dev/null +++ b/init.d/keyboard-setup @@ -0,0 +1,66 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: keyboard-setup +# Required-Start: mountkernfs +# Required-Stop: +# Should-Start: keymap udev +# X-Start-Before: checkroot +# Default-Start: S +# Default-Stop: +# X-Interactive: true +# Short-Description: Set preliminary keymap +# Description: Set the console keyboard as early as possible +# so during the file systems checks the administrator +# can interact. At this stage of the boot process +# only the ASCII symbols are supported. +### END INIT INFO + +set -e + +# This script is not used by keyboard-configuration. It is used +# jointly by console-setup and console-setup-mini + +test -f /bin/setupcon || exit 0 + +if [ -f /etc/default/locale ]; then + # In order to permit auto-detection of the charmap when + # console-setup-mini operates without configuration file. + . /etc/default/locale + export LANG +fi + +if [ -f /lib/lsb/init-functions ]; then + . /lib/lsb/init-functions +else + log_action_begin_msg () { + echo -n "$@... " + } + + log_action_end_msg () { + if [ "$1" -eq 0 ]; then + echo done. + else + echo failed. + fi + } +fi + +case "$1" in + stop|status) + # keyboard-setup isn't a daemon + ;; + start|force-reload|restart|reload) + log_action_begin_msg "Setting preliminary keymap" + if setupcon -k 2>/dev/null; then + log_action_end_msg 0 + else + log_action_end_msg $? + fi + ;; + *) + echo 'Usage: /etc/init.d/keyboard-setup {start|reload|restart|force-reload|stop|status}' + exit 1 + ;; +esac + +exit 0 diff --git a/init.d/killprocs b/init.d/killprocs new file mode 100755 index 0000000..d141de6 --- /dev/null +++ b/init.d/killprocs @@ -0,0 +1,62 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: killprocs +# Required-Start: $local_fs +# Required-Stop: +# Default-Start: 1 +# Default-Stop: +# Short-Description: executed by init(8) upon entering runlevel 1 (single). +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin + +. /lib/lsb/init-functions + +do_start () { + # Kill all processes. + log_action_begin_msg "Asking all remaining processes to terminate" + killall5 -15 # SIGTERM + log_action_end_msg 0 + alldead="" + for seq in 1 2 3 4 5 6 7 8 9 10; do + # use SIGCONT/signal 18 to check if there are + # processes left. No need to check the exit code + # value, because either killall5 work and it make + # sense to wait for processes to die, or it fail and + # there is nothing to wait for. + + if killall5 -18 ; then + : + else + alldead=1 + break + fi + + sleep 1 + done + if [ -z "$alldead" ] ; then + log_action_begin_msg "Killing all remaining processes" + killall5 -9 # SIGKILL + log_action_end_msg 1 + else + log_action_begin_msg "All processes ended within $seq seconds." + log_action_end_msg 0 + fi +} + +case "$1" in + start) + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac diff --git a/init.d/kmod b/init.d/kmod new file mode 100755 index 0000000..7ec4081 --- /dev/null +++ b/init.d/kmod @@ -0,0 +1,92 @@ +#!/bin/sh -e +### BEGIN INIT INFO +# Provides: kmod +# Required-Start: +# Required-Stop: +# Should-Start: checkroot +# Should-Stop: +# Default-Start: S +# Default-Stop: +# Short-Description: Load the modules listed in /etc/modules. +# Description: Load the modules listed in /etc/modules. +### END INIT INFO + +# Silently exit if the kernel does not support modules. +[ -f /proc/modules ] || exit 0 +[ -x /sbin/modprobe ] || exit 0 + +[ -f /etc/default/rcS ] && . /etc/default/rcS +. /lib/lsb/init-functions + +PATH='/sbin:/bin' + +case "$1" in + start) + ;; + + stop|restart|reload|force-reload) + log_warning_msg "Action '$1' is meaningless for this init script" + exit 0 + ;; + + *) + log_success_msg "Usage: $0 start" + exit 1 +esac + +load_module() { + local module args + module="$1" + args="$2" + + if [ "$VERBOSE" != no ]; then + log_action_msg "Loading kernel module $module" + modprobe $module $args || true + else + modprobe $module $args > /dev/null 2>&1 || true + fi +} + +modules_files() { + local modules_load_dirs='/etc/modules-load.d /run/modules-load.d /lib/modules-load.d' + local processed=' ' + local add_etc_modules=true + + for dir in $modules_load_dirs; do + [ -d $dir ] || continue + for file in $(run-parts --list --regex='\.conf$' $dir 2> /dev/null || true); do + local base=${file##*/} + if echo -n "$processed" | grep -qF " $base "; then + continue + fi + if [ "$add_etc_modules" -a -L $file \ + -a "$(readlink -f $file)" = /etc/modules ]; then + add_etc_modules= + fi + processed="$processed$base " + echo $file + done + done + + if [ "$add_etc_modules" ]; then + echo /etc/modules + fi +} + +if [ "$VERBOSE" = no ]; then + log_action_begin_msg 'Loading kernel modules' +fi + +files=$(modules_files) +if [ "$files" ] ; then + grep -h '^[^#]' $files | + while read module args; do + [ "$module" ] || continue + load_module "$module" "$args" + done +fi + +if [ "$VERBOSE" = no ]; then + log_action_end_msg 0 +fi + diff --git a/init.d/lvm2 b/init.d/lvm2 new file mode 100755 index 0000000..33a4a3c --- /dev/null +++ b/init.d/lvm2 @@ -0,0 +1,33 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: lvm2 lvm +# Required-Start: mountdevsubfs +# Required-Stop: +# Should-Start: udev mdadm-raid cryptdisks-early multipath-tools-boot +# Should-Stop: umountroot mdadm-raid +# X-Start-Before: checkfs mountall +# X-Stop-After: umountfs +# Default-Start: S +# Default-Stop: +### END INIT INFO + +SCRIPTNAME=/etc/init.d/lvm2 + +. /lib/lsb/init-functions + +[ -x /sbin/vgchange ] || exit 0 + +case "$1" in + start) + log_action_begin_msg "Setting up LVM Volume Groups" + /sbin/lvm vgchange -aay --sysinit >/dev/null + log_action_end_msg "$?" + ;; + stop|restart|force-reload|status) + ;; + *) + echo "Usage: $SCRIPTNAME start" >&2 + exit 3 + ;; +esac + diff --git a/init.d/mountall-bootclean.sh b/init.d/mountall-bootclean.sh new file mode 100755 index 0000000..546c532 --- /dev/null +++ b/init.d/mountall-bootclean.sh @@ -0,0 +1,35 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mountall-bootclean +# Required-Start: mountall +# Required-Stop: +# Default-Start: S +# Default-Stop: +# X-Start-Before: bootmisc +# Short-Description: bootclean after mountall. +# Description: Clean temporary filesystems after +# all local filesystems have been mounted. +### END INIT INFO + +. /lib/init/bootclean.sh + +case "$1" in + start|"") + # Clean /tmp, /var/lock, /var/run + clean_all + exit $? + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: mountall-bootclean.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/mountall.sh b/init.d/mountall.sh new file mode 100755 index 0000000..baaacca --- /dev/null +++ b/init.d/mountall.sh @@ -0,0 +1,95 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mountall +# Required-Start: checkfs checkroot-bootclean +# Required-Stop: +# Default-Start: S +# Default-Stop: +# Short-Description: Mount all filesystems. +# Description: +### END INIT INFO + +PATH=/sbin:/bin +. /lib/init/vars.sh +. /lib/init/tmpfs.sh + +. /lib/lsb/init-functions +. /lib/init/mount-functions.sh +. /lib/init/swap-functions.sh + +# for ntfs-3g to get correct file name encoding +if [ -r /etc/default/locale ]; then + . /etc/default/locale + export LANG +fi + +do_start() { + # + # Mount local file systems in /etc/fstab. + # + mount_all_local() { + mount -a -t nonfs,nfs4,smbfs,cifs,ncp,ncpfs,coda,ocfs2,gfs,gfs2,ceph \ + -O no_netdev + } + pre_mountall + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Mounting local filesystems" + mount_all_local + log_action_end_msg $? + else + log_daemon_msg "Will now mount local filesystems" + mount_all_local + log_end_msg $? + fi + post_mountall + + # We might have mounted something over /run; see if + # /run/initctl is present. Look for + # /usr/share/sysvinit/update-rc.d to verify that sysvinit (and + # not upstart) is installed). + INITCTL="/run/initctl" + if [ ! -p "$INITCTL" ] && [ -f "/usr/share/sysvinit/update-rc.d" ]; then + # Create new control channel + rm -f "$INITCTL" + mknod -m 600 "$INITCTL" p + + # Reopen control channel. + PID="$(pidof -s /sbin/init || echo 1)" + [ -n "$PID" ] && kill -s USR1 "$PID" + fi + + # Execute swapon command again, in case we want to swap to + # a file on a now mounted filesystem. + swaponagain 'swapfile' + + # Remount tmpfs filesystems; with increased VM after swapon, + # the size limits may be adjusted. + mount_run mount_noupdate + mount_lock mount_noupdate + mount_shm mount_noupdate + + # Now we have mounted everything, check whether we need to + # mount a tmpfs on /tmp. We can now also determine swap size + # to factor this into our size limit. + mount_tmp mount_noupdate +} + +case "$1" in + start|"") + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: mountall.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/mountdevsubfs.sh b/init.d/mountdevsubfs.sh new file mode 100755 index 0000000..bf1116b --- /dev/null +++ b/init.d/mountdevsubfs.sh @@ -0,0 +1,68 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mountdevsubfs +# Required-Start: mountkernfs +# Required-Stop: +# Should-Start: udev +# Default-Start: S +# Default-Stop: +# Short-Description: Mount special file systems under /dev. +# Description: Mount the virtual filesystems the kernel provides +# that ordinarily live under the /dev filesystem. +### END INIT INFO +# +# This script gets called multiple times during boot +# + +PATH=/sbin:/bin +TTYGRP=5 +TTYMODE=620 +[ -f /etc/default/devpts ] && . /etc/default/devpts + +KERNEL="$(uname -s)" + +. /lib/init/vars.sh +. /lib/init/tmpfs.sh + +. /lib/lsb/init-functions +. /lib/init/mount-functions.sh + +# May be run several times, so must be idempotent. +# $1: Mount mode, to allow for remounting +mount_filesystems () { + MNTMODE="$1" + + # Mount a tmpfs on /run/shm + mount_shm "$MNTMODE" + + # Mount /dev/pts + if [ "$KERNEL" = Linux ] + then + if [ ! -d /dev/pts ] + then + mkdir --mode=755 /dev/pts + [ -x /sbin/restorecon ] && /sbin/restorecon /dev/pts + fi + domount "$MNTMODE" devpts "" /dev/pts devpts "-onoexec,nosuid,gid=$TTYGRP,mode=$TTYMODE" + fi +} + +case "$1" in + "") + echo "Warning: mountdevsubfs should be called with the 'start' argument." >&2 + mount_filesystems mount_noupdate + ;; + start) + mount_filesystems mount_noupdate + ;; + restart|reload|force-reload) + mount_filesystems remount + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: mountdevsubfs [start|stop]" >&2 + exit 3 + ;; +esac diff --git a/init.d/mountkernfs.sh b/init.d/mountkernfs.sh new file mode 100755 index 0000000..e95cac3 --- /dev/null +++ b/init.d/mountkernfs.sh @@ -0,0 +1,75 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mountkernfs +# Required-Start: +# Required-Stop: +# Should-Start: glibc +# Default-Start: S +# Default-Stop: +# Short-Description: Mount kernel virtual file systems. +# Description: Mount initial set of virtual filesystems the kernel +# provides and that are required by everything. +### END INIT INFO + +PATH=/sbin:/bin +. /lib/init/vars.sh +. /lib/init/tmpfs.sh + +. /lib/lsb/init-functions +. /lib/init/mount-functions.sh + +# May be run several times, so must be idempotent. +# $1: Mount mode, to allow for remounting +mount_filesystems () { + MNTMODE="$1" + + # + # Mount tmpfs on /run and/or /run/lock + # + mount_run "$MNTMODE" + mount_lock "$MNTMODE" + + # + # Mount proc filesystem on /proc + # + domount "$MNTMODE" proc "" /proc proc "-onodev,noexec,nosuid" + + # + # Mount sysfs on /sys + # + # Only mount sysfs if it is supported (kernel >= 2.6) + if grep -E -qs "sysfs\$" /proc/filesystems + then + domount "$MNTMODE" sysfs "" /sys sysfs "-onodev,noexec,nosuid" + fi + + if [ -d /sys/fs/pstore ] + then + domount "$MNTMODE" pstore "" /sys/fs/pstore pstore "" + fi + + if [ -d /sys/kernel/config ] + then + domount "$MNTMODE" configfs "" /sys/kernel/config configfs "" + fi +} + +case "$1" in + "") + echo "Warning: mountkernfs should be called with the 'start' argument." >&2 + mount_filesystems mount_noupdate + ;; + start) + mount_filesystems mount_noupdate + ;; + restart|reload|force-reload) + mount_filesystems remount + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: mountkernfs [start|stop]" >&2 + exit 3 + ;; +esac diff --git a/init.d/mountnfs-bootclean.sh b/init.d/mountnfs-bootclean.sh new file mode 100755 index 0000000..d1a6d8b --- /dev/null +++ b/init.d/mountnfs-bootclean.sh @@ -0,0 +1,35 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mountnfs-bootclean +# Required-Start: $local_fs mountnfs +# Required-Stop: +# Default-Start: S +# Default-Stop: +# X-Start-Before: bootmisc +# Short-Description: bootclean after mountnfs. +# Description: Clean temporary filesystems after +# network filesystems have been mounted. +### END INIT INFO + +. /lib/init/bootclean.sh + +case "$1" in + start|"") + # Clean /tmp, /var/lock, /var/run + clean_all + exit $? + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: mountnfs-bootclean.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/mountnfs.sh b/init.d/mountnfs.sh new file mode 100755 index 0000000..6b1b09c --- /dev/null +++ b/init.d/mountnfs.sh @@ -0,0 +1,106 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mountnfs +# Required-Start: $local_fs +# Required-Stop: +# Should-Start: $network $portmap nfs-common udev-mtab +# Default-Start: S +# Default-Stop: +# Short-Description: Wait for network file systems to be mounted +# Description: Network file systems are mounted by +# /etc/network/if-up.d/mountnfs in the background +# when interfaces are brought up; this script waits +# for them to be mounted before carrying on. +### END INIT INFO + +. /lib/init/vars.sh +. /lib/init/mount-functions.sh +. /lib/lsb/init-functions + +do_wait_async_mount() { + # Read through fstab line by line. If it is NFS, set the flag + # for mounting NFS file systems. If any NFS partition is found + # then wait around for it. + + waitnfs= + for file in "$(eval ls $(fstab_files))"; do + if [ -f "$file" ]; then + while read DEV MTPT FSTYPE OPTS REST; do + case "$DEV" in + ""|\#*) + continue + ;; + esac + case "$OPTS" in + noauto|*,noauto|noauto,*|*,noauto,*) + continue + ;; + esac + case "$FSTYPE" in + nfs|nfs4|smbfs|cifs|coda|ncp|ncpfs|ocfs2|gfs|ceph) + ;; + *) + continue + ;; + esac + case "$MTPT" in + /usr/local|/usr/local/*) + ;; + /usr|/usr/*) + waitnfs="$waitnfs $MTPT" + ;; + /var|/var/*) + waitnfs="$waitnfs $MTPT" + ;; + esac + done < "$file" + fi + done + + # Wait for each path, the timeout is for all of them as that's + # really the maximum time we have to wait anyway + TIMEOUT=900 + for mountpt in $waitnfs; do + log_action_begin_msg "Waiting for $mountpt" + + while ! mountpoint -q $mountpt; do + sleep 0.1 + + TIMEOUT=$(( $TIMEOUT - 1 )) + if [ $TIMEOUT -le 0 ]; then + log_action_end_msg 1 + break + fi + done + + if [ $TIMEOUT -gt 0 ]; then + log_action_end_msg 0 + fi + done +} + +case "$1" in + start) + # Using 'no !=' instead of 'yes =' to make sure async nfs + # mounting is the default even without a value in + # /etc/default/rcS + if [ no != "$ASYNCMOUNTNFS" ] ; then + do_wait_async_mount + else + FROMINITD=yes /etc/network/if-up.d/mountnfs + fi + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/networking b/init.d/networking new file mode 100755 index 0000000..33c703c --- /dev/null +++ b/init.d/networking @@ -0,0 +1,212 @@ +#!/bin/sh -e +### BEGIN INIT INFO +# Provides: networking ifupdown +# Required-Start: mountkernfs $local_fs urandom +# Required-Stop: $local_fs +# Default-Start: S +# Default-Stop: 0 6 +# Short-Description: Raise network interfaces. +# Description: Prepare /run/network directory, ifstate file and raise network interfaces, or take them down. +### END INIT INFO + +PATH="/sbin:/bin" +RUN_DIR="/run/network" +IFSTATE="$RUN_DIR/ifstate" +STATEDIR="$RUN_DIR/state" + +[ -x /sbin/ifup ] || exit 0 +[ -x /sbin/ifdown ] || exit 0 + +. /lib/lsb/init-functions + +CONFIGURE_INTERFACES=yes +EXCLUDE_INTERFACES= +VERBOSE=no + +[ -f /etc/default/networking ] && . /etc/default/networking + +verbose="" +[ "$VERBOSE" = yes ] && verbose=-v + +process_exclusions() { + set -- $EXCLUDE_INTERFACES + exclusions="" + for d + do + exclusions="-X $d $exclusions" + done + echo $exclusions +} + +process_options() { + [ -e /etc/network/options ] || return 0 + log_warning_msg "/etc/network/options still exists and it will be IGNORED! Please use /etc/sysctl.conf instead." +} + +check_ifstate() { + if [ ! -d "$RUN_DIR" ] ; then + if ! mkdir -p "$RUN_DIR" ; then + log_failure_msg "can't create $RUN_DIR" + exit 1 + fi + if ! chown root:netdev "$RUN_DIR" ; then + log_warning_msg "can't chown $RUN_DIR" + fi + fi + if [ ! -r "$IFSTATE" ] ; then + if ! :> "$IFSTATE" ; then + log_failure_msg "can't initialise $IFSTATE" + exit 1 + fi + fi +} + +check_network_file_systems() { + [ -e /proc/mounts ] || return 0 + + if [ -e /etc/iscsi/iscsi.initramfs ]; then + log_warning_msg "not deconfiguring network interfaces: iSCSI root is mounted." + exit 0 + fi + + while read DEV MTPT FSTYPE REST; do + case $DEV in + /dev/nbd*|/dev/nd[a-z]*|/dev/etherd/e*) + log_warning_msg "not deconfiguring network interfaces: network devices still mounted." + exit 0 + ;; + esac + case $FSTYPE in + nfs|nfs4|smbfs|ncp|ncpfs|cifs|coda|ocfs2|gfs|pvfs|pvfs2|fuse.httpfs|fuse.curlftpfs) + log_warning_msg "not deconfiguring network interfaces: network file systems still mounted." + exit 0 + ;; + esac + done < /proc/mounts +} + +check_network_swap() { + [ -e /proc/swaps ] || return 0 + + while read DEV MTPT FSTYPE REST; do + case $DEV in + /dev/nbd*|/dev/nd[a-z]*|/dev/etherd/e*) + log_warning_msg "not deconfiguring network interfaces: network swap still mounted." + exit 0 + ;; + esac + done < /proc/swaps +} + +ifup_hotplug () { + if [ -d /sys/class/net ] + then + ifaces=$(for iface in $(ifquery --list --allow=hotplug) + do + link=${iface##:*} + link=${link##.*} + if [ -e "/sys/class/net/$link" ] + then + # link detection does not work unless we up the link + ip link set "$iface" up || true + if [ "$(cat /sys/class/net/$link/operstate)" = up ] + then + echo "$iface" + fi + fi + done) + if [ -n "$ifaces" ] + then + ifup $ifaces "$@" || true + fi + fi +} + +case "$1" in +start) + if init_is_upstart; then + exit 1 + fi + process_options + check_ifstate + + if [ "$CONFIGURE_INTERFACES" = no ] + then + log_action_msg "Not configuring network interfaces, see /etc/default/networking" + exit 0 + fi + set -f + exclusions=$(process_exclusions) + log_action_begin_msg "Configuring network interfaces" + if [ -x /sbin/udevadm ]; then + if [ -n "$(ifquery --list --exclude=lo)" ] || [ -n "$(ifquery --list --allow=hotplug)" ]; then + udevadm settle || true + fi + fi + if ifup -a $exclusions $verbose && ifup_hotplug $exclusions $verbose + then + log_action_end_msg $? + else + log_action_end_msg $? + fi + ;; + +stop) + if init_is_upstart; then + exit 0 + fi + check_network_file_systems + check_network_swap + + log_action_begin_msg "Deconfiguring network interfaces" + if ifdown -a --exclude=lo $verbose; then + log_action_end_msg $? + else + log_action_end_msg $? + fi + ;; + +reload) + if init_is_upstart; then + exit 1 + fi + process_options + + log_action_begin_msg "Reloading network interfaces configuration" + state=$(ifquery --state) + ifdown -a --exclude=lo $verbose || true + if ifup --exclude=lo $state $verbose ; then + log_action_end_msg $? + else + log_action_end_msg $? + fi + ;; + +force-reload|restart) + if init_is_upstart; then + exit 1 + fi + process_options + + log_warning_msg "Running $0 $1 is deprecated because it may not re-enable some interfaces" + log_action_begin_msg "Reconfiguring network interfaces" + ifdown -a --exclude=lo $verbose || true + set -f + exclusions=$(process_exclusions) + if ifup -a --exclude=lo $exclusions $verbose && ifup_hotplug $exclusions $verbose + then + log_action_end_msg $? + else + log_action_end_msg $? + fi + ;; + +*) + echo "Usage: /etc/init.d/networking {start|stop|reload|restart|force-reload}" + exit 1 + ;; +esac + +exit 0 + +# vim: noet ts=8 diff --git a/init.d/postfix b/init.d/postfix new file mode 100755 index 0000000..8a1eb07 --- /dev/null +++ b/init.d/postfix @@ -0,0 +1,269 @@ +#!/bin/sh -e + +# Start or stop Postfix +# +# LaMont Jones +# based on sendmail's init.d script + +### BEGIN INIT INFO +# Provides: postfix mail-transport-agent +# Required-Start: $local_fs $remote_fs $syslog $named $network $time +# Required-Stop: $local_fs $remote_fs $syslog $named $network +# Should-Start: postgresql mysql clamav-daemon postgrey spamassassin saslauthd dovecot +# Should-Stop: postgresql mysql clamav-daemon postgrey spamassassin saslauthd dovecot +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Postfix Mail Transport Agent +# Description: postfix is a Mail Transport agent +### END INIT INFO + +PATH=/bin:/usr/bin:/sbin:/usr/sbin +DAEMON=/usr/sbin/postfix +NAME=Postfix +TZ= +unset TZ + +# Defaults - don't touch, edit /etc/default/postfix +SYNC_CHROOT="y" + +test -f /etc/default/postfix && . /etc/default/postfix + +test -x $DAEMON && test -f /etc/postfix/main.cf || exit 0 + +. /lib/lsb/init-functions +#DISTRO=$(lsb_release -is 2>/dev/null || echo Debian) + +enabled_instances() { + postmulti -l -a | awk '($3=="y") { print $1}' +} + +running() { + INSTANCE="$1" + if [ "X$INSTANCE" = X ]; then + POSTCONF="postconf" + else + POSTCONF="postmulti -i $INSTANCE -x postconf" + fi + + queue=$($POSTCONF -h queue_directory 2>/dev/null || echo /var/spool/postfix) + if [ -f ${queue}/pid/master.pid ]; then + pid=$(sed 's/ //g' ${queue}/pid/master.pid) + # what directory does the executable live in. stupid prelink systems. + dir=$(ls -l /proc/$pid/exe 2>/dev/null | sed 's/.* -> //; s/\/[^\/]*$//') + if [ "X$dir" = "X/usr/lib/postfix" ]; then + echo y + fi + fi +} + +configure_instance() { + INSTANCE="$1" + if [ "X$INSTANCE" = X ]; then + POSTCONF="postconf" + else + POSTCONF="postmulti -i $INSTANCE -x postconf" + fi + + + # if you set myorigin to 'ubuntu.com' or 'debian.org', it's wrong, and annoys the admins of + # those domains. See also sender_canonical_maps. + + MYORIGIN=$($POSTCONF -h myorigin | tr 'A-Z' 'a-z') + if [ "X${MYORIGIN#/}" != "X${MYORIGIN}" ]; then + MYORIGIN=$(tr 'A-Z' 'a-z' < $MYORIGIN) + fi + if [ "X$MYORIGIN" = Xubuntu.com ] || [ "X$MYORIGIN" = Xdebian.org ]; then + log_failure_msg "Invalid \$myorigin ($MYORIGIN), refusing to start" + log_end_msg 1 + exit 1 + fi + + config_dir=$($POSTCONF -h config_directory) + # see if anything is running chrooted. + NEED_CHROOT=$(awk '/^[0-9a-z]/ && ($5 ~ "[-yY]") { print "y"; exit}' ${config_dir}/master.cf) + + if [ -n "$NEED_CHROOT" ] && [ -n "$SYNC_CHROOT" ]; then + # Make sure that the chroot environment is set up correctly. + oldumask=$(umask) + umask 022 + queue_dir=$($POSTCONF -h queue_directory) + cd "$queue_dir" + + # copy the CA path if specified + ca_path=$($POSTCONF -h smtp_tls_CApath) + case "$ca_path" in + '') :;; # no ca_path + $queue_dir/*) :;; # skip stuff already in chroot, (and to make vim syntax happy: */) + *) + if test -d "$ca_path"; then + dest_dir="$queue_dir/${ca_path#/}" + # strip any/all trailing / + while [ "${dest_dir%/}" != "${dest_dir}" ]; do + dest_dir="${dest_dir%/}" + done + new=0 + if test -d "$dest_dir"; then + # write to a new directory ... + dest_dir="${dest_dir}.NEW" + new=1 + fi + mkdir --parent ${dest_dir} + # handle files in subdirectories + (cd "$ca_path" && find . -name '*.pem' -print0 | cpio -0pdL --quiet "$dest_dir") 2>/dev/null || + (log_failure_msg failure copying certificates; exit 1) + c_rehash "$dest_dir" >/dev/null 2>&1 + if [ "$new" = 1 ]; then + # and replace the old directory + rm -rf "${dest_dir%.NEW}" + mv "$dest_dir" "${dest_dir%.NEW}" + fi + fi + ;; + esac + + # if there is a CA file, copy it + ca_file=$($POSTCONF -h smtp_tls_CAfile) + case "$ca_file" in + $queue_dir/*) :;; # skip stuff already in chroot + '') # no ca_file + # or copy the bundle to preserve functionality + ca_bundle=/etc/ssl/certs/ca-certificates.crt + if [ -f $ca_bundle ]; then + mkdir --parent "$queue_dir/${ca_bundle%/*}" + cp -L "$ca_bundle" "$queue_dir/${ca_bundle%/*}" + fi + ;; + *) + if test -f "$ca_file"; then + dest_dir="$queue_dir/${ca_path#/}" + mkdir --parent "$dest_dir" + cp -L "$ca_file" "$dest_dir" + fi + ;; + esac + + # if we're using unix:passwd.byname, then we need to add etc/passwd. + local_maps=$($POSTCONF -h local_recipient_maps) + if [ "X$local_maps" != "X${local_maps#*unix:passwd.byname}" ]; then + if [ "X$local_maps" = "X${local_maps#*proxy:unix:passwd.byname}" ]; then + sed 's/^\([^:]*\):[^:]*/\1:x/' /etc/passwd > etc/passwd + chmod a+r etc/passwd + fi + fi + + FILES="etc/localtime etc/services etc/resolv.conf etc/hosts \ + etc/host.conf etc/nsswitch.conf etc/nss_mdns.config" + for file in $FILES; do + [ -d ${file%/*} ] || mkdir -p ${file%/*} + if [ -f /${file} ]; then rm -f ${file} && cp /${file} ${file}; fi + if [ -f ${file} ]; then chmod a+rX ${file}; fi + done + # ldaps needs this. debian bug 572841 + (echo /dev/random; echo /dev/urandom) | cpio -pdL --quiet . 2>/dev/null || true + rm -f usr/lib/zoneinfo/localtime + mkdir -p usr/lib/zoneinfo + ln -sf /etc/localtime usr/lib/zoneinfo/localtime + + LIBLIST=$(for name in gcc_s nss resolv; do + for f in /lib/*/lib${name}*.so* /lib/lib${name}*.so*; do + if [ -f "$f" ]; then echo ${f#/}; fi; + done; + done) + + if [ -n "$LIBLIST" ]; then + for f in $LIBLIST; do + rm -f "$f" + done + tar cf - -C / $LIBLIST 2>/dev/null |tar xf - + fi + umask $oldumask + fi +} + +case "$1" in + start) + log_daemon_msg "Starting Postfix Mail Transport Agent" postfix + RET=0 + # for all instances that are not already running, handle chroot setup if needed, and start + for INSTANCE in $(enabled_instances); do + RUNNING=$(running $INSTANCE) + if [ "X$RUNNING" = X ]; then + configure_instance $INSTANCE + CMD="/usr/sbin/postmulti -- -i $INSTANCE -x ${DAEMON}" + if ! start-stop-daemon --start --exec $CMD quiet-quick-start; then + RET=1 + fi + fi + done + log_end_msg $RET + ;; + + stop) + log_daemon_msg "Stopping Postfix Mail Transport Agent" postfix + RET=0 + # for all instances that are not already running, handle chroot setup if needed, and start + for INSTANCE in $(enabled_instances); do + RUNNING=$(running $INSTANCE) + if [ "X$RUNNING" != X ]; then + CMD="/usr/sbin/postmulti -i $INSTANCE -x ${DAEMON}" + if ! ${CMD} quiet-stop; then + RET=1 + fi + fi + done + log_end_msg $RET + ;; + + restart) + $0 stop + $0 start + ;; + + force-reload|reload) + log_action_begin_msg "Reloading Postfix configuration" + if ${DAEMON} quiet-reload; then + log_action_end_msg 0 + else + log_action_end_msg 1 + fi + ;; + + status) + ALL=1 + ANY=0 + # for all instances that are not already running, handle chroot setup if needed, and start + for INSTANCE in $(enabled_instances); do + RUNNING=$(running $INSTANCE) + if [ "X$RUNNING" != X ]; then + ANY=1 + else + ALL=0 + fi + done + # handle the case when postmulti returns *no* configured instances + if [ $ANY = 0 ]; then + ALL=0 + fi + if [ $ALL = 1 ]; then + log_success_msg "postfix is running" + exit 0 + elif [ $ANY = 1 ]; then + log_success_msg "some postfix instances are running" + exit 0 + else + log_success_msg "postfix is not running" + exit 3 + fi + ;; + + flush|check|abort) + ${DAEMON} $1 + ;; + + *) + log_action_msg "Usage: /etc/init.d/postfix {start|stop|restart|reload|flush|check|abort|force-reload|status}" + exit 1 + ;; +esac + +exit 0 diff --git a/init.d/procps b/init.d/procps new file mode 100755 index 0000000..ae68500 --- /dev/null +++ b/init.d/procps @@ -0,0 +1,54 @@ +#! /bin/sh +# /etc/init.d/procps: Set kernel variables from /etc/sysctl.conf +# +# written by Elrond + +### BEGIN INIT INFO +# Provides: procps +# Required-Start: mountkernfs $local_fs +# Required-Stop: +# Should-Start: udev module-init-tools +# X-Start-Before: $network +# Default-Start: S +# Default-Stop: +# Short-Description: Configure kernel parameters at boottime +# Description: Loads kernel parameters that are specified in /etc/sysctl.conf +### END INIT INFO + +PATH=/sbin:/bin + +SYSCTL=/sbin/sysctl + +test -x $SYSCTL || exit 0 + +. /lib/lsb/init-functions + +# Comment this out for sysctl to print every item changed +QUIET_SYSCTL="-q" + +# Check for existance of the default file and exit if not there, +# Closes #52839 for the boot-floppy people +if [ -f /etc/default/rcS ] ; then + . /etc/default/rcS +fi + +set -e + +case "$1" in + start|restart|force-reload|reload) + log_action_begin_msg "Setting kernel variables " + STATUS=0 + $SYSCTL $QUIET_SYSCTL --system || STATUS=$? + log_action_end_msg $STATUS + ;; + stop) + ;; + status) + ;; + *) + echo "Usage: /etc/init.d/procps {start|stop|restart|reload|force-reload|status}" >&2 + exit 3 + ;; +esac + +exit 0 diff --git a/init.d/rc b/init.d/rc new file mode 100755 index 0000000..37efaaf --- /dev/null +++ b/init.d/rc @@ -0,0 +1,261 @@ +#! /bin/sh +# +# rc +# +# Starts/stops services on runlevel changes. +# +# Optimization: A start script is not run when the service was already +# configured to run in the previous runlevel. A stop script is not run +# when the the service was already configured not to run in the previous +# runlevel. +# +# Authors: +# Miquel van Smoorenburg +# Bruce Perens + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +export PATH + +# Un-comment the following for interactive debugging. Do not un-comment +# this for debugging a real boot process as no scripts will be executed. +# debug=echo + +# Make sure the name survive changing the argument list +scriptname="$0" + +umask 022 + +on_exit() { + echo "error: '$scriptname' exited outside the expected code flow." +} +trap on_exit EXIT # Enable emergency handler + +# Ignore CTRL-C only in this shell, so we can interrupt subprocesses. +trap ":" INT QUIT TSTP + +# Set onlcr to avoid staircase effect. +stty onlcr 0>&1 + +# Now find out what the current and what the previous runlevel are. + +runlevel=$RUNLEVEL +# Get first argument. Set new runlevel to this argument. +[ "$1" != "" ] && runlevel=$1 +if [ "$runlevel" = "" ] +then + echo "Usage: $scriptname " >&2 + exit 1 +fi +previous=$PREVLEVEL +[ "$previous" = "" ] && previous=N + +export runlevel previous + +if [ -f /etc/default/rcS ] ; then + . /etc/default/rcS +fi +export VERBOSE + +if [ -f /lib/lsb/init-functions ] ; then + . /lib/lsb/init-functions +else + log_action_msg() { echo $@; } + log_failure_msg() { echo $@; } + log_warning_msg() { echo $@; } +fi + +# +# Check if we are able to use make like booting. It require the +# insserv package to be enabled. Boot concurrency also requires +# startpar to be installed. +# +CONCURRENCY=makefile +test -s /etc/init.d/.depend.boot || CONCURRENCY="none" +test -s /etc/init.d/.depend.start || CONCURRENCY="none" +test -s /etc/init.d/.depend.stop || CONCURRENCY="none" +if test -e /etc/init.d/.legacy-bootordering ; then + CONCURRENCY="none" +fi +if ! test -e /proc/stat; then + if [ "$(uname)" = "GNU/kFreeBSD" ] ; then + # startpar requires /proc/stat + mount -t linprocfs linprocfs /proc + fi +fi +if [ -x /lib/startpar/startpar ] ; then + STARTPAR=/lib/startpar/startpar +else + STARTPAR=startpar +fi +$STARTPAR -v > /dev/null 2>&1 || CONCURRENCY="none" + +# +# Start script or program. +# +case "$CONCURRENCY" in + makefile|startpar|shell) # startpar and shell are obsolete + CONCURRENCY=makefile + log_action_msg "Using makefile-style concurrent boot in runlevel $runlevel" + startup() { + eval "$($STARTPAR -p 4 -t 20 -T 3 -M $1 -P $previous -R $runlevel)" + + if [ -n "$failed_service" ] + then + log_failure_msg "startpar: service(s) returned failure: $failed_service" + fi + + if [ -n "$skipped_service_not_installed" ] + then + log_warning_msg "startpar: service(s) skipped, program is not installed: $skipped_service_not_installed" + fi + + if [ -n "$skipped_service_not_configured" ] + then + log_warning_msg "startpar: service(s) skipped, program is not configured: $skipped_service_not_configured" + fi + + unset failed_service skipped_service_not_installed skipped_service_not_configured + } + ;; + none|*) + startup() { + action=$1 + shift + scripts="$@" + for script in $scripts ; do + $debug "$script" $action + done + } + ;; +esac + +# Is there an rc directory for this new runlevel? +if [ -d /etc/rc$runlevel.d ] +then + case "$runlevel" in + 0|6) + ACTION=stop + ;; + S) + ACTION=start + ;; + *) + ACTION=start + ;; + esac + + # First, run the KILL scripts. + if [ makefile = "$CONCURRENCY" ] + then + if [ "$ACTION" = "start" ] && [ "$previous" != N ] + then + startup stop + fi + elif [ "$previous" != N ] + then + # Run all scripts with the same level in parallel + CURLEVEL="" + for s in /etc/rc$runlevel.d/K* + do + # Extract order value from symlink + level=${s#/etc/rc$runlevel.d/K} + level=${level%%[a-zA-Z]*} + if [ "$level" = "$CURLEVEL" ] + then + continue + fi + CURLEVEL=$level + SCRIPTS="" + for i in /etc/rc$runlevel.d/K$level* + do + # Check if the script is there. + [ ! -f $i ] && continue + + # + # Find stop script in previous runlevel but + # no start script there. + # + suffix=${i#/etc/rc$runlevel.d/K[0-9][0-9]} + previous_stop=/etc/rc$previous.d/K[0-9][0-9]$suffix + previous_start=/etc/rc$previous.d/S[0-9][0-9]$suffix + # + # If there is a stop script in the previous level + # and _no_ start script there, we don't + # have to re-stop the service. + # + [ -f $previous_stop ] && [ ! -f $previous_start ] && continue + + # Stop the service. + SCRIPTS="$SCRIPTS $i" + done + startup stop $SCRIPTS + done + fi + + if [ makefile = "$CONCURRENCY" ] + then + if [ S = "$runlevel" ] + then + startup boot + else + startup $ACTION + fi + else + # Now run the START scripts for this runlevel. + # Run all scripts with the same level in parallel + CURLEVEL="" + for s in /etc/rc$runlevel.d/S* + do + # Extract order value from symlink + level=${s#/etc/rc$runlevel.d/S} + level=${level%%[a-zA-Z]*} + if [ "$level" = "$CURLEVEL" ] + then + continue + fi + CURLEVEL=$level + SCRIPTS="" + for i in /etc/rc$runlevel.d/S$level* + do + [ ! -f $i ] && continue + + suffix=${i#/etc/rc$runlevel.d/S[0-9][0-9]} + if [ "$previous" != N ] + then + # + # Find start script in previous runlevel and + # stop script in this runlevel. + # + stop=/etc/rc$runlevel.d/K[0-9][0-9]$suffix + previous_start=/etc/rc$previous.d/S[0-9][0-9]$suffix + # + # If there is a start script in the previous level + # and _no_ stop script in this level, we don't + # have to re-start the service. + # + if [ start = "$ACTION" ] ; then + [ -f $previous_start ] && [ ! -f $stop ] && continue + else + # Workaround for the special + # handling of runlevels 0 and 6. + previous_stop=/etc/rc$previous.d/K[0-9][0-9]$suffix + # + # If there is a stop script in the previous level + # and _no_ start script there, we don't + # have to re-stop the service. + # + [ -f $previous_stop ] && [ ! -f $previous_start ] && continue + fi + + fi + SCRIPTS="$SCRIPTS $i" + done + startup $ACTION $SCRIPTS + done + fi +fi + +trap - EXIT # Disable emergency handler + +exit 0 + diff --git a/init.d/rc.local b/init.d/rc.local new file mode 100755 index 0000000..43fcd3f --- /dev/null +++ b/init.d/rc.local @@ -0,0 +1,43 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: rc.local +# Required-Start: $all +# Required-Stop: +# Default-Start: 2 3 4 5 +# Default-Stop: +# Short-Description: Run /etc/rc.local if it exist +### END INIT INFO + + +PATH=/sbin:/usr/sbin:/bin:/usr/bin + +. /lib/init/vars.sh +. /lib/lsb/init-functions + +do_start() { + if [ -x /etc/rc.local ]; then + [ "$VERBOSE" != no ] && log_begin_msg "Running local boot scripts (/etc/rc.local)" + /etc/rc.local + ES=$? + [ "$VERBOSE" != no ] && log_end_msg $ES + return $ES + fi +} + +case "$1" in + start) + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + exit 0 + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac diff --git a/init.d/rcS b/init.d/rcS new file mode 100755 index 0000000..546b724 --- /dev/null +++ b/init.d/rcS @@ -0,0 +1,8 @@ +#! /bin/sh +# +# rcS +# +# Call all S??* scripts in /etc/rcS.d/ in numerical/alphabetical order +# + +exec /etc/init.d/rc S diff --git a/init.d/reboot b/init.d/reboot new file mode 100755 index 0000000..e1dcb1c --- /dev/null +++ b/init.d/reboot @@ -0,0 +1,41 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: reboot +# Required-Start: +# Required-Stop: +# Default-Start: +# Default-Stop: 6 +# Short-Description: Execute the reboot command. +# Description: +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin + +. /lib/lsb/init-functions + +do_stop () { + # Message should end with a newline since kFreeBSD may + # print more stuff (see #323749) + log_action_msg "Will now restart" + reboot -d -f -i +} + +case "$1" in + start) + # No-op + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + do_stop + ;; + status) + exit 0 + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac diff --git a/init.d/resolvconf b/init.d/resolvconf new file mode 100755 index 0000000..c478014 --- /dev/null +++ b/init.d/resolvconf @@ -0,0 +1,135 @@ +#!/bin/sh +# +### BEGIN INIT INFO +# Provides: resolvconf +# Required-Start: $local_fs +# Required-Stop: $local_fs +# X-Start-Before: networking ifupdown +# Default-Start: S +# Default-Stop: 0 6 +# Short-Description: Nameserver information manager +# Description: This service manages the list of nameserver addresses +# used by the libc resolver and name service caches +### END INIT INFO +# +# This file is part of the resolvconf package. +# +# We really need "X-Stop-Before: networking ifupdown" too because +# terminal ifdowns shouldn't update resolv.conf; +# however there is unfortunately no such thing as "X-Stop-Before". +# +# This file is not used in Ubuntu. +# + +# Don't use set -e; check return status instead. + +[ -x /sbin/resolvconf ] || exit 0 + +PATH=/sbin:/bin +RUN_DIR=/etc/resolvconf/run +ENABLE_UPDATES_FLAGFILE="${RUN_DIR}/enable-updates" +POSTPONED_UPDATE_FLAGFILE="${RUN_DIR}/postponed-update" + +. /lib/lsb/init-functions + +# Abort if Upstart is in use, as per Policy §9.11.1. +case "$1" in + start|restart|force-reload) + init_is_upstart && exit 1 + ;; + stop) + init_is_upstart && exit 0 + ;; +esac + +# $1 EXITSTATUS +# [$2 MESSAGE] +log_action_end_msg_and_exit() +{ + log_action_end_msg "$1" ${2:+"$2"} + exit $1 +} + +create_runtime_directories() +{ + umask 022 + if [ ! -d "$RUN_DIR" ] ; then + [ -L "$RUN_DIR" ] || log_action_end_msg_and_exit 1 "$RUN_DIR is neither a directory nor a symbolic link" + # It's a symlink. Its target is not a dir. + { RUN_CANONICALDIR="$(readlink -f "$RUN_DIR")" && [ "$RUN_CANONICALDIR" ] ; } || log_action_end_msg_and_exit 1 "Canonical path of the run directory could not be determined" + # Create directory at the target + mkdir "$RUN_CANONICALDIR" || log_action_end_msg_and_exit 1 "Error creating directory $RUN_CANONICALDIR" + fi + # The resolvconf run directory now exists. + if [ ! -d "${RUN_DIR}/interface" ] ; then + mkdir "${RUN_DIR}/interface" || log_action_end_msg_and_exit 1 "Error creating directory ${RUN_DIR}/interface" + fi + # The interface directory now exists. We are done. + return +} + +wipe_runtime_directories() +{ + # Delete files in the resolvconf run directory (target) but not the directory itself + [ -d "$RUN_DIR" ] || return + rm -f "$RUN_DIR"/resolv.conf + rm -f "$ENABLE_UPDATES_FLAGFILE" + rm -f "$POSTPONED_UPDATE_FLAGFILE" + rm -rf "${RUN_DIR}/interface/*" + return +} + +case "$1" in + start) + # The "start" method should only be used at boot time. + # Don't run this on package upgrade, for example. + log_action_begin_msg "Setting up resolvconf" + # Wipe runtime directories in case they aren't on a tmpfs + wipe_runtime_directories + # Create runtime directories in case they are on a tmpfs + create_runtime_directories + # Request a postponed update (needed in case the base file has content). + :> "$POSTPONED_UPDATE_FLAGFILE" || log_action_end_msg_and_exit 1 "failed requesting update" + # Enable updates and perform the postponed update. + resolvconf --enable-updates || log_action_end_msg_and_exit 1 "failed to enable updates" + log_action_end_msg_and_exit 0 + ;; + stop) + # The "stop" method should only be used at shutdown time. + log_action_begin_msg "Stopping resolvconf" + resolvconf --disable-updates || log_action_end_msg_and_exit 1 "failed to disable updates" + log_action_end_msg_and_exit 0 + ;; + restart) + log_action_begin_msg "Restarting resolvconf" + resolvconf --enable-updates || log_action_end_msg_and_exit 1 "failed to enable updates" + log_action_end_msg_and_exit 0 + ;; + reload|force-reload) + resolvconf -u || log_action_end_msg_and_exit 1 "failed to update" + exit 0 + ;; + enable-updates) + resolvconf --enable-updates || log_action_end_msg_and_exit 1 "failed to enable updates" + exit 0 + ;; + disable-updates) + resolvconf --disable-updates || log_action_end_msg_and_exit 1 "failed to disable updates" + exit 0 + ;; + status) + if resolvconf --updates-are-enabled ; then + log_success_msg "resolvconf updates are enabled" + else + log_failure_msg "resolvconf updates are disabled" + fi + exit 0 + ;; + *) + echo "Usage: /etc/init.d/resolvconf {start|stop|restart|reload|force-reload|enable-updates|disable-updates|status}" >&2 + exit 3 + ;; +esac + +# Don't reach here +exit 99 diff --git a/init.d/rmnologin b/init.d/rmnologin new file mode 100755 index 0000000..a21589d --- /dev/null +++ b/init.d/rmnologin @@ -0,0 +1,59 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: rmnologin +# Required-Start: $remote_fs $all +# Required-Stop: +# Default-Start: 2 3 4 5 +# Default-Stop: +# Short-Description: Remove /run/nologin at boot +# Description: This script removes the /run/nologin file as the +# last step in the boot process, if DELAYLOGIN=yes. +# If DELAYLOGIN=no, /run/nologin was not created by +# bootmisc earlier in the boot process. +### END INIT INFO + +PATH=/sbin:/bin +[ "$DELAYLOGIN" ] || DELAYLOGIN=yes +. /lib/init/vars.sh + +do_start () { + # + # If login delaying is enabled then remove the flag file + # + case "$DELAYLOGIN" in + Y*|y*) + rm -f /run/nologin + ;; + esac +} + +do_status () { + if [ ! -f /run/nologin ] ; then + return 0 + else + return 4 + fi +} + +case "$1" in + start) + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + # No-op + ;; + status) + do_status + exit $? + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/rsync b/init.d/rsync new file mode 100755 index 0000000..3bf5167 --- /dev/null +++ b/init.d/rsync @@ -0,0 +1,152 @@ +#! /bin/sh + +### BEGIN INIT INFO +# Provides: rsyncd +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Should-Start: $named autofs +# Default-Start: 2 3 4 5 +# Default-Stop: +# Short-Description: fast remote file copy program daemon +# Description: rsync is a program that allows files to be copied to and +# from remote machines in much the same way as rcp. +# This provides rsyncd daemon functionality. +### END INIT INFO + +set -e + +# /etc/init.d/rsync: start and stop the rsync daemon + +DAEMON=/usr/bin/rsync +RSYNC_ENABLE=false +RSYNC_OPTS='' +RSYNC_DEFAULTS_FILE=/etc/default/rsync +RSYNC_CONFIG_FILE=/etc/rsyncd.conf +RSYNC_PID_FILE=/var/run/rsync.pid +RSYNC_NICE_PARM='' +RSYNC_IONICE_PARM='' + +test -x $DAEMON || exit 0 + +. /lib/lsb/init-functions + +if [ -s $RSYNC_DEFAULTS_FILE ]; then + . $RSYNC_DEFAULTS_FILE + case "x$RSYNC_ENABLE" in + xtrue|xfalse) ;; + xinetd) exit 0 + ;; + *) log_failure_msg "Value of RSYNC_ENABLE in $RSYNC_DEFAULTS_FILE must be either 'true' or 'false';" + log_failure_msg "not starting rsync daemon." + exit 1 + ;; + esac + case "x$RSYNC_NICE" in + x[0-9]|x1[0-9]) RSYNC_NICE_PARM="--nicelevel $RSYNC_NICE";; + x) ;; + *) log_warning_msg "Value of RSYNC_NICE in $RSYNC_DEFAULTS_FILE must be a value between 0 and 19 (inclusive);" + log_warning_msg "ignoring RSYNC_NICE now." + ;; + esac + case "x$RSYNC_IONICE" in + x-c[123]*) RSYNC_IONICE_PARM="$RSYNC_IONICE";; + x) ;; + *) log_warning_msg "Value of RSYNC_IONICE in $RSYNC_DEFAULTS_FILE must be -c1, -c2 or -c3;" + log_warning_msg "ignoring RSYNC_IONICE now." + ;; + esac +fi + +export PATH="${PATH:+$PATH:}/usr/sbin:/sbin" + +rsync_start() { + if [ ! -s "$RSYNC_CONFIG_FILE" ]; then + log_failure_msg "missing or empty config file $RSYNC_CONFIG_FILE" + log_end_msg 1 + exit 0 + fi + # See ionice(1) + if [ -n "$RSYNC_IONICE_PARM" ] && [ -x /usr/bin/ionice ] && + /usr/bin/ionice "$RSYNC_IONICE_PARM" true 2>/dev/null; then + /usr/bin/ionice "$RSYNC_IONICE_PARM" -p$$ > /dev/null 2>&1 + fi + if start-stop-daemon --start --quiet --background \ + --pidfile $RSYNC_PID_FILE --make-pidfile \ + $RSYNC_NICE_PARM --exec $DAEMON \ + -- --no-detach --daemon --config "$RSYNC_CONFIG_FILE" $RSYNC_OPTS + then + rc=0 + sleep 1 + if ! kill -0 $(cat $RSYNC_PID_FILE) >/dev/null 2>&1; then + log_failure_msg "rsync daemon failed to start" + rc=1 + fi + else + rc=1 + fi + if [ $rc -eq 0 ]; then + log_end_msg 0 + else + log_end_msg 1 + rm -f $RSYNC_PID_FILE + fi +} # rsync_start + + +case "$1" in + start) + if "$RSYNC_ENABLE"; then + log_daemon_msg "Starting rsync daemon" "rsync" + if [ -s $RSYNC_PID_FILE ] && kill -0 $(cat $RSYNC_PID_FILE) >/dev/null 2>&1; then + log_progress_msg "apparently already running" + log_end_msg 0 + exit 0 + fi + rsync_start + else + if [ -s "$RSYNC_CONFIG_FILE" ]; then + [ "$VERBOSE" != no ] && log_warning_msg "rsync daemon not enabled in $RSYNC_DEFAULTS_FILE, not starting..." + fi + fi + ;; + stop) + log_daemon_msg "Stopping rsync daemon" "rsync" + start-stop-daemon --stop --quiet --oknodo --pidfile $RSYNC_PID_FILE + log_end_msg $? + rm -f $RSYNC_PID_FILE + ;; + + reload|force-reload) + log_warning_msg "Reloading rsync daemon: not needed, as the daemon" + log_warning_msg "re-reads the config file whenever a client connects." + ;; + + restart) + set +e + if $RSYNC_ENABLE; then + log_daemon_msg "Restarting rsync daemon" "rsync" + if [ -s $RSYNC_PID_FILE ] && kill -0 $(cat $RSYNC_PID_FILE) >/dev/null 2>&1; then + start-stop-daemon --stop --quiet --oknodo --pidfile $RSYNC_PID_FILE || true + sleep 1 + else + log_warning_msg "rsync daemon not running, attempting to start." + rm -f $RSYNC_PID_FILE + fi + rsync_start + else + if [ -s "$RSYNC_CONFIG_FILE" ]; then + [ "$VERBOSE" != no ] && log_warning_msg "rsync daemon not enabled in $RSYNC_DEFAULTS_FILE, not starting..." + fi + fi + ;; + + status) + status_of_proc -p $RSYNC_PID_FILE "$DAEMON" rsync + exit $? # notreached due to set -e + ;; + *) + echo "Usage: /etc/init.d/rsync {start|stop|reload|force-reload|restart|status}" + exit 1 +esac + +exit 0 diff --git a/init.d/rsyslog b/init.d/rsyslog new file mode 100755 index 0000000..0389df6 --- /dev/null +++ b/init.d/rsyslog @@ -0,0 +1,126 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: rsyslog +# Required-Start: $remote_fs $time +# Required-Stop: umountnfs $time +# X-Stop-After: sendsigs +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: enhanced syslogd +# Description: Rsyslog is an enhanced multi-threaded syslogd. +# It is quite compatible to stock sysklogd and can be +# used as a drop-in replacement. +### END INIT INFO + +# +# Author: Michael Biebl +# + +# PATH should only include /usr/* if it runs after the mountnfs.sh script +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="enhanced syslogd" +NAME=rsyslog + +RSYSLOGD=rsyslogd +DAEMON=/usr/sbin/rsyslogd +PIDFILE=/var/run/rsyslogd.pid + +SCRIPTNAME=/etc/init.d/$NAME + +# Exit if the package is not installed +[ -x "$DAEMON" ] || exit 0 + +# Read configuration variable file if it is present +[ -r /etc/default/$NAME ] && . /etc/default/$NAME + +# Define LSB log_* functions. +. /lib/lsb/init-functions + +do_start() +{ + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # other if daemon could not be started or a failure occured + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $RSYSLOGD_OPTIONS +} + +do_stop() +{ + # Return + # 0 if daemon has been stopped + # 1 if daemon was already stopped + # other if daemon could not be stopped or a failure occurred + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON +} + +# +# Tell rsyslogd to close all open files +# +do_rotate() { + start-stop-daemon --stop --signal HUP --quiet --pidfile $PIDFILE --exec $DAEMON +} + +create_xconsole() { + XCONSOLE=/dev/xconsole + if [ "$(uname -s)" != "Linux" ]; then + XCONSOLE=/run/xconsole + ln -sf $XCONSOLE /dev/xconsole + fi + if [ ! -e $XCONSOLE ]; then + mknod -m 640 $XCONSOLE p + chown root:adm $XCONSOLE + [ -x /sbin/restorecon ] && /sbin/restorecon $XCONSOLE + fi +} + +sendsigs_omit() { + OMITDIR=/run/sendsigs.omit.d + mkdir -p $OMITDIR + ln -sf $PIDFILE $OMITDIR/rsyslog +} + +case "$1" in + start) + log_daemon_msg "Starting $DESC" "$RSYSLOGD" + create_xconsole + do_start + case "$?" in + 0) sendsigs_omit + log_end_msg 0 ;; + 1) log_progress_msg "already started" + log_end_msg 0 ;; + *) log_end_msg 1 ;; + esac + + ;; + stop) + log_daemon_msg "Stopping $DESC" "$RSYSLOGD" + do_stop + case "$?" in + 0) log_end_msg 0 ;; + 1) log_progress_msg "already stopped" + log_end_msg 0 ;; + *) log_end_msg 1 ;; + esac + + ;; + rotate) + log_daemon_msg "Closing open files" "$RSYSLOGD" + do_rotate + log_end_msg $? + ;; + restart|force-reload) + $0 stop + $0 start + ;; + status) + status_of_proc -p $PIDFILE $DAEMON $RSYSLOGD && exit 0 || exit $? + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop|rotate|restart|force-reload|status}" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/sendsigs b/init.d/sendsigs new file mode 100755 index 0000000..dfb91e4 --- /dev/null +++ b/init.d/sendsigs @@ -0,0 +1,126 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: sendsigs +# Required-Start: +# Required-Stop: umountnfs +# Default-Start: +# Default-Stop: 0 6 +# Short-Description: Kill all remaining processes. +# Description: +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin + +. /lib/lsb/init-functions + +# Make it possible to see who the misbehaving processes are +report_unkillable() { + if [ -x /usr/bin/pstree ] ; then + echo "Currently running processes (pstree):" + pstree + elif [ -x /bin/ps ] ; then + echo "Currently running processes (ps):" + ps -ef + fi +} + +do_stop () { + OMITPIDS= + + for omitfile in /run/sendsigs.omit; do + if [ -e $omitfile ]; then + for pid in $(cat $omitfile); do + OMITPIDS="${OMITPIDS:+$OMITPIDS }-o $pid" + done + fi + done + + # Load sendsigs.omit.d/packagename files too, to make it + # possible for scripts that need to modify the list of pids at + # run time without race conditions. + for omitdir in /run/sendsigs.omit.d; do + if [ -d "${omitdir}" ]; then + for pidfile in "${omitdir}/"*; do + [ -f "$pidfile" ] || continue + for pid in $(cat $pidfile); do + OMITPIDS="${OMITPIDS:+$OMITPIDS }-o $pid" + done + done + fi + done + + # Upstart jobs have their own "stop on" clauses that sends + # SIGTERM/SIGKILL just like this, so if they're still running, + # they're supposed to be + if [ -x /sbin/initctl ]; then + for pid in $(initctl list | sed -n -e "/process [0-9]/s/.*process //p"); do + OMITPIDS="${OMITPIDS:+$OMITPIDS }-o $pid" + done + fi + + # Flush the kernel I/O buffer before we start to kill + # processes, to make sure the IO of already stopped services to + # not slow down the remaining processes to a point where they + # are accidentily killed with SIGKILL because they did not + # manage to shut down in time. + sync + + # Kill all processes. + log_action_begin_msg "Asking all remaining processes to terminate" + killall5 -15 $OMITPIDS # SIGTERM + log_action_end_msg 0 + alldead="" + for seq in 1 2 3 4 5 6 7 8 9 10; do + # use SIGCONT/signal 18 to check if there are + # processes left. No need to check the exit code + # value, because either killall5 work and it make + # sense to wait for processes to die, or it fail and + # there is nothing to wait for. + + # did an upstart job start since we last polled initctl? check + # again on each loop and add any new jobs (e.g., plymouth) to + # the list. If we did miss one starting up, this beats waiting + # 10 seconds before shutting down. + if [ -x /sbin/initctl ]; then + for pid in $(initctl list | sed -n -e "/process [0-9]/s/.*process //p"); do + OMITPIDS="${OMITPIDS:+$OMITPIDS }-o $pid" + done + fi + if killall5 -18 $OMITPIDS ; then + : + else + alldead=1 + break + fi + + sleep 1 + done + if [ -z "$alldead" ] ; then + report_unkillable + log_action_begin_msg "Killing all remaining processes" + killall5 -9 $OMITPIDS # SIGKILL + log_action_end_msg 1 + else + log_action_begin_msg "All processes ended within $seq seconds" + log_action_end_msg 0 + fi +} + +case "$1" in + start|status) + # No-op + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + do_stop + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/single b/init.d/single new file mode 100755 index 0000000..0402bbb --- /dev/null +++ b/init.d/single @@ -0,0 +1,35 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: single +# Required-Start: $local_fs $all killprocs +# Required-Stop: +# Default-Start: 1 +# Default-Stop: +# Short-Description: executed by init(8) upon entering runlevel 1 (single). +### END INIT INFO + +PATH=/sbin:/bin + +. /lib/lsb/init-functions + +do_start () { + log_action_msg "Will now switch to single-user mode" + exec init -t1 S +} + +case "$1" in + start) + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|status) + # No-op + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac diff --git a/init.d/skeleton b/init.d/skeleton new file mode 100644 index 0000000..1aeff11 --- /dev/null +++ b/init.d/skeleton @@ -0,0 +1,27 @@ +#!/bin/sh +# kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing. +if [ true != "$INIT_D_SCRIPT_SOURCED" ] ; then + set "$0" "$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script +fi +### BEGIN INIT INFO +# Provides: skeleton +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Example initscript +# Description: This file should be used to construct scripts to be +# placed in /etc/init.d. This example start a +# single forking daemon capable of writing a pid +# file. To get other behavoirs, implemend +# do_start(), do_stop() or other functions to +# override the defaults in /lib/init/init-d-script. +### END INIT INFO + +# Author: Foo Bar +# +# Please remove the "Author" lines above and replace them +# with your own name if you copy and modify this script. + +DESC="Description of the service" +DAEMON=/usr/sbin/daemonexecutablename diff --git a/init.d/ssh b/init.d/ssh new file mode 100755 index 0000000..bda7a92 --- /dev/null +++ b/init.d/ssh @@ -0,0 +1,174 @@ +#! /bin/sh + +### BEGIN INIT INFO +# Provides: sshd +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: +# Short-Description: OpenBSD Secure Shell server +### END INIT INFO + +set -e + +# /etc/init.d/ssh: start and stop the OpenBSD "secure shell(tm)" daemon + +test -x /usr/sbin/sshd || exit 0 +( /usr/sbin/sshd -\? 2>&1 | grep -q OpenSSH ) 2>/dev/null || exit 0 + +umask 022 + +if test -f /etc/default/ssh; then + . /etc/default/ssh +fi + +. /lib/lsb/init-functions + +if [ -n "$2" ]; then + SSHD_OPTS="$SSHD_OPTS $2" +fi + +# Are we running from init? +run_by_init() { + ([ "$previous" ] && [ "$runlevel" ]) || [ "$runlevel" = S ] +} + +check_for_upstart() { + if init_is_upstart; then + exit $1 + fi +} + +check_for_no_start() { + # forget it if we're trying to start, and /etc/ssh/sshd_not_to_be_run exists + if [ -e /etc/ssh/sshd_not_to_be_run ]; then + if [ "$1" = log_end_msg ]; then + log_end_msg 0 || true + fi + if ! run_by_init; then + log_action_msg "OpenBSD Secure Shell server not in use (/etc/ssh/sshd_not_to_be_run)" || true + fi + exit 0 + fi +} + +check_dev_null() { + if [ ! -c /dev/null ]; then + if [ "$1" = log_end_msg ]; then + log_end_msg 1 || true + fi + if ! run_by_init; then + log_action_msg "/dev/null is not a character device!" || true + fi + exit 1 + fi +} + +check_privsep_dir() { + # Create the PrivSep empty dir if necessary + if [ ! -d /var/run/sshd ]; then + mkdir /var/run/sshd + chmod 0755 /var/run/sshd + fi +} + +check_config() { + if [ ! -e /etc/ssh/sshd_not_to_be_run ]; then + /usr/sbin/sshd $SSHD_OPTS -t || exit 1 + fi +} + +export PATH="${PATH:+$PATH:}/usr/sbin:/sbin" + +case "$1" in + start) + check_for_upstart 1 + check_privsep_dir + check_for_no_start + check_dev_null + log_daemon_msg "Starting OpenBSD Secure Shell server" "sshd" || true + if start-stop-daemon --start --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS; then + log_end_msg 0 || true + else + log_end_msg 1 || true + fi + ;; + stop) + check_for_upstart 0 + log_daemon_msg "Stopping OpenBSD Secure Shell server" "sshd" || true + if start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/sshd.pid; then + log_end_msg 0 || true + else + log_end_msg 1 || true + fi + ;; + + reload|force-reload) + check_for_upstart 1 + check_for_no_start + check_config + log_daemon_msg "Reloading OpenBSD Secure Shell server's configuration" "sshd" || true + if start-stop-daemon --stop --signal 1 --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd; then + log_end_msg 0 || true + else + log_end_msg 1 || true + fi + ;; + + restart) + check_for_upstart 1 + check_privsep_dir + check_config + log_daemon_msg "Restarting OpenBSD Secure Shell server" "sshd" || true + start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile /var/run/sshd.pid + check_for_no_start log_end_msg + check_dev_null log_end_msg + if start-stop-daemon --start --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS; then + log_end_msg 0 || true + else + log_end_msg 1 || true + fi + ;; + + try-restart) + check_for_upstart 1 + check_privsep_dir + check_config + log_daemon_msg "Restarting OpenBSD Secure Shell server" "sshd" || true + RET=0 + start-stop-daemon --stop --quiet --retry 30 --pidfile /var/run/sshd.pid || RET="$?" + case $RET in + 0) + # old daemon stopped + check_for_no_start log_end_msg + check_dev_null log_end_msg + if start-stop-daemon --start --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS; then + log_end_msg 0 || true + else + log_end_msg 1 || true + fi + ;; + 1) + # daemon not running + log_progress_msg "(not running)" || true + log_end_msg 0 || true + ;; + *) + # failed to stop + log_progress_msg "(failed to stop)" || true + log_end_msg 1 || true + ;; + esac + ;; + + status) + check_for_upstart 1 + status_of_proc -p /var/run/sshd.pid /usr/sbin/sshd sshd && exit 0 || exit $? + ;; + + *) + log_action_msg "Usage: /etc/init.d/ssh {start|stop|reload|force-reload|restart|try-restart|status}" || true + exit 1 +esac + +exit 0 diff --git a/init.d/udev b/init.d/udev new file mode 100755 index 0000000..d144d08 --- /dev/null +++ b/init.d/udev @@ -0,0 +1,266 @@ +#!/bin/sh -e +### BEGIN INIT INFO +# Provides: udev +# Required-Start: mountkernfs +# Required-Stop: +# Default-Start: S +# Default-Stop: +# Short-Description: Start udevd, populate /dev and load drivers. +### END INIT INFO + +# we need to unmount /dev/pts/ and remount it later over the devtmpfs +unmount_devpts() { + if mountpoint -q /dev/pts/; then + umount -n -l /dev/pts/ + fi + + if mountpoint -q /dev/shm/; then + umount -n -l /dev/shm/ + fi +} + +# mount a devtmpfs over /dev, if somebody did not already do it +mount_devtmpfs() { + if grep -E -q "^[^[:space:]]+ /dev devtmpfs" /proc/mounts; then + mount -n -o remount,size=$tmpfs_size,mode=0755 -t devtmpfs devtmpfs /dev + return + fi + + if ! mount -n -o size=$tmpfs_size,mode=0755 -t devtmpfs devtmpfs /dev; then + log_failure_msg "udev requires devtmpfs support, not started" + log_end_msg 1 + fi + + return 0 +} + +create_dev_makedev() { + if [ -e /sbin/MAKEDEV ]; then + ln -sf /sbin/MAKEDEV /dev/MAKEDEV + else + ln -sf /bin/true /dev/MAKEDEV + fi +} + +# If the initramfs does not have /run, the initramfs udev database must +# be migrated from /dev/.udev/ to /run/udev/. +move_udev_database() { + [ -e "/dev/.udev/" ] || return 0 + [ ! -e /run/udev/ ] || return 0 + [ -e /run/ ] || return 0 + mountpoint -q /run/ || return 0 + + mv /dev/.udev/ /run/udev/ || true +} + +supported_kernel() { + case "$(uname -r)" in + 2.[012345].*|2.6.[0-9]|2.6.[0-9][!0-9]*) return 1 ;; + 2.6.[12][0-9]|2.6.[12][0-9][!0-9]*) return 1 ;; + 2.6.3[0-1]|2.6.3[0-1][!0-9]*) return 1 ;; + esac + return 0 +} + +# shell version of /usr/bin/tty +my_tty() { + [ -x /bin/readlink ] || return 0 + [ -e /proc/self/fd/0 ] || return 0 + readlink --silent /proc/self/fd/0 || true +} + +warn_if_interactive() { + if [ "$RUNLEVEL" = "S" -a "$PREVLEVEL" = "N" ]; then + return + fi + + TTY=$(my_tty) + if [ -z "$TTY" -o "$TTY" = "/dev/console" -o "$TTY" = "/dev/null" ]; then + return + fi + + printf "\n\n\nIt has been detected that the command\n\n\t$0 $*\n\n" + printf "has been run from an interactive shell.\n" + printf "It will probably not do what you expect, so this script will wait\n" + printf "60 seconds before continuing. Press ^C to stop it.\n" + printf "RUNNING THIS COMMAND IS HIGHLY DISCOURAGED!\n\n\n\n" + sleep 60 +} + +make_static_nodes() { + [ -e /lib/modules/$(uname -r)/modules.devname ] || return 0 + [ -x /bin/kmod ] || return 0 + + /bin/kmod static-nodes --format=tmpfiles --output=/proc/self/fd/1 | \ + while read type name mode uid gid age arg; do + [ -e $name ] && continue + case "$type" in + c|b|c!|b!) mknod -m $mode $name $type $(echo $arg | sed 's/:/ /') ;; + d|d!) mkdir $name ;; + *) echo "unparseable line ($type $name $mode $uid $gid $age $arg)" >&2 ;; + esac + + if [ -x /sbin/restorecon ]; then + /sbin/restorecon $name + fi + done +} + + +############################################################################## + +[ -x /sbin/udevd ] || exit 0 + +PATH="/sbin:/bin" + +# defaults +tmpfs_size="10M" + +if [ -e /etc/udev/udev.conf ]; then + . /etc/udev/udev.conf +fi + +. /lib/lsb/init-functions + +if ! supported_kernel; then + log_failure_msg "udev requires a kernel >= 2.6.32, not started" + log_end_msg 1 +fi + +if [ ! -e /proc/filesystems ]; then + log_failure_msg "udev requires a mounted procfs, not started" + log_end_msg 1 +fi + +if ! grep -q '[[:space:]]devtmpfs$' /proc/filesystems; then + log_failure_msg "udev requires devtmpfs support, not started" + log_end_msg 1 +fi + +if [ ! -d /sys/class/ ]; then + log_failure_msg "udev requires a mounted sysfs, not started" + log_end_msg 1 +fi + +if ! ps --no-headers --format args ax | egrep -q '^\['; then + log_warning_msg "udev does not support containers, not started" + exit 0 +fi + +if [ -d /sys/class/mem/null -a ! -L /sys/class/mem/null ] || \ + [ -e /sys/block -a ! -e /sys/class/block ]; then + log_warning_msg "CONFIG_SYSFS_DEPRECATED must not be selected" + log_warning_msg "Booting will continue in 30 seconds but many things will be broken" + sleep 30 +fi + +# When modifying this script, do not forget that between the time that the +# new /dev has been mounted and udevadm trigger has been run there will be +# no /dev/null. This also means that you cannot use the "&" shell command. + +case "$1" in + start) + if init_is_upstart 2>/dev/null; then + exit 1 + fi + if mountpoint -q /dev/; then + TMPFS_MOUNTED=1 + elif [ -e "/dev/.udev/" ]; then + log_warning_msg ".udev/ already exists on the static /dev" + fi + + if [ ! -e "/dev/.udev/" -a ! -e "/run/udev/" ]; then + warn_if_interactive + fi + + if [ -w /sys/kernel/uevent_helper ]; then + echo > /sys/kernel/uevent_helper + fi + + move_udev_database + + if [ -z "$TMPFS_MOUNTED" ]; then + unmount_devpts + mount_devtmpfs + [ -d /proc/1 ] || mount -n /proc + fi + + make_static_nodes + + # clean up parts of the database created by the initramfs udev + udevadm info --cleanup-db + + # set the SELinux context for devices created in the initramfs + [ -x /sbin/restorecon ] && /sbin/restorecon -R /dev + + log_daemon_msg "Starting the hotplug events dispatcher" "udevd" + if udevd --daemon; then + log_end_msg $? + else + log_warning_msg $? + log_warning_msg "Waiting 15 seconds and trying to continue anyway" + sleep 15 + fi + + log_action_begin_msg "Synthesizing the initial hotplug events" + if udevadm trigger --action=add; then + log_action_end_msg $? + else + log_action_end_msg $? + fi + + create_dev_makedev + + # wait for the udevd childs to finish + log_action_begin_msg "Waiting for /dev to be fully populated" + if udevadm settle; then + log_action_end_msg 0 + else + log_action_end_msg 0 'timeout' + fi + ;; + + stop) + log_daemon_msg "Stopping the hotplug events dispatcher" "udevd" + if start-stop-daemon --stop --name udevd --user root --quiet --oknodo --retry 5; then + log_end_msg $? + else + log_end_msg $? + fi + ;; + + restart) + if init_is_upstart 2>/dev/null; then + exit 1 + fi + log_daemon_msg "Stopping the hotplug events dispatcher" "udevd" + if start-stop-daemon --stop --name udevd --user root --quiet --oknodo --retry 5; then + log_end_msg $? + else + log_end_msg $? || true + fi + + log_daemon_msg "Starting the hotplug events dispatcher" "udevd" + if udevd --daemon; then + log_end_msg $? + else + log_end_msg $? + fi + ;; + + reload|force-reload) + udevadm control --reload-rules + ;; + + status) + status_of_proc /sbin/udevd udevd && exit 0 || exit $? + ;; + + *) + echo "Usage: /etc/init.d/udev {start|stop|restart|reload|force-reload|status}" >&2 + exit 1 + ;; +esac + +exit 0 + diff --git a/init.d/udev-finish b/init.d/udev-finish new file mode 100755 index 0000000..1060201 --- /dev/null +++ b/init.d/udev-finish @@ -0,0 +1,22 @@ +#!/bin/sh -e +### BEGIN INIT INFO +# Provides: udev-finish +# Required-Start: udev $local_fs +# Required-Stop: +# Default-Start: S +# Default-Stop: +# Short-Description: Copy rules generated while the root was ro +### END INIT INFO + +PATH="/sbin:/bin" + +. /lib/lsb/init-functions + +case "$1" in + start) ;; + stop|restart|force-reload) exit 0 ;; + *) echo "Usage: $0 {start|stop|restart|force-reload}" >&2; exit 1 ;; +esac + +exec /lib/udev/udev-finish + diff --git a/init.d/umountfs b/init.d/umountfs new file mode 100755 index 0000000..d2d43ae --- /dev/null +++ b/init.d/umountfs @@ -0,0 +1,130 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: umountfs +# Required-Start: +# Required-Stop: umountroot +# Default-Start: +# Default-Stop: 0 6 +# Short-Description: Turn off swap and unmount all local file systems. +# Description: +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +. /lib/init/vars.sh + +. /lib/lsb/init-functions + +umask 022 + +do_stop () { + PROTECTED_MOUNTS="$(sed -n ':a;/^[^ ]* \/ /!{H;n;ba};{H;s/.*//;x;s/\n//;p}' /proc/mounts)" + WEAK_MTPTS="" # be gentle, don't use force + REG_MTPTS="" + TMPFS_MTPTS="" + while read -r DEV MTPT FSTYPE REST + do + echo "$PROTECTED_MOUNTS" | grep -qs "^$DEV $MTPT " && continue + case "$MTPT" in + /|/proc|/dev|/.dev|/dev/pts|/dev/shm|/dev/.static/dev|/proc/*|/sys|/sys/*|/run|/run/*|/dev/vcs) + continue + ;; + esac + case "$FSTYPE" in + proc|procfs|linprocfs|sysfs|usbfs|usbdevfs|devpts) + continue + ;; + tmpfs) + TMPFS_MTPTS="$MTPT $TMPFS_MTPTS" + ;; + *) + if echo "$PROTECTED_MOUNTS" | grep -qs "^$DEV "; then + WEAK_MTPTS="$MTPT $WEAK_MTPTS" + else + REG_MTPTS="$MTPT $REG_MTPTS" + fi + ;; + esac + done < /proc/mounts + + # + # Make sure tmpfs file systems are umounted before turning off + # swap, to avoid running out of memory if the tmpfs filesystems + # use a lot of space. + # + if [ "$TMPFS_MTPTS" ] + then + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Unmounting temporary filesystems" + fstab-decode umount $TMPFS_MTPTS + log_action_end_msg $? + else + log_daemon_msg "Will now unmount temporary filesystems" + fstab-decode umount -v $TMPFS_MTPTS + log_end_msg $? + fi + fi + + # + # Deactivate swap + # + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Deactivating swap" + swapoff -a >/dev/null + log_action_end_msg $? + else + log_daemon_msg "Will now deactivate swap" + swapoff -a -v + log_end_msg $? + fi + + # + # Unmount local filesystems + # + if [ "$WEAK_MTPTS" ]; then + # Do not use -f umount option for WEAK_MTPTS + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Unmounting weak filesystems" + fstab-decode umount -r -d $WEAK_MTPTS + log_action_end_msg $? + else + log_daemon_msg "Will now unmount weak filesystems" + fstab-decode umount -v -r -d $WEAK_MTPTS + log_end_msg $? + fi + fi + if [ "$REG_MTPTS" ] + then + if [ "$VERBOSE" = no ] + then + log_action_begin_msg "Unmounting local filesystems" + fstab-decode umount -f -r -d $REG_MTPTS + log_action_end_msg $? + else + log_daemon_msg "Will now unmount local filesystems" + fstab-decode umount -f -v -r -d $REG_MTPTS + log_end_msg $? + fi + fi +} + +case "$1" in + start|status) + # No-op + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + do_stop + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/umountnfs.sh b/init.d/umountnfs.sh new file mode 100755 index 0000000..d33a3d5 --- /dev/null +++ b/init.d/umountnfs.sh @@ -0,0 +1,100 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: umountnfs +# Required-Start: +# Required-Stop: umountfs +# Should-Stop: $network $portmap nfs-common +# Default-Start: +# Default-Stop: 0 6 +# Short-Description: Unmount all network filesystems except the root fs. +# Description: Also unmounts all virtual filesystems (proc, +# devpts, usbfs, sysfs) that are not mounted at the +# top level. +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +KERNEL="$(uname -s)" +RELEASE="$(uname -r)" +. /lib/init/vars.sh + +. /lib/lsb/init-functions + +case "${KERNEL}:${RELEASE}" in + Linux:[01].*|Linux:2.[01].*) + FLAGS="" + ;; + Linux:2.[23].*|Linux:2.4.?|Linux:2.4.?-*|Linux:2.4.10|Linux:2.4.10-*) + FLAGS="-f" + ;; + *) + FLAGS="-f -l" + ;; +esac + +do_stop () { + # Write a reboot record to /var/log/wtmp before unmounting + halt -w + + # Remove bootclean flag files (precaution against symlink attacks) + rm -f /tmp/.clean /run/.clean /run/lock/.clean + + # + # Make list of points to unmount in reverse order of their creation + # + + DIRS="" + while read -r DEV MTPT FSTYPE OPTS REST + do + case "$MTPT" in + /|/proc|/dev|/dev/pts|/dev/shm|/proc/*|/sys|/run|/run/*) + continue + ;; + esac + case "$FSTYPE" in + nfs|nfs4|smbfs|ncp|ncpfs|cifs|coda|ocfs2|gfs|ceph) + DIRS="$MTPT $DIRS" + ;; + proc|procfs|linprocfs|devpts|usbfs|usbdevfs|sysfs) + DIRS="$MTPT $DIRS" + ;; + esac + case "$OPTS" in + _netdev|*,_netdev|_netdev,*|*,_netdev,*) + DIRS="$MTPT $DIRS" + ;; + esac + done < /etc/mtab + + if [ "$DIRS" ] + then + [ "$VERBOSE" = no ] || log_action_begin_msg "Unmounting remote and non-toplevel virtual filesystems" + fstab-decode umount $FLAGS $DIRS + ES=$? + [ "$VERBOSE" = no ] || log_action_end_msg $ES + fi + + # emit unmounted-remote-filesystems hook point so any upstart jobs + # that support remote filesystems can be stopped + if [ -x /sbin/initctl ]; then + initctl --quiet emit unmounted-remote-filesystems 2>/dev/null || true + fi +} + +case "$1" in + start|status) + # No-op + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop|"") + do_stop + ;; + *) + echo "Usage: umountnfs.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/umountroot b/init.d/umountroot new file mode 100755 index 0000000..451fbea --- /dev/null +++ b/init.d/umountroot @@ -0,0 +1,49 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: umountroot +# Required-Start: +# Required-Stop: +# Should-Stop: halt reboot kexec +# Default-Start: +# Default-Stop: 0 6 +# Short-Description: Mount the root filesystem read-only. +### END INIT INFO + +PATH=/sbin:/bin +. /lib/init/vars.sh + +. /lib/lsb/init-functions + +do_stop () { + [ "$VERBOSE" = no ] || log_action_begin_msg "Mounting root filesystem read-only" + MOUNT_FORCE_OPT= + [ "$(uname -s)" = "GNU/kFreeBSD" ] && MOUNT_FORCE_OPT=-f + # This: + # mount -n -o remount,ro / + # will act on a bind mount of / if there is one. + # See #339023 and the comment in checkroot.sh + mount $MOUNT_FORCE_OPT -n -o remount,ro -t dummytype dummydev / 2>/dev/null \ + || mount $MOUNT_FORCE_OPT -n -o remount,ro dummydev / 2>/dev/null \ + || mount $MOUNT_FORCE_OPT -n -o remount,ro / + ES=$? + [ "$VERBOSE" = no ] || log_action_end_msg $ES +} + +case "$1" in + start|status) + # No-op + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + do_stop + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac + +: diff --git a/init.d/urandom b/init.d/urandom new file mode 100755 index 0000000..43f1186 --- /dev/null +++ b/init.d/urandom @@ -0,0 +1,106 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: urandom +# Required-Start: $local_fs $time +# Required-Stop: $local_fs +# Default-Start: S +# Default-Stop: 0 6 +# Short-Description: Save and restore random seed between restarts. +# Description: This script saves the random seed between restarts. +# It is called from the boot, halt and reboot scripts. +### END INIT INFO + +## Assumption 1: We assume $SAVEDFILE is a file (or a symlink +## to a file) that resides on a non-volatile medium that persists +## across reboots. +## Case 1a: Ideally, it is readable and writeable. Its is unshared, +## i.e. its contents are unique to this machine. It is protected so +## that its contents are not known to attackers. +## Case 1b: Less than ideally, it is read-only. Its contents are +## unique to this machine and not known to attackers. +SAVEDFILE=/var/lib/urandom/random-seed + +[ -c /dev/urandom ] || exit 0 + +PATH=/sbin:/bin +if ! POOLBYTES=$(( + ($(cat /proc/sys/kernel/random/poolsize 2>/dev/null) + 7) / 8 +)) ; then + POOLBYTES=512 +fi +. /lib/init/vars.sh + +. /lib/lsb/init-functions + +do_status () { + if [ -f $SAVEDFILE ] ; then + return 0 + else + return 4 + fi +} + +case "$1" in + start|"") + [ "$VERBOSE" = no ] || log_action_begin_msg "Initializing random number generator" + # Seed the RNG with date and time. + # This is helpful in the less-than-ideal case where $SAVEDFILE + # is read-only. + # The value of this is greatly reduced if $SAVEDFILE is missing, + # or its contents are shared machine-to-machine or known to + # attackers (since they might well know at what time this + # machine booted up). + ( + date +%s.%N + + # Load and then save $POOLBYTES bytes, + # which is the size of the entropy pool + if [ -f "$SAVEDFILE" ] + then + cat "$SAVEDFILE" + fi + # Redirect output of subshell (not individual commands) + # to cope with a misfeature in the FreeBSD (not Linux) + # /dev/random, where every superuser write/close causes + # an explicit reseed of the yarrow. + ) >/dev/urandom + + # Write a new seed into $SAVEDFILE because re-using a seed + # compromises security. Each time we re-seed, we want the + # seed to be as different as possible. + # Write it now, in case the machine crashes without doing + # an orderly shutdown. + # The write will fail if $SAVEDFILE is read-only, but it + # doesn't hurt to try. + umask 077 + dd if=/dev/urandom of=$SAVEDFILE bs=$POOLBYTES count=1 >/dev/null 2>&1 + ES=$? + umask 022 + [ "$VERBOSE" = no ] || log_action_end_msg $ES + ;; + stop) + # Carry a random seed from shut-down to start-up; + # Write it on shutdown, in case the one written at startup + # has been lost, snooped, or otherwise compromised. + # see documentation in linux/drivers/char/random.c + [ "$VERBOSE" = no ] || log_action_begin_msg "Saving random seed" + umask 077 + dd if=/dev/urandom of=$SAVEDFILE bs=$POOLBYTES count=1 >/dev/null 2>&1 + ES=$? + [ "$VERBOSE" = no ] || log_action_end_msg $ES + ;; + status) + do_status + exit $? + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + *) + echo "Usage: urandom start|stop" >&2 + exit 3 + ;; +esac + +: diff --git a/init/network-interface-container.conf b/init/network-interface-container.conf new file mode 100644 index 0000000..9bc6eef --- /dev/null +++ b/init/network-interface-container.conf @@ -0,0 +1,19 @@ +# network-interface-container - woarkound for missing events in container +# +# This service emits missing net-device-added events for containers. +# It's needed in cases where devices are created before the container +# starts and so won't get a udev event. + +description "workaround for missing events in container" +start on container + +emits net-device-added + +task +script + case "$CONTAINER" in + lxc|lxc-libvirt|openvz) + initctl emit --no-wait net-device-added INTERFACE=lo || true + ;; + esac +end script diff --git a/init/network-interface-security.conf b/init/network-interface-security.conf new file mode 100644 index 0000000..7bf829f --- /dev/null +++ b/init/network-interface-security.conf @@ -0,0 +1,37 @@ +# network-interface-security - configure network device security +# +# This is a one-time start-up script to load AppArmor profiles needed +# before the network comes up. + +description "configure network device security" + +# In order to avoid upstart bug LP: #447654, we cannot have an AND +# statement here (with the ORs). An "and virtual-filesystems" is desired +# here to make sure that the securityfs is mounted, but since each of the +# ORed services already require virtual-filesystems be mounted, this is safe: +start on (starting network-interface + or starting network-manager + or starting networking) +stop on (stopped network-interface JOB=$JOB INTERFACE=$INTERFACE + or stopped network-manager JOB=$JOB + or stopped networking JOB=$JOB) + +# In order to handle the lack of upstart feature LP: #568860, we need to +# run multiple times, for each of the above "starting" service instances, or +# else another one might run while we're running, and not wait for us to +# finish. +instance $JOB${INTERFACE:+/}${INTERFACE:-} + +# Since we need these profiles to be loaded before any of the above services +# begin running, this service must be a pre-start so that its pre-start +# script finishes before the above services' start scripts begin. +pre-start script + [ -f /run/network-interface-security ] && exit 0 # already ran + [ -d /rofs/etc/apparmor.d ] && exit 0 # do not load on liveCD + [ -d /sys/module/apparmor ] || exit 0 # do not load without AppArmor + [ -x /sbin/apparmor_parser ] || exit 0 # do not load without parser + for link in /etc/apparmor/init/network-interface-security/* ; do + [ -L $link ] && /sbin/apparmor_parser -r -W $link || true + done + > /run/network-interface-security +end script diff --git a/init/network-interface.conf b/init/network-interface.conf new file mode 100644 index 0000000..9a3cbd3 --- /dev/null +++ b/init/network-interface.conf @@ -0,0 +1,34 @@ +# network-interface - configure network device +# +# This service causes network devices to be brought up or down as a result +# of hardware being added or removed, including that which isn't ordinarily +# removable. + +description "configure network device" + +emits net-device-up +emits net-device-down +emits static-network-up + +start on net-device-added +stop on net-device-removed INTERFACE=$INTERFACE + +instance $INTERFACE +export INTERFACE + +pre-start script + if [ "$INTERFACE" = lo ]; then + # bring this up even if /etc/network/interfaces is broken + ifconfig lo 127.0.0.1 up || true + initctl emit -n net-device-up \ + IFACE=lo LOGICAL=lo ADDRFAM=inet METHOD=loopback || true + fi + mkdir -p /run/network + ifup --allow auto $INTERFACE + ifup --allow hotplug $INTERFACE +end script + +post-stop script + ifdown --force --allow auto $INTERFACE + ifdown --force --allow hotplug $INTERFACE +end script diff --git a/init/networking.conf b/init/networking.conf new file mode 100644 index 0000000..bf76854 --- /dev/null +++ b/init/networking.conf @@ -0,0 +1,80 @@ +# networking - configure virtual network devices +# +# This task causes virtual network devices that do not have an associated +# kernel object to be started on boot. + +description "configure virtual network devices" + +emits static-network-up +emits net-device-up +emits deconfiguring-networking + +start on (local-filesystems + and (stopped udevtrigger or container)) or runlevel [2345] or stopped networking RESULT=failed PROCESS=post-stop EXIT_STATUS=100 +stop on unmounted-remote-filesystems + +pre-start script + if [ "$UPSTART_EVENTS" = "stopped" ] && [ "$UPSTART_JOB" = "networking" ] && [ "$EXIT_STATUS" = "100" ]; then + exit 0 + fi + + mkdir -p /run/network + ifup -a +end script + +post-stop script + if [ -z "$UPSTART_STOP_EVENTS" ]; then + echo "Stopping or restarting the networking job is not supported." + echo "Use ifdown & ifup to reconfigure desired interface." + exit 100 + fi + + log_warning_msg() { + echo $* + } + + # These checks were taken from the Debian ifupdown.networking.init script + check_network_file_systems() { + [ -e /proc/mounts ] || return 0 + + if [ -e /etc/iscsi/iscsi.initramfs ]; then + log_warning_msg "not deconfiguring network interfaces: iSCSI root is mounted." + exit 0 + fi + + while read DEV MTPT FSTYPE REST; do + case $DEV in + /dev/nbd*|/dev/nd[a-z]*|/dev/etherd/e*) + log_warning_msg "not deconfiguring network interfaces: network devices still mounted." + exit 0 + ;; + esac + case $FSTYPE in + nfs|nfs4|smbfs|ncp|ncpfs|cifs|coda|ocfs2|gfs|pvfs|pvfs2|fuse.httpfs|fuse.curlftpfs) + log_warning_msg "not deconfiguring network interfaces: network file systems still mounted." + exit 0 + ;; + esac + done < /proc/mounts + } + + check_network_swap() { + [ -e /proc/swaps ] || return 0 + + while read DEV MTPT FSTYPE REST; do + case $DEV in + /dev/nbd*|/dev/nd[a-z]*|/dev/etherd/e*) + log_warning_msg "not deconfiguring network interfaces: network swap still mounted." + exit 0 + ;; + esac + done < /proc/swaps + } + + check_network_file_systems + check_network_swap + + # Anything that manages network interfaces *MUST* wait for this event + initctl emit deconfiguring-networking + ifdown -a --exclude=lo +end script diff --git a/init/resolvconf.conf b/init/resolvconf.conf new file mode 100644 index 0000000..9346011 --- /dev/null +++ b/init/resolvconf.conf @@ -0,0 +1,19 @@ +# upstart script for resolvconf + +description "Initialize or finalize resolvconf" + +start on mounted MOUNTPOINT=/run + +stop on runlevel [06] + +pre-start script + mkdir -p /run/resolvconf/interface + # Request a postponed update (needed in case the base file has content). + touch /run/resolvconf/postponed-update + # Enable updates and perform the postponed update. + resolvconf --enable-updates +end script + +post-stop script + resolvconf --disable-updates +end script diff --git a/init/ssh.conf b/init/ssh.conf new file mode 100644 index 0000000..b34cbff --- /dev/null +++ b/init/ssh.conf @@ -0,0 +1,29 @@ +# ssh - OpenBSD Secure Shell server +# +# The OpenSSH server provides secure shell access to the system. + +description "OpenSSH server" + +start on runlevel [2345] +stop on runlevel [!2345] + +respawn +respawn limit 10 5 +umask 022 + +env SSH_SIGSTOP=1 +expect stop + +# 'sshd -D' leaks stderr and confuses things in conjunction with 'console log' +console none + +pre-start script + test -x /usr/sbin/sshd || { stop; exit 0; } + test -e /etc/ssh/sshd_not_to_be_run && { stop; exit 0; } + + mkdir -p -m0755 /var/run/sshd +end script + +# if you used to set SSHD_OPTS in /etc/default/ssh, you can change the +# 'exec' line here instead +exec /usr/sbin/sshd -D diff --git a/init/startpar-bridge.conf b/init/startpar-bridge.conf new file mode 100644 index 0000000..83e5d9b --- /dev/null +++ b/init/startpar-bridge.conf @@ -0,0 +1,15 @@ +# startpar-bridge - inject upstart start/stop events into startpar +# +# This job serves as a bridge to make startpar aware when an upstart job has +# started or stopped, in order to make a soft transition between sysvinit +# scripts and upstart jobs possible + +description "startpar bridge for notification of upstart job start/stop" +author "Steve Langasek " + +start on started JOB!=startpar-bridge or stopped JOB!=startpar-bridge +instance $JOB-$INSTANCE-$UPSTART_EVENTS + +task + +exec /lib/startpar/startpar-upstart-inject "$JOB" "$INSTANCE" "$UPSTART_EVENTS" diff --git a/init/udev-fallback-graphics.conf b/init/udev-fallback-graphics.conf new file mode 100644 index 0000000..5de49ab --- /dev/null +++ b/init/udev-fallback-graphics.conf @@ -0,0 +1,21 @@ +# fallback-graphics - take actions to initiate fallback graphics +# +# if we have cold plugged everything and not yet seen a valid graphics +# device, +# shove a fallback framebuffer into the mix and hope for the best. + +description "load fallback graphics devices" + +# We only want this job to happen once per boot, hence 'startup and ...'. +start on (startup and + (graphics-device-added PRIMARY_DEVICE_FOR_DISPLAY=1 + or drm-device-added PRIMARY_DEVICE_FOR_DISPLAY=1 + or stopped udevtrigger or container)) + +task + +script + if [ "$PRIMARY_DEVICE_FOR_DISPLAY" = "" ]; then + modprobe -q -b vesafb + fi +end script diff --git a/init/udev-finish.conf b/init/udev-finish.conf new file mode 100644 index 0000000..f1b79a6 --- /dev/null +++ b/init/udev-finish.conf @@ -0,0 +1,24 @@ +# udev-finish - save udev log and update rules +# +# While udev runs we not only create the log file of initial device +# creation but udev rules may be generated, we need to copy both of +# these out of /dev and onto the root filesystem. + +description "save udev log and update rules" + +start on (startup + and filesystem + and started udev + and stopped udevtrigger + and stopped udevmonitor) + +pre-start script + # Save udev log in /var/log/udev + if [ -e /dev/.udev.log ] + then + mv -f /dev/.udev.log /var/log/udev || : + fi + + # Copy any rules generated while the root filesystem was read-only + /lib/udev/udev-finish +end script diff --git a/init/udev.conf b/init/udev.conf new file mode 100644 index 0000000..ce0840d --- /dev/null +++ b/init/udev.conf @@ -0,0 +1,14 @@ +# udev - device node and kernel event manager +# +# The udev daemon receives events from the kernel about changes in the +# /sys filesystem and manages the /dev filesystem. + +description "device node and kernel event manager" + +start on virtual-filesystems +stop on runlevel [06] + +expect fork +respawn + +exec /lib/systemd/systemd-udevd --daemon diff --git a/init/udevmonitor.conf b/init/udevmonitor.conf new file mode 100644 index 0000000..da93dec --- /dev/null +++ b/init/udevmonitor.conf @@ -0,0 +1,13 @@ +# udevmonitor - log initial device creation +# +# The set of devices created in the "cold plug" pass is generally +# useful for debugging, so we monitor this and create a log file +# from that. + +description "log initial device creation" + +start on (startup + and starting udevtrigger) +stop on stopped udevtrigger + +exec /sbin/udevadm monitor -e >/dev/.udev.log diff --git a/init/udevtrigger.conf b/init/udevtrigger.conf new file mode 100644 index 0000000..e066555 --- /dev/null +++ b/init/udevtrigger.conf @@ -0,0 +1,16 @@ +# udevtrigger - cold plug devices +# +# By the time udevd starts, we've already missed all of the events for +# the devices populated in /sys. This task causes the kernel to resend +# them. + +description "cold plug devices" + +start on (startup + and started udev + and not-container) + +task + +exec udevadm trigger --action=add +post-stop exec udevadm settle diff --git a/initramfs-tools/conf.d/driver-policy b/initramfs-tools/conf.d/driver-policy new file mode 100644 index 0000000..c1d30f0 --- /dev/null +++ b/initramfs-tools/conf.d/driver-policy @@ -0,0 +1,4 @@ +# Driver inclusion policy selected during installation +# Note: this setting overrides the value set in the file +# /etc/initramfs-tools/initramfs.conf +MODULES=dep diff --git a/initramfs-tools/initramfs.conf b/initramfs-tools/initramfs.conf new file mode 100644 index 0000000..93f88bc --- /dev/null +++ b/initramfs-tools/initramfs.conf @@ -0,0 +1,62 @@ +# +# initramfs.conf +# Configuration file for mkinitramfs(8). See initramfs.conf(5). +# +# Note that configuration options from this file can be overridden +# by config files in the /etc/initramfs-tools/conf.d directory. + +# +# MODULES: [ most | netboot | dep | list ] +# +# most - Add most filesystem and all harddrive drivers. +# +# dep - Try and guess which modules to load. +# +# netboot - Add the base modules, network modules, but skip block devices. +# +# list - Only include modules from the 'additional modules' list +# + +MODULES=most + +# +# BUSYBOX: [ y | n ] +# +# Use busybox if available. +# + +BUSYBOX=y + +# +# KEYMAP: [ y | n ] +# +# Load a keymap during the initramfs stage. +# + +KEYMAP=n + +# +# COMPRESS: [ gzip | bzip2 | lzma | lzop | xz ] +# + +COMPRESS=gzip + +# +# NFS Section of the config. +# + +# +# DEVICE: ... +# +# Specify a specific network interface, like eth0 +# Overridden by optional ip= bootarg +# + +DEVICE= + +# +# NFSROOT: [ auto | HOST:MOUNT ] +# + +NFSROOT=auto + diff --git a/initramfs-tools/modules b/initramfs-tools/modules new file mode 100644 index 0000000..dd9dc54 --- /dev/null +++ b/initramfs-tools/modules @@ -0,0 +1,11 @@ +# List of modules that you want to include in your initramfs. +# They will be loaded at boot time in the order below. +# +# Syntax: module_name [args ...] +# +# You must run update-initramfs(8) to effect this change. +# +# Examples: +# +# raid1 +# sd_mod diff --git a/initramfs-tools/update-initramfs.conf b/initramfs-tools/update-initramfs.conf new file mode 100644 index 0000000..31823e2 --- /dev/null +++ b/initramfs-tools/update-initramfs.conf @@ -0,0 +1,20 @@ +# +# Configuration file for update-initramfs(8) +# + +# +# update_initramfs [ yes | all | no ] +# +# Default is yes +# If set to all update-initramfs will update all initramfs +# If set to no disables any update to initramfs beside kernel upgrade + +update_initramfs=yes + +# +# backup_initramfs [ yes | no ] +# +# Default is no +# If set to no leaves no .bak backup files. + +backup_initramfs=no diff --git a/inittab b/inittab new file mode 100644 index 0000000..ddc59b8 --- /dev/null +++ b/inittab @@ -0,0 +1,69 @@ +# /etc/inittab: init(8) configuration. +# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $ + +# The default runlevel. +id:2:initdefault: + +# Boot-time system configuration/initialization script. +# This is run first except when booting in emergency (-b) mode. +si::sysinit:/etc/init.d/rcS + +# What to do in single-user mode. +~~:S:wait:/sbin/sulogin + +# /etc/init.d executes the S and K scripts upon change +# of runlevel. +# +# Runlevel 0 is halt. +# Runlevel 1 is single-user. +# Runlevels 2-5 are multi-user. +# Runlevel 6 is reboot. + +l0:0:wait:/etc/init.d/rc 0 +l1:1:wait:/etc/init.d/rc 1 +l2:2:wait:/etc/init.d/rc 2 +l3:3:wait:/etc/init.d/rc 3 +l4:4:wait:/etc/init.d/rc 4 +l5:5:wait:/etc/init.d/rc 5 +l6:6:wait:/etc/init.d/rc 6 +# Normally not reached, but fallthrough in case of emergency. +z6:6:respawn:/sbin/sulogin + +# What to do when CTRL-ALT-DEL is pressed. +ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now + +# Action on special keypress (ALT-UpArrow). +#kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this work." + +# What to do when the power fails/returns. +pf::powerwait:/etc/init.d/powerfail start +pn::powerfailnow:/etc/init.d/powerfail now +po::powerokwait:/etc/init.d/powerfail stop + +# /sbin/getty invocations for the runlevels. +# +# The "id" field MUST be the same as the last +# characters of the device (after "tty"). +# +# Format: +# ::: +# +# Note that on most Debian systems tty7 is used by the X Window System, +# so if you want to add more getty's go ahead but skip tty7 if you run X. +# +1:2345:respawn:/sbin/getty --noclear 38400 tty1 +2:23:respawn:/sbin/getty 38400 tty2 +3:23:respawn:/sbin/getty 38400 tty3 +4:23:respawn:/sbin/getty 38400 tty4 +5:23:respawn:/sbin/getty 38400 tty5 +6:23:respawn:/sbin/getty 38400 tty6 + +# Example how to put a getty on a serial line (for a terminal) +# +#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100 +#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100 + +# Example how to put a getty on a modem line. +# +#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3 + diff --git a/inputrc b/inputrc new file mode 100644 index 0000000..230e66b --- /dev/null +++ b/inputrc @@ -0,0 +1,67 @@ +# /etc/inputrc - global inputrc for libreadline +# See readline(3readline) and `info rluserman' for more information. + +# Be 8 bit clean. +set input-meta on +set output-meta on + +# To allow the use of 8bit-characters like the german umlauts, uncomment +# the line below. However this makes the meta key not work as a meta key, +# which is annoying to those which don't need to type in 8-bit characters. + +# set convert-meta off + +# try to enable the application keypad when it is called. Some systems +# need this to enable the arrow keys. +# set enable-keypad on + +# see /usr/share/doc/bash/inputrc.arrows for other codes of arrow keys + +# do not bell on tab-completion +# set bell-style none +# set bell-style visible + +# some defaults / modifications for the emacs mode +$if mode=emacs + +# allow the use of the Home/End keys +"\e[1~": beginning-of-line +"\e[4~": end-of-line + +# allow the use of the Delete/Insert keys +"\e[3~": delete-char +"\e[2~": quoted-insert + +# mappings for "page up" and "page down" to step to the beginning/end +# of the history +# "\e[5~": beginning-of-history +# "\e[6~": end-of-history + +# alternate mappings for "page up" and "page down" to search the history +"\e[5~": history-search-backward +"\e[6~": history-search-forward + +# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving +"\e[1;5C": forward-word +"\e[1;5D": backward-word +"\e[5C": forward-word +"\e[5D": backward-word +"\e\e[C": forward-word +"\e\e[D": backward-word + +$if term=rxvt +"\e[7~": beginning-of-line +"\e[8~": end-of-line +"\eOc": forward-word +"\eOd": backward-word +$endif + +# for non RH/Debian xterm, can't hurt for RH/Debian xterm +# "\eOH": beginning-of-line +# "\eOF": end-of-line + +# for freebsd console +# "\e[H": beginning-of-line +# "\e[F": end-of-line + +$endif diff --git a/insserv.conf b/insserv.conf new file mode 100644 index 0000000..fa52310 --- /dev/null +++ b/insserv.conf @@ -0,0 +1,36 @@ +# +# All local filesystems are mounted (done during boot phase) +# +$local_fs +mountall +mountall-bootclean +mountoverflowtmp +umountfs + +# +# Low level networking (ethernet card) +# +$network +networking +ifupdown + +# +# Named is operational +# +$named +named +dnsmasq +lwresd +bind9 +unbound $network + +# +# All remote filesystems are mounted (note in some cases /usr may +# be remote. Most applications that care will probably require +# both $local_fs and $remote_fs) +# +$remote_fs $local_fs +mountnfs +mountnfs-bootclean +umountnfs +sendsigs + +# +# System logger is operational +# +$syslog +rsyslog +sysklogd +syslog-ng +dsyslog +inetutils-syslogd + +# +# The system time has been set correctly +# +$time +hwclock + +# +# Services which need to be interactive +# + glibc udev console-screen keymap keyboard-setup console-setup cryptdisks cryptdisks-early checkfs-loop diff --git a/insserv.conf.d/postfix b/insserv.conf.d/postfix new file mode 100644 index 0000000..ddd0034 --- /dev/null +++ b/insserv.conf.d/postfix @@ -0,0 +1 @@ +$mail-transport-agent postfix diff --git a/iproute2/ematch_map b/iproute2/ematch_map new file mode 100644 index 0000000..1823983 --- /dev/null +++ b/iproute2/ematch_map @@ -0,0 +1,7 @@ +# lookup table for ematch kinds +1 cmp +2 nbyte +3 u32 +4 meta +7 canid +8 ipset diff --git a/iproute2/group b/iproute2/group new file mode 100644 index 0000000..6f000b2 --- /dev/null +++ b/iproute2/group @@ -0,0 +1,2 @@ +# device group names +0 default diff --git a/iproute2/rt_dsfield b/iproute2/rt_dsfield new file mode 100644 index 0000000..496ef66 --- /dev/null +++ b/iproute2/rt_dsfield @@ -0,0 +1,27 @@ +0x00 default +0x10 lowdelay +0x08 throughput +0x04 reliability +# This value overlap with ECT, do not use it! +0x02 mincost +# These values seems do not want to die, Cisco likes them by a strange reason. +0x20 priority +0x40 immediate +0x60 flash +0x80 flash-override +0xa0 critical +0xc0 internet +0xe0 network +# Newer RFC2597 values +0x28 AF11 +0x30 AF12 +0x38 AF13 +0x48 AF21 +0x50 AF22 +0x58 AF23 +0x68 AF31 +0x70 AF32 +0x78 AF33 +0x88 AF41 +0x90 AF42 +0x98 AF43 diff --git a/iproute2/rt_protos b/iproute2/rt_protos new file mode 100644 index 0000000..38d8ec4 --- /dev/null +++ b/iproute2/rt_protos @@ -0,0 +1,30 @@ +# +# Reserved protocols. +# +0 unspec +1 redirect +2 kernel +3 boot +4 static +8 gated +9 ra +10 mrt +11 zebra +12 bird +13 dnrouted +14 xorp +15 ntk +16 dhcp + +# +# Used by me for gated +# +254 gated/aggr +253 gated/bgp +252 gated/ospf +251 gated/ospfase +250 gated/rip +249 gated/static +248 gated/conn +247 gated/inet +246 gated/default diff --git a/iproute2/rt_realms b/iproute2/rt_realms new file mode 100644 index 0000000..eedd76d --- /dev/null +++ b/iproute2/rt_realms @@ -0,0 +1,13 @@ +# +# reserved values +# +0 cosmos +# +# local +# +#1 inr.ac +#2 inr.ruhep +#3 freenet +#4 radio-msu +#5 russia +#6 internet diff --git a/iproute2/rt_scopes b/iproute2/rt_scopes new file mode 100644 index 0000000..8514bc1 --- /dev/null +++ b/iproute2/rt_scopes @@ -0,0 +1,11 @@ +# +# reserved values +# +0 global +255 nowhere +254 host +253 link +# +# pseudo-reserved +# +200 site diff --git a/iproute2/rt_tables b/iproute2/rt_tables new file mode 100644 index 0000000..541abfd --- /dev/null +++ b/iproute2/rt_tables @@ -0,0 +1,11 @@ +# +# reserved values +# +255 local +254 main +253 default +0 unspec +# +# local +# +#1 inr.ruhep diff --git a/iscsi/iscsid.conf b/iscsi/iscsid.conf new file mode 100644 index 0000000..34788af --- /dev/null +++ b/iscsi/iscsid.conf @@ -0,0 +1,304 @@ +# +# Open-iSCSI default configuration. +# Could be located at /etc/iscsi/iscsid.conf or ~/.iscsid.conf +# +# Note: To set any of these values for a specific node/session run +# the iscsiadm --mode node --op command for the value. See the README +# and man page for iscsiadm for details on the --op command. +# + +###################### +# iscsid daemon config +###################### +# If you want iscsid to start the first time a iscsi tool +# needs to access it, instead of starting it when the init +# scripts run, set the iscsid startup command here. This +# should normally only need to be done by distro package +# maintainers. +# +# Default for Fedora and RHEL. (uncomment to activate). +# iscsid.startup = /etc/rc.d/init.d/iscsid force-start +# +# Default for upstream open-iscsi scripts (uncomment to activate). +iscsid.startup = /usr/sbin/iscsid + + +############################# +# NIC/HBA and driver settings +############################# +# open-iscsi can create a session and bind it to a NIC/HBA. +# To set this up see the example iface config file. + +#***************** +# Startup settings +#***************** + +# To request that the iscsi initd scripts startup a session set to "automatic". +# node.startup = automatic +# +# To manually startup the session set to "manual". The default is manual. +node.startup = manual + +# For "automatic" startup nodes, setting this to "Yes" will try logins on each +# available iface until one succeeds, and then stop. The default "No" will try +# logins on all availble ifaces simultaneously. +node.leading_login = No + +# ************* +# CHAP Settings +# ************* + +# To enable CHAP authentication set node.session.auth.authmethod +# to CHAP. The default is None. +#node.session.auth.authmethod = CHAP + +# To set a CHAP username and password for initiator +# authentication by the target(s), uncomment the following lines: +#node.session.auth.username = username +#node.session.auth.password = password + +# To set a CHAP username and password for target(s) +# authentication by the initiator, uncomment the following lines: +#node.session.auth.username_in = username_in +#node.session.auth.password_in = password_in + +# To enable CHAP authentication for a discovery session to the target +# set discovery.sendtargets.auth.authmethod to CHAP. The default is None. +#discovery.sendtargets.auth.authmethod = CHAP + +# To set a discovery session CHAP username and password for the initiator +# authentication by the target(s), uncomment the following lines: +#discovery.sendtargets.auth.username = username +#discovery.sendtargets.auth.password = password + +# To set a discovery session CHAP username and password for target(s) +# authentication by the initiator, uncomment the following lines: +#discovery.sendtargets.auth.username_in = username_in +#discovery.sendtargets.auth.password_in = password_in + +# ******** +# Timeouts +# ******** +# +# See the iSCSI REAME's Advanced Configuration section for tips +# on setting timeouts when using multipath or doing root over iSCSI. +# +# To specify the length of time to wait for session re-establishment +# before failing SCSI commands back to the application when running +# the Linux SCSI Layer error handler, edit the line. +# The value is in seconds and the default is 120 seconds. +# Special values: +# - If the value is 0, IO will be failed immediately. +# - If the value is less than 0, IO will remain queued until the session +# is logged back in, or until the user runs the logout command. +node.session.timeo.replacement_timeout = 120 + +# To specify the time to wait for login to complete, edit the line. +# The value is in seconds and the default is 15 seconds. +node.conn[0].timeo.login_timeout = 15 + +# To specify the time to wait for logout to complete, edit the line. +# The value is in seconds and the default is 15 seconds. +node.conn[0].timeo.logout_timeout = 15 + +# Time interval to wait for on connection before sending a ping. +node.conn[0].timeo.noop_out_interval = 5 + +# To specify the time to wait for a Nop-out response before failing +# the connection, edit this line. Failing the connection will +# cause IO to be failed back to the SCSI layer. If using dm-multipath +# this will cause the IO to be failed to the multipath layer. +node.conn[0].timeo.noop_out_timeout = 5 + +# To specify the time to wait for abort response before +# failing the operation and trying a logical unit reset edit the line. +# The value is in seconds and the default is 15 seconds. +node.session.err_timeo.abort_timeout = 15 + +# To specify the time to wait for a logical unit response +# before failing the operation and trying session re-establishment +# edit the line. +# The value is in seconds and the default is 30 seconds. +node.session.err_timeo.lu_reset_timeout = 30 + +# To specify the time to wait for a target response +# before failing the operation and trying session re-establishment +# edit the line. +# The value is in seconds and the default is 30 seconds. +node.session.err_timeo.tgt_reset_timeout = 30 + + +#****** +# Retry +#****** + +# To specify the number of times iscsid should retry a login +# if the login attempt fails due to the node.conn[0].timeo.login_timeout +# expiring modify the following line. Note that if the login fails +# quickly (before node.conn[0].timeo.login_timeout fires) because the network +# layer or the target returns an error, iscsid may retry the login more than +# node.session.initial_login_retry_max times. +# +# This retry count along with node.conn[0].timeo.login_timeout +# determines the maximum amount of time iscsid will try to +# establish the initial login. node.session.initial_login_retry_max is +# multiplied by the node.conn[0].timeo.login_timeout to determine the +# maximum amount. +# +# The default node.session.initial_login_retry_max is 8 and +# node.conn[0].timeo.login_timeout is 15 so we have: +# +# node.conn[0].timeo.login_timeout * node.session.initial_login_retry_max = +# 120 seconds +# +# Valid values are any integer value. This only +# affects the initial login. Setting it to a high value can slow +# down the iscsi service startup. Setting it to a low value can +# cause a session to not get logged into, if there are distuptions +# during startup or if the network is not ready at that time. +node.session.initial_login_retry_max = 8 + +################################ +# session and device queue depth +################################ + +# To control how many commands the session will queue set +# node.session.cmds_max to an integer between 2 and 2048 that is also +# a power of 2. The default is 128. +node.session.cmds_max = 128 + +# To control the device's queue depth set node.session.queue_depth +# to a value between 1 and 1024. The default is 32. +node.session.queue_depth = 32 + +################################## +# MISC SYSTEM PERFORMANCE SETTINGS +################################## + +# For software iscsi (iscsi_tcp) and iser (ib_iser) each session +# has a thread used to transmit or queue data to the hardware. For +# cxgb3i you will get a thread per host. +# +# Setting the thread's priority to a lower value can lead to higher throughput +# and lower latencies. The lowest value is -20. Setting the priority to +# a higher value, can lead to reduced IO performance, but if you are seeing +# the iscsi or scsi threads dominate the use of the CPU then you may want +# to set this value higher. +# +# Note: For cxgb3i you must set all sessions to the same value, or the +# behavior is not defined. +# +# The default value is -20. The setting must be between -20 and 20. +node.session.xmit_thread_priority = -20 + + +#*************** +# iSCSI settings +#*************** + +# To enable R2T flow control (i.e., the initiator must wait for an R2T +# command before sending any data), uncomment the following line: +# +#node.session.iscsi.InitialR2T = Yes +# +# To disable R2T flow control (i.e., the initiator has an implied +# initial R2T of "FirstBurstLength" at offset 0), uncomment the following line: +# +# The defaults is No. +node.session.iscsi.InitialR2T = No + +# +# To disable immediate data (i.e., the initiator does not send +# unsolicited data with the iSCSI command PDU), uncomment the following line: +# +#node.session.iscsi.ImmediateData = No +# +# To enable immediate data (i.e., the initiator sends unsolicited data +# with the iSCSI command packet), uncomment the following line: +# +# The default is Yes +node.session.iscsi.ImmediateData = Yes + +# To specify the maximum number of unsolicited data bytes the initiator +# can send in an iSCSI PDU to a target, edit the following line. +# +# The value is the number of bytes in the range of 512 to (2^24-1) and +# the default is 262144 +node.session.iscsi.FirstBurstLength = 262144 + +# To specify the maximum SCSI payload that the initiator will negotiate +# with the target for, edit the following line. +# +# The value is the number of bytes in the range of 512 to (2^24-1) and +# the defauls it 16776192 +node.session.iscsi.MaxBurstLength = 16776192 + +# To specify the maximum number of data bytes the initiator can receive +# in an iSCSI PDU from a target, edit the following line. +# +# The value is the number of bytes in the range of 512 to (2^24-1) and +# the default is 262144 +node.conn[0].iscsi.MaxRecvDataSegmentLength = 262144 + +# To specify the maximum number of data bytes the initiator will send +# in an iSCSI PDU to the target, edit the following line. +# +# The value is the number of bytes in the range of 512 to (2^24-1). +# Zero is a special case. If set to zero, the initiator will use +# the target's MaxRecvDataSegmentLength for the MaxXmitDataSegmentLength. +# The default is 0. +node.conn[0].iscsi.MaxXmitDataSegmentLength = 0 + +# To specify the maximum number of data bytes the initiator can receive +# in an iSCSI PDU from a target during a discovery session, edit the +# following line. +# +# The value is the number of bytes in the range of 512 to (2^24-1) and +# the default is 32768 +# +discovery.sendtargets.iscsi.MaxRecvDataSegmentLength = 32768 + +# To allow the targets to control the setting of the digest checking, +# with the initiator requesting a preference of enabling the checking, uncomment# one or both of the following lines: +#node.conn[0].iscsi.HeaderDigest = CRC32C,None +#node.conn[0].iscsi.DataDigest = CRC32C,None +# +# To allow the targets to control the setting of the digest checking, +# with the initiator requesting a preference of disabling the checking, +# uncomment one or both of the following lines: +#node.conn[0].iscsi.HeaderDigest = None,CRC32C +#node.conn[0].iscsi.DataDigest = None,CRC32C +# +# To enable CRC32C digest checking for the header and/or data part of +# iSCSI PDUs, uncomment one or both of the following lines: +#node.conn[0].iscsi.HeaderDigest = CRC32C +#node.conn[0].iscsi.DataDigest = CRC32C +# +# To disable digest checking for the header and/or data part of +# iSCSI PDUs, uncomment one or both of the following lines: +#node.conn[0].iscsi.HeaderDigest = None +#node.conn[0].iscsi.DataDigest = None +# +# The default is to never use DataDigests or HeaderDigests. +# + +# For multipath configurations, you may want more than one session to be +# created on each iface record. If node.session.nr_sessions is greater +# than 1, performing a 'login' for that node will ensure that the +# appropriate number of sessions is created. +node.session.nr_sessions = 1 + +#************ +# Workarounds +#************ + +# Some targets like IET prefer after an initiator has sent a task +# management function like an ABORT TASK or LOGICAL UNIT RESET, that +# it does not respond to PDUs like R2Ts. To enable this behavior uncomment +# the following line (The default behavior is Yes): +node.session.iscsi.FastAbort = Yes + +# Some targets like Equalogic prefer that after an initiator has sent +# a task management function like an ABORT TASK or LOGICAL UNIT RESET, that +# it continue to respond to R2Ts. To enable this uncomment this line +# node.session.iscsi.FastAbort = No diff --git a/issue b/issue new file mode 100644 index 0000000..6478eed --- /dev/null +++ b/issue @@ -0,0 +1,2 @@ +Debian GNU/Linux 8 \n \l + diff --git a/issue.net b/issue.net new file mode 100644 index 0000000..0352211 --- /dev/null +++ b/issue.net @@ -0,0 +1 @@ +Debian GNU/Linux 8 diff --git a/kbd/config b/kbd/config new file mode 100644 index 0000000..5e63aa0 --- /dev/null +++ b/kbd/config @@ -0,0 +1,70 @@ +# +# This files tells the 'kbd' package: +# +# - whether to load a specific font and boot (and maybe a screen-font map, +# but you should avoid that if possible). +# - whether to setup an Application-Charset Map other than the default CP437. +# - whether to do screen saver/DPMS settings +# - whether to change the keyboard rate/delay or the state of the +# keyboard indicators +# - whether to show a clock +# +# You can also specify per-VC settings by suffixing variable names as in +# the examples below. This only works on framebuffer devices. +# +# For consistency with the configuration file of console-tools the +# following variables and their _vcN versions are also supported: +# SCREEN_FONT, SCREEN_FONT_MAP and APP_CHARSET_MAP. +# +# +# Example: +# +#CONSOLE_FONT=iso01.f16 +#CONSOLE_FONT_vc2=LatArCyrHeb-16 +# +#CONSOLE_MAP=iso05 +#CONSOLE_MAP_vc2=user +# +# Set the following - more euro-friendly default than kernel font. +#CONSOLE_FONT=latarcyrheb-sun16.psf + +# Forget this one unless you _know_ it is necessary for your font: +#FONT_MAP=iso01 + +# **** screen saver/DPMS settings: all VCs **** +# These settings are commented by default to avoid the chance of damage to +# very old monitors that don't support DPMS signalling. + +# screen blanking timeout. monitor remains on, but the screen is cleared to +# range: 0-60 min (0==never) kernels I've looked at default to 10 minutes. +# (see linux/drivers/char/console.c) +BLANK_TIME=30 + +# blanking method (VESA DPMS mode to use after BLANK_TIME, before powerdown): +# on: the default, no DPMS signalling. near instant powerup, no power saving +# vsync: DPMS Standby mode. nearly instant recovery, uses 110/120W (17" screen) +# hsync: DPMS Suspend mode. typically 3s recovery, uses 15/120W (17" screen) +# powerdown,off: DPMS Off mode, typ. 10s recovery, uses 5/120W (17" screen) + +# Those values are for my 17" Mag, but some monitors do suspend the same as +# standby. xset dpms force {off|standby|suspend|on} is useful for this, if X +# supports DPMS on your video card. Set X's DPMS screensaver with xset dpms +# or use option power_saver in XF86Config +# +# DPMS set by default to on, because hsync can cause problems on certain +# hardware, such as Armada E500 laptops +BLANK_DPMS=off + +# Powerdown time. The console will go to DPMS Off mode POWERDOWN_TIME +# minutes _after_ blanking. (POWERDOWN_TIME + BLANK_TIME after the last input) +POWERDOWN_TIME=30 + +# rate and delay can get only specific values, consult kbdrate(1) for help +#KEYBOARD_RATE="30" +#KEYBOARD_DELAY="250" + +# Turn on numlock by default +#LEDS=+num + +# Display a clock in the right upper corner of the console by running vcstime +#DO_VCSTIME=yes diff --git a/kbd/remap b/kbd/remap new file mode 100644 index 0000000..c66430f --- /dev/null +++ b/kbd/remap @@ -0,0 +1,5 @@ +# This sed script is run across the dumpkeys output to remap keys on the console + +# This turns caps lock into control +#s/keycode 58 = Caps_Lock/keycode 58 = Control/; + diff --git a/kernel-img.conf b/kernel-img.conf new file mode 100644 index 0000000..e818d6e --- /dev/null +++ b/kernel-img.conf @@ -0,0 +1,6 @@ +# Kernel image management overrides +# See kernel-img.conf(5) for details +do_symlinks = yes +do_bootloader = no +do_initrd = yes +link_in_boot = no diff --git a/kernel/postinst.d/apt-auto-removal b/kernel/postinst.d/apt-auto-removal new file mode 100755 index 0000000..807c6f7 --- /dev/null +++ b/kernel/postinst.d/apt-auto-removal @@ -0,0 +1,85 @@ +#!/bin/sh +set -e + +# Author: Steve Langasek +# +# Mark as not-for-autoremoval those kernel packages that are: +# - the currently booted version +# - the kernel version we've been called for +# - the latest kernel version (determined using rules copied from the grub +# package for deciding which kernel to boot) +# - the second-latest kernel version, if the booted kernel version is +# already the latest and this script is called for that same version, +# to ensure a fallback remains available in the event the newly-installed +# kernel at this ABI fails to boot +# In the common case, this results in exactly two kernels saved, but it can +# result in three kernels being saved. It's better to err on the side of +# saving too many kernels than saving too few. +# +# We generate this list and save it to /etc/apt/apt.conf.d instead of marking +# packages in the database because this runs from a postinst script, and apt +# will overwrite the db when it exits. + + +eval $(apt-config shell APT_CONF_D Dir::Etc::parts/d) +test -n "${APT_CONF_D}" || APT_CONF_D="/etc/apt/apt.conf.d" +config_file=${APT_CONF_D}/01autoremove-kernels + +eval $(apt-config shell DPKG Dir::bin::dpkg/f) +test -n "$DPKG" || DPKG="/usr/bin/dpkg" + +installed_version="$1" +running_version="$(uname -r)" + + +version_test_gt () +{ + local version_test_gt_sedexp="s/[._-]\(pre\|rc\|test\|git\|old\|trunk\)/~\1/g" + local version_a="`echo "$1" | sed -e "$version_test_gt_sedexp"`" + local version_b="`echo "$2" | sed -e "$version_test_gt_sedexp"`" + $DPKG --compare-versions "$version_a" gt "$version_b" + return "$?" +} + +list="$(${DPKG} -l | awk '/^ii[ ]+(linux|kfreebsd|gnumach)-image-[0-9]+\./ && $2 !~ /-dbg$/ { print $2 }' | sed -e 's#\(linux\|kfreebsd\|gnumach\)-image-##')" + +latest_version="" +previous_version="" +for i in $list; do + if version_test_gt "$i" "$latest_version"; then + previous_version="$latest_version" + latest_version="$i" + elif version_test_gt "$i" "$previous_version"; then + previous_version="$i" + fi +done + +if [ "$latest_version" != "$installed_version" ] \ + || [ "$latest_version" != "$running_version" ] \ + || [ "$installed_version" != "$running_version" ] +then + # We have at least two kernels that we have reason to think the + # user wants, so don't save the second-newest version. + previous_version= +fi + +kernels="$(echo "$latest_version +$installed_version +$running_version +$previous_version" | sort -u | sed -e 's#\.#\\.#g' )" + +generateconfig() { + cat < "${config_file}.dpkg-new" +mv "${config_file}.dpkg-new" "$config_file" diff --git a/kernel/postinst.d/initramfs-tools b/kernel/postinst.d/initramfs-tools new file mode 100755 index 0000000..50f244a --- /dev/null +++ b/kernel/postinst.d/initramfs-tools @@ -0,0 +1,35 @@ +#!/bin/sh -e + +version="$1" +bootopt="" + +[ -x /usr/sbin/update-initramfs ] || exit 0 + +# passing the kernel version is required +if [ -z "${version}" ]; then + echo >&2 "W: initramfs-tools: ${DPKG_MAINTSCRIPT_PACKAGE:-kernel package} did not pass a version number" + exit 2 +fi + +# exit if kernel does not need an initramfs +if [ "$INITRD" = 'No' ]; then + exit 0 +fi + +# absolute file name of kernel image may be passed as a second argument; +# create the initrd in the same directory +if [ -n "$2" ]; then + bootdir=$(dirname "$2") + bootopt="-b ${bootdir}" +fi + +# avoid running multiple times +if [ -n "$DEB_MAINT_PARAMS" ]; then + eval set -- "$DEB_MAINT_PARAMS" + if [ -z "$1" ] || [ "$1" != "configure" ]; then + exit 0 + fi +fi + +# we're good - create initramfs. update runs do_bootloader +INITRAMFS_TOOLS_KERNEL_HOOK=1 update-initramfs -c -t -k "${version}" ${bootopt} >&2 diff --git a/kernel/postinst.d/zz-update-grub b/kernel/postinst.d/zz-update-grub new file mode 100755 index 0000000..c039f8a --- /dev/null +++ b/kernel/postinst.d/zz-update-grub @@ -0,0 +1,26 @@ +#! /bin/sh +set -e + +which update-grub >/dev/null 2>&1 || exit 0 + +if type running-in-container >/dev/null 2>&1 && \ + running-in-container >/dev/null; then + exit 0 +fi + +set -- $DEB_MAINT_PARAMS +mode="${1#\'}" +mode="${mode%\'}" +case $0:$mode in + # Only run on postinst configure and postrm remove, to avoid wasting + # time by calling update-grub multiple times on upgrade and removal. + # Also run if we have no DEB_MAINT_PARAMS, in order to work with old + # kernel packages. + */postinst.d/*:|*/postinst.d/*:configure|*/postrm.d/*:|*/postrm.d/*:remove) + if [ -e /boot/grub/grub.cfg ]; then + exec update-grub + fi + ;; +esac + +exit 0 diff --git a/kernel/postrm.d/initramfs-tools b/kernel/postrm.d/initramfs-tools new file mode 100755 index 0000000..d58fa61 --- /dev/null +++ b/kernel/postrm.d/initramfs-tools @@ -0,0 +1,35 @@ +#!/bin/sh -e + +version="$1" +bootopt="" + +[ -x /usr/sbin/update-initramfs ] || exit 0 + +# passing the kernel version is required +if [ -z "${version}" ]; then + echo >&2 "W: initramfs-tools: ${DPKG_MAINTSCRIPT_PACKAGE:-kernel package} did not pass a version number" + exit 0 +fi + +# exit if custom kernel does not need an initramfs +if [ "$INITRD" = 'No' ]; then + exit 0 +fi + +# absolute file name of kernel image may be passed as a second argument; +# create the initrd in the same directory +if [ -n "$2" ]; then + bootdir=$(dirname "$2") + bootopt="-b ${bootdir}" +fi + +# avoid running multiple times +if [ -n "$DEB_MAINT_PARAMS" ]; then + eval set -- "$DEB_MAINT_PARAMS" + if [ -z "$1" ] || [ "$1" != "remove" ]; then + exit 0 + fi +fi + +# delete initramfs +INITRAMFS_TOOLS_KERNEL_HOOK=1 update-initramfs -d -t -k "${version}" ${bootopt} >&2 diff --git a/kernel/postrm.d/zz-update-grub b/kernel/postrm.d/zz-update-grub new file mode 100755 index 0000000..c039f8a --- /dev/null +++ b/kernel/postrm.d/zz-update-grub @@ -0,0 +1,26 @@ +#! /bin/sh +set -e + +which update-grub >/dev/null 2>&1 || exit 0 + +if type running-in-container >/dev/null 2>&1 && \ + running-in-container >/dev/null; then + exit 0 +fi + +set -- $DEB_MAINT_PARAMS +mode="${1#\'}" +mode="${mode%\'}" +case $0:$mode in + # Only run on postinst configure and postrm remove, to avoid wasting + # time by calling update-grub multiple times on upgrade and removal. + # Also run if we have no DEB_MAINT_PARAMS, in order to work with old + # kernel packages. + */postinst.d/*:|*/postinst.d/*:configure|*/postrm.d/*:|*/postrm.d/*:remove) + if [ -e /boot/grub/grub.cfg ]; then + exec update-grub + fi + ;; +esac + +exit 0 diff --git a/ld.so.conf b/ld.so.conf new file mode 100644 index 0000000..20c9763 --- /dev/null +++ b/ld.so.conf @@ -0,0 +1,2 @@ +include /etc/ld.so.conf.d/*.conf + diff --git a/ld.so.conf.d/libc.conf b/ld.so.conf.d/libc.conf new file mode 100644 index 0000000..463b8bb --- /dev/null +++ b/ld.so.conf.d/libc.conf @@ -0,0 +1,2 @@ +# libc default configuration +/usr/local/lib diff --git a/ld.so.conf.d/x86_64-linux-gnu.conf b/ld.so.conf.d/x86_64-linux-gnu.conf new file mode 100644 index 0000000..4856a62 --- /dev/null +++ b/ld.so.conf.d/x86_64-linux-gnu.conf @@ -0,0 +1,3 @@ +# Multiarch support +/lib/x86_64-linux-gnu +/usr/lib/x86_64-linux-gnu diff --git a/ldap/ldap.conf b/ldap/ldap.conf new file mode 100644 index 0000000..42d42b0 --- /dev/null +++ b/ldap/ldap.conf @@ -0,0 +1,17 @@ +# +# LDAP Defaults +# + +# See ldap.conf(5) for details +# This file should be world readable but not world writable. + +#BASE dc=example,dc=com +#URI ldap://ldap.example.com ldap://ldap-master.example.com:666 + +#SIZELIMIT 12 +#TIMELIMIT 15 +#DEREF never + +# TLS certificates (needed for GnuTLS) +TLS_CACERT /etc/ssl/certs/ca-certificates.crt + diff --git a/libaudit.conf b/libaudit.conf new file mode 100644 index 0000000..90855d7 --- /dev/null +++ b/libaudit.conf @@ -0,0 +1,7 @@ +# This is the configuration file for libaudit tunables. +# It is currently only used for the failure_action tunable. + +# failure_action can be: log, ignore, terminate +failure_action = ignore + + diff --git a/locale.alias b/locale.alias new file mode 100644 index 0000000..72c3ec1 --- /dev/null +++ b/locale.alias @@ -0,0 +1,73 @@ +# Locale name alias data base. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . + +# The format of this file is the same as for the corresponding file of +# the X Window System, which normally can be found in +# /usr/lib/X11/locale/locale.alias +# A single line contains two fields: an alias and a substitution value. +# All entries are case independent. + +# Note: This file is obsolete and is kept around for the time being for +# backward compatibility. Nobody should rely on the names defined here. +# Locales should always be specified by their full name. + +bokmal nb_NO.ISO-8859-1 +bokmÃ¥l nb_NO.ISO-8859-1 +catalan ca_ES.ISO-8859-1 +croatian hr_HR.ISO-8859-2 +czech cs_CZ.ISO-8859-2 +danish da_DK.ISO-8859-1 +dansk da_DK.ISO-8859-1 +deutsch de_DE.ISO-8859-1 +dutch nl_NL.ISO-8859-1 +eesti et_EE.ISO-8859-15 +estonian et_EE.ISO-8859-15 +finnish fi_FI.ISO-8859-1 +français fr_FR.ISO-8859-1 +french fr_FR.ISO-8859-1 +galego gl_ES.ISO-8859-1 +galician gl_ES.ISO-8859-1 +german de_DE.ISO-8859-1 +greek el_GR.ISO-8859-7 +hebrew he_IL.ISO-8859-8 +hrvatski hr_HR.ISO-8859-2 +hungarian hu_HU.ISO-8859-2 +icelandic is_IS.ISO-8859-1 +italian it_IT.ISO-8859-1 +japanese ja_JP.eucJP +japanese.euc ja_JP.eucJP +ja_JP ja_JP.eucJP +ja_JP.ujis ja_JP.eucJP +japanese.sjis ja_JP.SJIS +korean ko_KR.eucKR +korean.euc ko_KR.eucKR +ko_KR ko_KR.eucKR +lithuanian lt_LT.ISO-8859-13 +no_NO nb_NO.ISO-8859-1 +no_NO.ISO-8859-1 nb_NO.ISO-8859-1 +norwegian nb_NO.ISO-8859-1 +nynorsk nn_NO.ISO-8859-1 +polish pl_PL.ISO-8859-2 +portuguese pt_PT.ISO-8859-1 +romanian ro_RO.ISO-8859-2 +russian ru_RU.KOI8-R +slovak sk_SK.ISO-8859-2 +slovene sl_SI.ISO-8859-2 +slovenian sl_SI.ISO-8859-2 +spanish es_ES.ISO-8859-1 +swedish sv_SE.ISO-8859-1 +thai th_TH.TIS-620 +turkish tr_TR.ISO-8859-9 diff --git a/locale.gen b/locale.gen new file mode 100644 index 0000000..c8590cc --- /dev/null +++ b/locale.gen @@ -0,0 +1,479 @@ +# This file lists locales that you wish to have built. You can find a list +# of valid supported locales at /usr/share/i18n/SUPPORTED, and you can add +# user defined locales to /usr/local/share/i18n/SUPPORTED. If you change +# this file, you need to rerun locale-gen. + + +# aa_DJ ISO-8859-1 +# aa_DJ.UTF-8 UTF-8 +# aa_ER UTF-8 +# aa_ER@saaho UTF-8 +# aa_ET UTF-8 +# af_ZA ISO-8859-1 +# af_ZA.UTF-8 UTF-8 +# ak_GH UTF-8 +# am_ET UTF-8 +# an_ES ISO-8859-15 +# an_ES.UTF-8 UTF-8 +# anp_IN UTF-8 +# ar_AE ISO-8859-6 +# ar_AE.UTF-8 UTF-8 +# ar_BH ISO-8859-6 +# ar_BH.UTF-8 UTF-8 +# ar_DZ ISO-8859-6 +# ar_DZ.UTF-8 UTF-8 +# ar_EG ISO-8859-6 +# ar_EG.UTF-8 UTF-8 +# ar_IN UTF-8 +# ar_IQ ISO-8859-6 +# ar_IQ.UTF-8 UTF-8 +# ar_JO ISO-8859-6 +# ar_JO.UTF-8 UTF-8 +# ar_KW ISO-8859-6 +# ar_KW.UTF-8 UTF-8 +# ar_LB ISO-8859-6 +# ar_LB.UTF-8 UTF-8 +# ar_LY ISO-8859-6 +# ar_LY.UTF-8 UTF-8 +# ar_MA ISO-8859-6 +# ar_MA.UTF-8 UTF-8 +# ar_OM ISO-8859-6 +# ar_OM.UTF-8 UTF-8 +# ar_QA ISO-8859-6 +# ar_QA.UTF-8 UTF-8 +# ar_SA ISO-8859-6 +# ar_SA.UTF-8 UTF-8 +# ar_SD ISO-8859-6 +# ar_SD.UTF-8 UTF-8 +# ar_SS UTF-8 +# ar_SY ISO-8859-6 +# ar_SY.UTF-8 UTF-8 +# ar_TN ISO-8859-6 +# ar_TN.UTF-8 UTF-8 +# ar_YE ISO-8859-6 +# ar_YE.UTF-8 UTF-8 +# as_IN UTF-8 +# ast_ES ISO-8859-15 +# ast_ES.UTF-8 UTF-8 +# ayc_PE UTF-8 +# az_AZ UTF-8 +# be_BY CP1251 +# be_BY.UTF-8 UTF-8 +# be_BY@latin UTF-8 +# bem_ZM UTF-8 +# ber_DZ UTF-8 +# ber_MA UTF-8 +# bg_BG CP1251 +# bg_BG.UTF-8 UTF-8 +# bho_IN UTF-8 +# bn_BD UTF-8 +# bn_IN UTF-8 +# bo_CN UTF-8 +# bo_IN UTF-8 +# br_FR ISO-8859-1 +# br_FR.UTF-8 UTF-8 +# br_FR@euro ISO-8859-15 +# brx_IN UTF-8 +# bs_BA ISO-8859-2 +# bs_BA.UTF-8 UTF-8 +# byn_ER UTF-8 +# ca_AD ISO-8859-15 +# ca_AD.UTF-8 UTF-8 +# ca_ES ISO-8859-1 +# ca_ES.UTF-8 UTF-8 +# ca_ES.UTF-8@valencia UTF-8 +# ca_ES@euro ISO-8859-15 +# ca_ES@valencia ISO-8859-15 +# ca_FR ISO-8859-15 +# ca_FR.UTF-8 UTF-8 +# ca_IT ISO-8859-15 +# ca_IT.UTF-8 UTF-8 +# cmn_TW UTF-8 +# crh_UA UTF-8 +# cs_CZ ISO-8859-2 +# cs_CZ.UTF-8 UTF-8 +# csb_PL UTF-8 +# cv_RU UTF-8 +# cy_GB ISO-8859-14 +# cy_GB.UTF-8 UTF-8 +# da_DK ISO-8859-1 +# da_DK.UTF-8 UTF-8 +# de_AT ISO-8859-1 +de_AT.UTF-8 UTF-8 +# de_AT@euro ISO-8859-15 +# de_BE ISO-8859-1 +de_BE.UTF-8 UTF-8 +# de_BE@euro ISO-8859-15 +# de_CH ISO-8859-1 +de_CH.UTF-8 UTF-8 +# de_DE ISO-8859-1 +de_DE.UTF-8 UTF-8 +# de_DE@euro ISO-8859-15 +# de_LI.UTF-8 UTF-8 +# de_LU ISO-8859-1 +de_LU.UTF-8 UTF-8 +# de_LU@euro ISO-8859-15 +# doi_IN UTF-8 +# dv_MV UTF-8 +# dz_BT UTF-8 +# el_CY ISO-8859-7 +# el_CY.UTF-8 UTF-8 +# el_GR ISO-8859-7 +# el_GR.UTF-8 UTF-8 +# en_AG UTF-8 +# en_AU ISO-8859-1 +en_AU.UTF-8 UTF-8 +# en_BW ISO-8859-1 +# en_BW.UTF-8 UTF-8 +# en_CA ISO-8859-1 +en_CA.UTF-8 UTF-8 +# en_DK ISO-8859-1 +# en_DK.ISO-8859-15 ISO-8859-15 +en_DK.UTF-8 UTF-8 +# en_GB ISO-8859-1 +# en_GB.ISO-8859-15 ISO-8859-15 +en_GB.UTF-8 UTF-8 +# en_HK ISO-8859-1 +en_HK.UTF-8 UTF-8 +# en_IE ISO-8859-1 +en_IE.UTF-8 UTF-8 +# en_IE@euro ISO-8859-15 +en_IN UTF-8 +en_NG UTF-8 +# en_NZ ISO-8859-1 +en_NZ.UTF-8 UTF-8 +# en_PH ISO-8859-1 +# en_PH.UTF-8 UTF-8 +# en_SG ISO-8859-1 +en_SG.UTF-8 UTF-8 +# en_US ISO-8859-1 +# en_US.ISO-8859-15 ISO-8859-15 +en_US.UTF-8 UTF-8 +# en_ZA ISO-8859-1 +en_ZA.UTF-8 UTF-8 +# en_ZM UTF-8 +# en_ZW ISO-8859-1 +en_ZW.UTF-8 UTF-8 +# eo ISO-8859-3 +# eo.UTF-8 UTF-8 +# es_AR ISO-8859-1 +# es_AR.UTF-8 UTF-8 +# es_BO ISO-8859-1 +# es_BO.UTF-8 UTF-8 +# es_CL ISO-8859-1 +# es_CL.UTF-8 UTF-8 +# es_CO ISO-8859-1 +# es_CO.UTF-8 UTF-8 +# es_CR ISO-8859-1 +# es_CR.UTF-8 UTF-8 +# es_CU UTF-8 +# es_DO ISO-8859-1 +# es_DO.UTF-8 UTF-8 +# es_EC ISO-8859-1 +# es_EC.UTF-8 UTF-8 +# es_ES ISO-8859-1 +# es_ES.UTF-8 UTF-8 +# es_ES@euro ISO-8859-15 +# es_GT ISO-8859-1 +# es_GT.UTF-8 UTF-8 +# es_HN ISO-8859-1 +# es_HN.UTF-8 UTF-8 +# es_MX ISO-8859-1 +# es_MX.UTF-8 UTF-8 +# es_NI ISO-8859-1 +# es_NI.UTF-8 UTF-8 +# es_PA ISO-8859-1 +# es_PA.UTF-8 UTF-8 +# es_PE ISO-8859-1 +# es_PE.UTF-8 UTF-8 +# es_PR ISO-8859-1 +# es_PR.UTF-8 UTF-8 +# es_PY ISO-8859-1 +# es_PY.UTF-8 UTF-8 +# es_SV ISO-8859-1 +# es_SV.UTF-8 UTF-8 +# es_US ISO-8859-1 +# es_US.UTF-8 UTF-8 +# es_UY ISO-8859-1 +# es_UY.UTF-8 UTF-8 +# es_VE ISO-8859-1 +# es_VE.UTF-8 UTF-8 +# et_EE ISO-8859-1 +# et_EE.ISO-8859-15 ISO-8859-15 +# et_EE.UTF-8 UTF-8 +# eu_ES ISO-8859-1 +# eu_ES.UTF-8 UTF-8 +# eu_ES@euro ISO-8859-15 +# eu_FR ISO-8859-1 +# eu_FR.UTF-8 UTF-8 +# eu_FR@euro ISO-8859-15 +# fa_IR UTF-8 +# ff_SN UTF-8 +# fi_FI ISO-8859-1 +# fi_FI.UTF-8 UTF-8 +# fi_FI@euro ISO-8859-15 +# fil_PH UTF-8 +# fo_FO ISO-8859-1 +# fo_FO.UTF-8 UTF-8 +# fr_BE ISO-8859-1 +# fr_BE.UTF-8 UTF-8 +# fr_BE@euro ISO-8859-15 +# fr_CA ISO-8859-1 +# fr_CA.UTF-8 UTF-8 +# fr_CH ISO-8859-1 +# fr_CH.UTF-8 UTF-8 +# fr_FR ISO-8859-1 +# fr_FR.UTF-8 UTF-8 +# fr_FR@euro ISO-8859-15 +# fr_LU ISO-8859-1 +# fr_LU.UTF-8 UTF-8 +# fr_LU@euro ISO-8859-15 +# fur_IT UTF-8 +# fy_DE UTF-8 +# fy_NL UTF-8 +# ga_IE ISO-8859-1 +# ga_IE.UTF-8 UTF-8 +# ga_IE@euro ISO-8859-15 +# gd_GB ISO-8859-15 +# gd_GB.UTF-8 UTF-8 +# gez_ER UTF-8 +# gez_ER@abegede UTF-8 +# gez_ET UTF-8 +# gez_ET@abegede UTF-8 +# gl_ES ISO-8859-1 +# gl_ES.UTF-8 UTF-8 +# gl_ES@euro ISO-8859-15 +# gu_IN UTF-8 +# gv_GB ISO-8859-1 +# gv_GB.UTF-8 UTF-8 +# ha_NG UTF-8 +# hak_TW UTF-8 +# he_IL ISO-8859-8 +# he_IL.UTF-8 UTF-8 +# hi_IN UTF-8 +# hne_IN UTF-8 +# hr_HR ISO-8859-2 +# hr_HR.UTF-8 UTF-8 +# hsb_DE ISO-8859-2 +# hsb_DE.UTF-8 UTF-8 +# ht_HT UTF-8 +# hu_HU ISO-8859-2 +# hu_HU.UTF-8 UTF-8 +# hy_AM UTF-8 +# hy_AM.ARMSCII-8 ARMSCII-8 +# ia_FR UTF-8 +# id_ID ISO-8859-1 +# id_ID.UTF-8 UTF-8 +# ig_NG UTF-8 +# ik_CA UTF-8 +# is_IS ISO-8859-1 +# is_IS.UTF-8 UTF-8 +# it_CH ISO-8859-1 +# it_CH.UTF-8 UTF-8 +# it_IT ISO-8859-1 +# it_IT.UTF-8 UTF-8 +# it_IT@euro ISO-8859-15 +# iu_CA UTF-8 +# iw_IL ISO-8859-8 +# iw_IL.UTF-8 UTF-8 +# ja_JP.EUC-JP EUC-JP +# ja_JP.UTF-8 UTF-8 +# ka_GE GEORGIAN-PS +# ka_GE.UTF-8 UTF-8 +# kk_KZ PT154 +# kk_KZ RK1048 +# kk_KZ.UTF-8 UTF-8 +# kl_GL ISO-8859-1 +# kl_GL.UTF-8 UTF-8 +# km_KH UTF-8 +# kn_IN UTF-8 +# ko_KR.EUC-KR EUC-KR +# ko_KR.UTF-8 UTF-8 +# kok_IN UTF-8 +# ks_IN UTF-8 +# ks_IN@devanagari UTF-8 +# ku_TR ISO-8859-9 +# ku_TR.UTF-8 UTF-8 +# kw_GB ISO-8859-1 +# kw_GB.UTF-8 UTF-8 +# ky_KG UTF-8 +# lb_LU UTF-8 +# lg_UG ISO-8859-10 +# lg_UG.UTF-8 UTF-8 +# li_BE UTF-8 +# li_NL UTF-8 +# lij_IT UTF-8 +# lo_LA UTF-8 +# lt_LT ISO-8859-13 +# lt_LT.UTF-8 UTF-8 +# lv_LV ISO-8859-13 +# lv_LV.UTF-8 UTF-8 +# lzh_TW UTF-8 +# mag_IN UTF-8 +# mai_IN UTF-8 +# mg_MG ISO-8859-15 +# mg_MG.UTF-8 UTF-8 +# mhr_RU UTF-8 +# mi_NZ ISO-8859-13 +# mi_NZ.UTF-8 UTF-8 +# mk_MK ISO-8859-5 +# mk_MK.UTF-8 UTF-8 +# ml_IN UTF-8 +# mn_MN UTF-8 +# mni_IN UTF-8 +# mr_IN UTF-8 +# ms_MY ISO-8859-1 +# ms_MY.UTF-8 UTF-8 +# mt_MT ISO-8859-3 +# mt_MT.UTF-8 UTF-8 +# my_MM UTF-8 +# nan_TW UTF-8 +# nan_TW@latin UTF-8 +# nb_NO ISO-8859-1 +# nb_NO.UTF-8 UTF-8 +# nds_DE UTF-8 +# nds_NL UTF-8 +# ne_NP UTF-8 +# nhn_MX UTF-8 +# niu_NU UTF-8 +# niu_NZ UTF-8 +# nl_AW UTF-8 +# nl_BE ISO-8859-1 +# nl_BE.UTF-8 UTF-8 +# nl_BE@euro ISO-8859-15 +# nl_NL ISO-8859-1 +# nl_NL.UTF-8 UTF-8 +# nl_NL@euro ISO-8859-15 +# nn_NO ISO-8859-1 +# nn_NO.UTF-8 UTF-8 +# nr_ZA UTF-8 +# nso_ZA UTF-8 +# oc_FR ISO-8859-1 +# oc_FR.UTF-8 UTF-8 +# om_ET UTF-8 +# om_KE ISO-8859-1 +# om_KE.UTF-8 UTF-8 +# or_IN UTF-8 +# os_RU UTF-8 +# pa_IN UTF-8 +# pa_PK UTF-8 +# pap_AN UTF-8 +# pap_AW UTF-8 +# pap_CW UTF-8 +# pl_PL ISO-8859-2 +# pl_PL.UTF-8 UTF-8 +# ps_AF UTF-8 +# pt_BR ISO-8859-1 +# pt_BR.UTF-8 UTF-8 +# pt_PT ISO-8859-1 +# pt_PT.UTF-8 UTF-8 +# pt_PT@euro ISO-8859-15 +# quz_PE UTF-8 +# ro_RO ISO-8859-2 +# ro_RO.UTF-8 UTF-8 +# ru_RU ISO-8859-5 +# ru_RU.CP1251 CP1251 +# ru_RU.KOI8-R KOI8-R +# ru_RU.UTF-8 UTF-8 +# ru_UA KOI8-U +# ru_UA.UTF-8 UTF-8 +# rw_RW UTF-8 +# sa_IN UTF-8 +# sat_IN UTF-8 +# sc_IT UTF-8 +# sd_IN UTF-8 +# sd_IN@devanagari UTF-8 +# se_NO UTF-8 +# shs_CA UTF-8 +# si_LK UTF-8 +# sid_ET UTF-8 +# sk_SK ISO-8859-2 +# sk_SK.UTF-8 UTF-8 +# sl_SI ISO-8859-2 +# sl_SI.UTF-8 UTF-8 +# so_DJ ISO-8859-1 +# so_DJ.UTF-8 UTF-8 +# so_ET UTF-8 +# so_KE ISO-8859-1 +# so_KE.UTF-8 UTF-8 +# so_SO ISO-8859-1 +# so_SO.UTF-8 UTF-8 +# sq_AL ISO-8859-1 +# sq_AL.UTF-8 UTF-8 +# sq_MK UTF-8 +# sr_ME UTF-8 +# sr_RS UTF-8 +# sr_RS@latin UTF-8 +# ss_ZA UTF-8 +# st_ZA ISO-8859-1 +# st_ZA.UTF-8 UTF-8 +# sv_FI ISO-8859-1 +# sv_FI.UTF-8 UTF-8 +# sv_FI@euro ISO-8859-15 +# sv_SE ISO-8859-1 +# sv_SE.ISO-8859-15 ISO-8859-15 +# sv_SE.UTF-8 UTF-8 +# sw_KE UTF-8 +# sw_TZ UTF-8 +# szl_PL UTF-8 +# ta_IN UTF-8 +# ta_LK UTF-8 +# te_IN UTF-8 +# tg_TJ KOI8-T +# tg_TJ.UTF-8 UTF-8 +# th_TH TIS-620 +# th_TH.UTF-8 UTF-8 +# the_NP UTF-8 +# ti_ER UTF-8 +# ti_ET UTF-8 +# tig_ER UTF-8 +# tk_TM UTF-8 +# tl_PH ISO-8859-1 +# tl_PH.UTF-8 UTF-8 +# tn_ZA UTF-8 +# tr_CY ISO-8859-9 +# tr_CY.UTF-8 UTF-8 +# tr_TR ISO-8859-9 +# tr_TR.UTF-8 UTF-8 +# ts_ZA UTF-8 +# tt_RU UTF-8 +# tt_RU@iqtelif UTF-8 +# ug_CN UTF-8 +# uk_UA KOI8-U +# uk_UA.UTF-8 UTF-8 +# unm_US UTF-8 +# ur_IN UTF-8 +# ur_PK UTF-8 +# uz_UZ ISO-8859-1 +# uz_UZ.UTF-8 UTF-8 +# uz_UZ@cyrillic UTF-8 +# ve_ZA UTF-8 +# vi_VN UTF-8 +# wa_BE ISO-8859-1 +# wa_BE.UTF-8 UTF-8 +# wa_BE@euro ISO-8859-15 +# wae_CH UTF-8 +# wal_ET UTF-8 +# wo_SN UTF-8 +# xh_ZA ISO-8859-1 +# xh_ZA.UTF-8 UTF-8 +# yi_US CP1255 +# yi_US.UTF-8 UTF-8 +# yo_NG UTF-8 +# yue_HK UTF-8 +# zh_CN GB2312 +# zh_CN.GB18030 GB18030 +# zh_CN.GBK GBK +# zh_CN.UTF-8 UTF-8 +# zh_HK BIG5-HKSCS +# zh_HK.UTF-8 UTF-8 +# zh_SG GB2312 +# zh_SG.GBK GBK +# zh_SG.UTF-8 UTF-8 +# zh_TW BIG5 +# zh_TW.EUC-TW EUC-TW +# zh_TW.UTF-8 UTF-8 +# zu_ZA ISO-8859-1 +# zu_ZA.UTF-8 UTF-8 +# en_US.UTF-8 UTF-8 +# de_DE.UTF-8 UTF-8 diff --git a/localtime b/localtime new file mode 100644 index 0000000000000000000000000000000000000000..96059c7854e1f571ddf97fd285a28df361c4c99d GIT binary patch literal 2309 zcmciCeN0t#9LMo(lO@L;B{2s(V^HbuhSIhsF!##M>?%-tUpG z-pG)Xuf@wqLxhYR?yyEnkG(RwZ>fx)&6qe<8L3|v#;GrRB-U3muD$~st#1h;$V}8eV>_U@-4R=mVFJ2^frvI+tahEh=`giK`KcTKG$8^T|_w=q)dv)d~J2mpi zQHeU(C(*n2$gDP%n9Z+BY;A+wy}DBFDe_8OPM+NB&XV}31i3GCh9o#Wns7BkXa5+l ziM|M(^I4$Y-+x`*Jr{It`x#AY{Zf-R9nqAkcQv(aOwt@(#DY*QTEcQPxi-!m0(erOfVc$DaH1v@c?`V@H2lwgHx;lBRZL2PO z;&okKyH-mcs8w%Kfj;h9qAT2qy5d@jmWJm`>FF?i^6G3^dH7ddX+q6L$ymbrp}U0dB4dE(=2IB4%fzsAEasOHElZi zsWe|6(-+_Gm6wJGbn~u{bxU8jzTDiSEjwD&a`^e*I0Gzy-a0M&kz-2W?LRFmD%Qb2 zwph+v@8_gAf-URs*PEa5)`ct#SsAi4WNpaekkui}L)M2Z5LuzESt7DVTeC=8vr1%{$U2dQ+M1Qx znx!IZMHY*!7Fn*XSucMq3r1FqEE!odvS?)0wr1JLx{-w=D@T@&tQ}cAvU+6s$oi22 zAQeDLfYbmf0#XH}47R2YNFk6)Af-TRffNI&22u{B9!NouiXbIHYJwC6sR~jSTT>UL zFt(;LNNJGTAjLtdgOmrU4^kkcLP&{_8X-kOs)UpYsS{EtTT>~dRJNv8NU@M=A>~5q zg%k{_7*aB%W=PSHsv%`V>V_1~)>IBDovo=IQaq%3NcoWZAq7M#h?EeiAyP!7ibxre zIwFNcDv6ZR*3=RyCQ?nLoJc*9f+7_~N{ZAJDJoJ`q^w9?k-{RCMM`UHYKs)t)>IcM zFH&Emz(|FW5+gN6itJ|+9B|`wIs$k*#bH143k pFq_w#&x=fs{~hOB>TKSGm~hWc MAX, the highest value will be used. +# +# SHA_CRYPT_MIN_ROUNDS 5000 +# SHA_CRYPT_MAX_ROUNDS 5000 + +################# OBSOLETED BY PAM ############## +# # +# These options are now handled by PAM. Please # +# edit the appropriate file in /etc/pam.d/ to # +# enable the equivelants of them. +# +############### + +#MOTD_FILE +#DIALUPS_CHECK_ENAB +#LASTLOG_ENAB +#MAIL_CHECK_ENAB +#OBSCURE_CHECKS_ENAB +#PORTTIME_CHECKS_ENAB +#SU_WHEEL_ONLY +#CRACKLIB_DICTPATH +#PASS_CHANGE_TRIES +#PASS_ALWAYS_WARN +#ENVIRON_FILE +#NOLOGINS_FILE +#ISSUE_FILE +#PASS_MIN_LEN +#PASS_MAX_LEN +#ULIMIT +#ENV_HZ +#CHFN_AUTH +#CHSH_AUTH +#FAIL_DELAY + +################# OBSOLETED ####################### +# # +# These options are no more handled by shadow. # +# # +# Shadow utilities will display a warning if they # +# still appear. # +# # +################################################### + +# CLOSE_SESSIONS +# LOGIN_STRING +# NO_PASSWORD_CONSOLE +# QMAIL_DIR + + + diff --git a/logrotate.conf b/logrotate.conf new file mode 100644 index 0000000..b504c76 --- /dev/null +++ b/logrotate.conf @@ -0,0 +1,35 @@ +# see "man logrotate" for details +# rotate log files weekly +weekly + +# keep 4 weeks worth of backlogs +rotate 99 + +# create new (empty) log files after rotating old ones +create + +# uncomment this if you want your log files compressed +compress +delaycompress + +# packages drop log rotation information into this directory +include /etc/logrotate.d + +# no packages own wtmp, or btmp -- we'll rotate them here +/var/log/wtmp { + missingok + monthly + create 0664 root utmp + rotate 12 + size 4M +} + +/var/log/btmp { + missingok + monthly + create 0660 root utmp + rotate 12 + size 4M +} + +# system-specific logs may be configured here diff --git a/logrotate.d/apt b/logrotate.d/apt new file mode 100644 index 0000000..9a6e5d1 --- /dev/null +++ b/logrotate.d/apt @@ -0,0 +1,16 @@ +/var/log/apt/term.log { + rotate 12 + monthly + compress + missingok + notifempty +} + +/var/log/apt/history.log { + rotate 12 + monthly + compress + missingok + notifempty +} + diff --git a/logrotate.d/aptitude b/logrotate.d/aptitude new file mode 100644 index 0000000..d6a0ba2 --- /dev/null +++ b/logrotate.d/aptitude @@ -0,0 +1,7 @@ +/var/log/aptitude { + rotate 6 + monthly + compress + missingok + notifempty +} diff --git a/logrotate.d/chrony b/logrotate.d/chrony new file mode 100644 index 0000000..68f4518 --- /dev/null +++ b/logrotate.d/chrony @@ -0,0 +1,17 @@ +/var/log/chrony/*.log { + weekly + rotate 7 + missingok + notifempty + compress + delaycompress + sharedscripts + create 644 + postrotate + PASSWORD=`awk '$1 ~ /^1$/ {print $2; exit}' /etc/chrony/chrony.keys` + cat << EOF | /usr/bin/chronyc | sed '/^200 OK$/d' + password $PASSWORD + cyclelogs + EOF + endscript +} diff --git a/logrotate.d/dpkg b/logrotate.d/dpkg new file mode 100644 index 0000000..b071698 --- /dev/null +++ b/logrotate.d/dpkg @@ -0,0 +1,18 @@ +/var/log/dpkg.log { + monthly + rotate 12 + compress + delaycompress + missingok + notifempty + create 644 root root +} +/var/log/alternatives.log { + monthly + rotate 12 + compress + delaycompress + missingok + notifempty + create 644 root root +} diff --git a/logrotate.d/rsyslog b/logrotate.d/rsyslog new file mode 100644 index 0000000..c86adeb --- /dev/null +++ b/logrotate.d/rsyslog @@ -0,0 +1,59 @@ +/var/log/syslog /var/log/messages { + rotate 7 + daily + missingok + notifempty + compress + delaycompress + dateext + size 4M + olddir /var/log/.old + postrotate + invoke-rc.d rsyslog rotate > /dev/null + endscript +} + +/var/log/mail.info +/var/log/mail.warn +/var/log/mail.err +/var/log/mail.log +/var/log/daemon.log +/var/log/kern.log +/var/log/auth.log +/var/log/user.log +/var/log/lpr.log +/var/log/cron.log +/var/log/debug +{ + rotate 4 + weekly + missingok + notifempty + compress + delaycompress + dateext + size 4M + olddir /var/log/.old + sharedscripts + postrotate + invoke-rc.d rsyslog rotate > /dev/null + endscript +} + +/var/log/syslog.d/*.log { + rotate 10 + weekly + missingok + notifempty + size 4M + delaycompress + dateext + compress + olddir /var/log/syslog.d/.old + sharedscripts + postrotate + reload rsyslog >/dev/null 2>&1 || true + endscript +} + +# vim: ts=4 filetype=conf et diff --git a/lvm/lvm.conf b/lvm/lvm.conf new file mode 100644 index 0000000..1b7ad9a --- /dev/null +++ b/lvm/lvm.conf @@ -0,0 +1,1260 @@ +# This is an example configuration file for the LVM2 system. +# It contains the default settings that would be used if there was no +# /etc/lvm/lvm.conf file. +# +# Refer to 'man lvm.conf' for further information including the file layout. +# +# To put this file in a different directory and override /etc/lvm set +# the environment variable LVM_SYSTEM_DIR before running the tools. +# +# N.B. Take care that each setting only appears once if uncommenting +# example settings in this file. + +# This section allows you to set the way the configuration settings are handled. +config { + + # If enabled, any LVM2 configuration mismatch is reported. + # This implies checking that the configuration key is understood + # by LVM2 and that the value of the key is of a proper type. + # If disabled, any configuration mismatch is ignored and default + # value is used instead without any warning (a message about the + # configuration key not being found is issued in verbose mode only). + checks = 1 + + # If enabled, any configuration mismatch aborts the LVM2 process. + abort_on_errors = 0 + + # Directory where LVM looks for configuration profiles. + profile_dir = "/etc/lvm/profile" +} + +# This section allows you to configure which block devices should +# be used by the LVM system. +devices { + + # Where do you want your volume groups to appear ? + dir = "/dev" + + # An array of directories that contain the device nodes you wish + # to use with LVM2. + scan = [ "/dev" ] + + # If set, the cache of block device nodes with all associated symlinks + # will be constructed out of the existing udev database content. + # This avoids using and opening any inapplicable non-block devices or + # subdirectories found in the device directory. This setting is applied + # to udev-managed device directory only, other directories will be scanned + # fully. LVM2 needs to be compiled with udev support for this setting to + # take effect. N.B. Any device node or symlink not managed by udev in + # udev directory will be ignored with this setting on. + obtain_device_list_from_udev = 1 + + # If several entries in the scanned directories correspond to the + # same block device and the tools need to display a name for device, + # all the pathnames are matched against each item in the following + # list of regular expressions in turn and the first match is used. + + # By default no preferred names are defined. + # preferred_names = [ ] + + # Try to avoid using undescriptive /dev/dm-N names, if present. + # preferred_names = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/[hs]d" ] + + # In case no prefererred name matches or if preferred_names are not + # defined at all, builtin rules are used to determine the preference. + # + # The first builtin rule checks path prefixes and it gives preference + # based on this ordering (where "dev" depends on devices/dev setting): + # /dev/mapper > /dev/disk > /dev/dm-* > /dev/block + # + # If the ordering above cannot be applied, the path with fewer slashes + # gets preference then. + # + # If the number of slashes is the same, a symlink gets preference. + # + # Finally, if all the rules mentioned above are not applicable, + # lexicographical order is used over paths and the smallest one + # of all gets preference. + + + # A filter that tells LVM2 to only use a restricted set of devices. + # The filter consists of an array of regular expressions. These + # expressions can be delimited by a character of your choice, and + # prefixed with either an 'a' (for accept) or 'r' (for reject). + # The first expression found to match a device name determines if + # the device will be accepted or rejected (ignored). Devices that + # don't match any patterns are accepted. + + # Be careful if there there are symbolic links or multiple filesystem + # entries for the same device as each name is checked separately against + # the list of patterns. The effect is that if the first pattern in the + # list to match a name is an 'a' pattern for any of the names, the device + # is accepted; otherwise if the first pattern in the list to match a name + # is an 'r' pattern for any of the names it is rejected; otherwise it is + # accepted. + + # Don't have more than one filter line active at once: only one gets used. + + # Run vgscan after you change this parameter to ensure that + # the cache file gets regenerated (see below). + # If it doesn't do what you expect, check the output of 'vgscan -vvvv'. + + # If lvmetad is used, then see "A note about device filtering while + # lvmetad is used" comment that is attached to global/use_lvmetad setting. + + # By default we accept every block device: + # filter = [ "a/.*/" ] + + # Exclude the cdrom drive + # filter = [ "r|/dev/cdrom|" ] + + # When testing I like to work with just loopback devices: + # filter = [ "a/loop/", "r/.*/" ] + + # Or maybe all loops and ide drives except hdc: + # filter =[ "a|loop|", "r|/dev/hdc|", "a|/dev/ide|", "r|.*|" ] + + # Use anchors if you want to be really specific + # filter = [ "a|^/dev/hda8$|", "r/.*/" ] + + # Since "filter" is often overridden from command line, it is not suitable + # for system-wide device filtering (udev rules, lvmetad). To hide devices + # from LVM-specific udev processing and/or from lvmetad, you need to set + # global_filter. The syntax is the same as for normal "filter" + # above. Devices that fail the global_filter are not even opened by LVM. + + # global_filter = [] + + # The results of the filtering are cached on disk to avoid + # rescanning dud devices (which can take a very long time). + # By default this cache is stored in the /etc/lvm/cache directory + # in a file called '.cache'. + # It is safe to delete the contents: the tools regenerate it. + # (The old setting 'cache' is still respected if neither of + # these new ones is present.) + # N.B. If obtain_device_list_from_udev is set to 1 the list of + # devices is instead obtained from udev and any existing .cache + # file is removed. + cache_dir = "/run/lvm" + cache_file_prefix = "" + + # You can turn off writing this cache file by setting this to 0. + write_cache_state = 1 + + # Advanced settings. + + # List of pairs of additional acceptable block device types found + # in /proc/devices with maximum (non-zero) number of partitions. + # types = [ "fd", 16 ] + + # If sysfs is mounted (2.6 kernels) restrict device scanning to + # the block devices it believes are valid. + # 1 enables; 0 disables. + sysfs_scan = 1 + + # By default, LVM2 will ignore devices used as component paths + # of device-mapper multipath devices. + # 1 enables; 0 disables. + multipath_component_detection = 1 + + # By default, LVM2 will ignore devices used as components of + # software RAID (md) devices by looking for md superblocks. + # 1 enables; 0 disables. + md_component_detection = 1 + + # By default, if a PV is placed directly upon an md device, LVM2 + # will align its data blocks with the md device's stripe-width. + # 1 enables; 0 disables. + md_chunk_alignment = 1 + + # Default alignment of the start of a data area in MB. If set to 0, + # a value of 64KB will be used. Set to 1 for 1MiB, 2 for 2MiB, etc. + # default_data_alignment = 1 + + # By default, the start of a PV's data area will be a multiple of + # the 'minimum_io_size' or 'optimal_io_size' exposed in sysfs. + # - minimum_io_size - the smallest request the device can perform + # w/o incurring a read-modify-write penalty (e.g. MD's chunk size) + # - optimal_io_size - the device's preferred unit of receiving I/O + # (e.g. MD's stripe width) + # minimum_io_size is used if optimal_io_size is undefined (0). + # If md_chunk_alignment is enabled, that detects the optimal_io_size. + # This setting takes precedence over md_chunk_alignment. + # 1 enables; 0 disables. + data_alignment_detection = 1 + + # Alignment (in KB) of start of data area when creating a new PV. + # md_chunk_alignment and data_alignment_detection are disabled if set. + # Set to 0 for the default alignment (see: data_alignment_default) + # or page size, if larger. + data_alignment = 0 + + # By default, the start of the PV's aligned data area will be shifted by + # the 'alignment_offset' exposed in sysfs. This offset is often 0 but + # may be non-zero; e.g.: certain 4KB sector drives that compensate for + # windows partitioning will have an alignment_offset of 3584 bytes + # (sector 7 is the lowest aligned logical block, the 4KB sectors start + # at LBA -1, and consequently sector 63 is aligned on a 4KB boundary). + # But note that pvcreate --dataalignmentoffset will skip this detection. + # 1 enables; 0 disables. + data_alignment_offset_detection = 1 + + # If, while scanning the system for PVs, LVM2 encounters a device-mapper + # device that has its I/O suspended, it waits for it to become accessible. + # Set this to 1 to skip such devices. This should only be needed + # in recovery situations. + ignore_suspended_devices = 0 + + # ignore_lvm_mirrors: Introduced in version 2.02.104 + # This setting determines whether logical volumes of "mirror" segment + # type are scanned for LVM labels. This affects the ability of + # mirrors to be used as physical volumes. If 'ignore_lvm_mirrors' + # is set to '1', it becomes impossible to create volume groups on top + # of mirror logical volumes - i.e. to stack volume groups on mirrors. + # + # Allowing mirror logical volumes to be scanned (setting the value to '0') + # can potentially cause LVM processes and I/O to the mirror to become + # blocked. This is due to the way that the "mirror" segment type handles + # failures. In order for the hang to manifest itself, an LVM command must + # be run just after a failure and before the automatic LVM repair process + # takes place OR there must be failures in multiple mirrors in the same + # volume group at the same time with write failures occurring moments + # before a scan of the mirror's labels. + # + # Note that these scanning limitations do not apply to the LVM RAID + # types, like "raid1". The RAID segment types handle failures in a + # different way and are not subject to possible process or I/O blocking. + # + # It is encouraged that users set 'ignore_lvm_mirrors' to 1 if they + # are using the "mirror" segment type. Users that require volume group + # stacking on mirrored logical volumes should consider using the "raid1" + # segment type. The "raid1" segment type is not available for + # active/active clustered volume groups. + # + # Set to 1 to disallow stacking and thereby avoid a possible deadlock. + ignore_lvm_mirrors = 1 + + # During each LVM operation errors received from each device are counted. + # If the counter of a particular device exceeds the limit set here, no + # further I/O is sent to that device for the remainder of the respective + # operation. Setting the parameter to 0 disables the counters altogether. + disable_after_error_count = 0 + + # Allow use of pvcreate --uuid without requiring --restorefile. + require_restorefile_with_uuid = 1 + + # Minimum size (in KB) of block devices which can be used as PVs. + # In a clustered environment all nodes must use the same value. + # Any value smaller than 512KB is ignored. + + # Ignore devices smaller than 2MB such as floppy drives. + pv_min_size = 2048 + + # The original built-in setting was 512 up to and including version 2.02.84. + # pv_min_size = 512 + + # Issue discards to a logical volumes's underlying physical volume(s) when + # the logical volume is no longer using the physical volumes' space (e.g. + # lvremove, lvreduce, etc). Discards inform the storage that a region is + # no longer in use. Storage that supports discards advertise the protocol + # specific way discards should be issued by the kernel (TRIM, UNMAP, or + # WRITE SAME with UNMAP bit set). Not all storage will support or benefit + # from discards but SSDs and thinly provisioned LUNs generally do. If set + # to 1, discards will only be issued if both the storage and kernel provide + # support. + # 1 enables; 0 disables. + issue_discards = 0 +} + +# This section allows you to configure the way in which LVM selects +# free space for its Logical Volumes. +allocation { + + # When searching for free space to extend an LV, the "cling" + # allocation policy will choose space on the same PVs as the last + # segment of the existing LV. If there is insufficient space and a + # list of tags is defined here, it will check whether any of them are + # attached to the PVs concerned and then seek to match those PV tags + # between existing extents and new extents. + # Use the special tag "@*" as a wildcard to match any PV tag. + + # Example: LVs are mirrored between two sites within a single VG. + # PVs are tagged with either @site1 or @site2 to indicate where + # they are situated. + + # cling_tag_list = [ "@site1", "@site2" ] + # cling_tag_list = [ "@*" ] + + # Changes made in version 2.02.85 extended the reach of the 'cling' + # policies to detect more situations where data can be grouped + # onto the same disks. Set this to 0 to revert to the previous + # algorithm. + maximise_cling = 1 + + # Whether to use blkid library instead of native LVM2 code to detect + # any existing signatures while creating new Physical Volumes and + # Logical Volumes. LVM2 needs to be compiled with blkid wiping support + # for this setting to take effect. + # + # LVM2 native detection code is currently able to recognize these signatures: + # - MD device signature + # - swap signature + # - LUKS signature + # To see the list of signatures recognized by blkid, check the output + # of 'blkid -k' command. The blkid can recognize more signatures than + # LVM2 native detection code, but due to this higher number of signatures + # to be recognized, it can take more time to complete the signature scan. + use_blkid_wiping = 1 + + # Set to 1 to wipe any signatures found on newly-created Logical Volumes + # automatically in addition to zeroing of the first KB on the LV + # (controlled by the -Z/--zero y option). + # The command line option -W/--wipesignatures takes precedence over this + # setting. + # The default is to wipe signatures when zeroing. + # + wipe_signatures_when_zeroing_new_lvs = 1 + + # Set to 1 to guarantee that mirror logs will always be placed on + # different PVs from the mirror images. This was the default + # until version 2.02.85. + mirror_logs_require_separate_pvs = 0 + + # Set to 1 to guarantee that cache_pool metadata will always be + # placed on different PVs from the cache_pool data. + cache_pool_metadata_require_separate_pvs = 0 + + # Specify the minimal chunk size (in kiB) for cache pool volumes. + # Using a chunk_size that is too large can result in wasteful use of + # the cache, where small reads and writes can cause large sections of + # an LV to be mapped into the cache. However, choosing a chunk_size + # that is too small can result in more overhead trying to manage the + # numerous chunks that become mapped into the cache. The former is + # more of a problem than the latter in most cases, so we default to + # a value that is on the smaller end of the spectrum. Supported values + # range from 32(kiB) to 1048576 in multiples of 32. + # cache_pool_chunk_size = 64 + + # Set to 1 to guarantee that thin pool metadata will always + # be placed on different PVs from the pool data. + thin_pool_metadata_require_separate_pvs = 0 + + # Specify chunk size calculation policy for thin pool volumes. + # Possible options are: + # "generic" - if thin_pool_chunk_size is defined, use it. + # Otherwise, calculate the chunk size based on + # estimation and device hints exposed in sysfs: + # the minimum_io_size. The chunk size is always + # at least 64KiB. + # + # "performance" - if thin_pool_chunk_size is defined, use it. + # Otherwise, calculate the chunk size for + # performance based on device hints exposed in + # sysfs: the optimal_io_size. The chunk size is + # always at least 512KiB. + # thin_pool_chunk_size_policy = "generic" + + # Specify the minimal chunk size (in KB) for thin pool volumes. + # Use of the larger chunk size may improve performance for plain + # thin volumes, however using them for snapshot volumes is less efficient, + # as it consumes more space and takes extra time for copying. + # When unset, lvm tries to estimate chunk size starting from 64KB + # Supported values are in range from 64 to 1048576. + # thin_pool_chunk_size = 64 + + # Specify discards behaviour of the thin pool volume. + # Select one of "ignore", "nopassdown", "passdown" + # thin_pool_discards = "passdown" + + # Set to 0, to disable zeroing of thin pool data chunks before their + # first use. + # N.B. zeroing larger thin pool chunk size degrades performance. + # thin_pool_zero = 1 +} + +# This section that allows you to configure the nature of the +# information that LVM2 reports. +log { + + # Controls the messages sent to stdout or stderr. + # There are three levels of verbosity, 3 being the most verbose. + verbose = 0 + + # Set to 1 to suppress all non-essential messages from stdout. + # This has the same effect as -qq. + # When this is set, the following commands still produce output: + # dumpconfig, lvdisplay, lvmdiskscan, lvs, pvck, pvdisplay, + # pvs, version, vgcfgrestore -l, vgdisplay, vgs. + # Non-essential messages are shifted from log level 4 to log level 5 + # for syslog and lvm2_log_fn purposes. + # Any 'yes' or 'no' questions not overridden by other arguments + # are suppressed and default to 'no'. + silent = 0 + + # Should we send log messages through syslog? + # 1 is yes; 0 is no. + syslog = 1 + + # Should we log error and debug messages to a file? + # By default there is no log file. + #file = "/var/log/lvm2.log" + + # Should we overwrite the log file each time the program is run? + # By default we append. + overwrite = 0 + + # What level of log messages should we send to the log file and/or syslog? + # There are 6 syslog-like log levels currently in use - 2 to 7 inclusive. + # 7 is the most verbose (LOG_DEBUG). + level = 0 + + # Format of output messages + # Whether or not (1 or 0) to indent messages according to their severity + indent = 1 + + # Whether or not (1 or 0) to display the command name on each line output + command_names = 0 + + # A prefix to use before the message text (but after the command name, + # if selected). Default is two spaces, so you can see/grep the severity + # of each message. + prefix = " " + + # To make the messages look similar to the original LVM tools use: + # indent = 0 + # command_names = 1 + # prefix = " -- " + + # Set this if you want log messages during activation. + # Don't use this in low memory situations (can deadlock). + # activation = 0 + + # Some debugging messages are assigned to a class and only appear + # in debug output if the class is listed here. + # Classes currently available: + # memory, devices, activation, allocation, lvmetad, metadata, cache, + # locking + # Use "all" to see everything. + debug_classes = [ "memory", "devices", "activation", "allocation", + "lvmetad", "metadata", "cache", "locking" ] +} + +# Configuration of metadata backups and archiving. In LVM2 when we +# talk about a 'backup' we mean making a copy of the metadata for the +# *current* system. The 'archive' contains old metadata configurations. +# Backups are stored in a human readable text format. +backup { + + # Should we maintain a backup of the current metadata configuration ? + # Use 1 for Yes; 0 for No. + # Think very hard before turning this off! + backup = 1 + + # Where shall we keep it ? + # Remember to back up this directory regularly! + backup_dir = "/etc/lvm/backup" + + # Should we maintain an archive of old metadata configurations. + # Use 1 for Yes; 0 for No. + # On by default. Think very hard before turning this off. + archive = 1 + + # Where should archived files go ? + # Remember to back up this directory regularly! + archive_dir = "/etc/lvm/archive" + + # What is the minimum number of archive files you wish to keep ? + retain_min = 10 + + # What is the minimum time you wish to keep an archive file for ? + retain_days = 30 +} + +# Settings for the running LVM2 in shell (readline) mode. +shell { + + # Number of lines of history to store in ~/.lvm_history + history_size = 100 +} + + +# Miscellaneous global LVM2 settings +global { + # The file creation mask for any files and directories created. + # Interpreted as octal if the first digit is zero. + umask = 077 + + # Allow other users to read the files + #umask = 022 + + # Enabling test mode means that no changes to the on disk metadata + # will be made. Equivalent to having the -t option on every + # command. Defaults to off. + test = 0 + + # Default value for --units argument + units = "h" + + # Since version 2.02.54, the tools distinguish between powers of + # 1024 bytes (e.g. KiB, MiB, GiB) and powers of 1000 bytes (e.g. + # KB, MB, GB). + # If you have scripts that depend on the old behaviour, set this to 0 + # temporarily until you update them. + si_unit_consistency = 1 + + # Whether or not to display unit suffix for sizes. This setting has + # no effect if the units are in human-readable form (global/units="h") + # in which case the suffix is always displayed. + suffix = 1 + + # Whether or not to communicate with the kernel device-mapper. + # Set to 0 if you want to use the tools to manipulate LVM metadata + # without activating any logical volumes. + # If the device-mapper kernel driver is not present in your kernel + # setting this to 0 should suppress the error messages. + activation = 1 + + # If we can't communicate with device-mapper, should we try running + # the LVM1 tools? + # This option only applies to 2.4 kernels and is provided to help you + # switch between device-mapper kernels and LVM1 kernels. + # The LVM1 tools need to be installed with .lvm1 suffices + # e.g. vgscan.lvm1 and they will stop working after you start using + # the new lvm2 on-disk metadata format. + # The default value is set when the tools are built. + # fallback_to_lvm1 = 0 + + # The default metadata format that commands should use - "lvm1" or "lvm2". + # The command line override is -M1 or -M2. + # Defaults to "lvm2". + # format = "lvm2" + + # Location of proc filesystem + proc = "/proc" + + # Type of locking to use. Defaults to local file-based locking (1). + # Turn locking off by setting to 0 (dangerous: risks metadata corruption + # if LVM2 commands get run concurrently). + # Type 2 uses the external shared library locking_library. + # Type 3 uses built-in clustered locking. + # Type 4 uses read-only locking which forbids any operations that might + # change metadata. + # Type 5 offers dummy locking for tools that do not need any locks. + # You should not need to set this directly: the tools will select when + # to use it instead of the configured locking_type. Do not use lvmetad or + # the kernel device-mapper driver with this locking type. + # It is used by the --readonly option that offers read-only access to + # Volume Group metadata that cannot be locked safely because it belongs to + # an inaccessible domain and might be in use, for example a virtual machine + # image or a disk that is shared by a clustered machine. + # + # N.B. Don't use lvmetad with locking type 3 as lvmetad is not yet + # supported in clustered environment. If use_lvmetad=1 and locking_type=3 + # is set at the same time, LVM always issues a warning message about this + # and then it automatically disables lvmetad use. + locking_type = 1 + + # Set to 0 to fail when a lock request cannot be satisfied immediately. + wait_for_locks = 1 + + # If using external locking (type 2) and initialisation fails, + # with this set to 1 an attempt will be made to use the built-in + # clustered locking. + # If you are using a customised locking_library you should set this to 0. + fallback_to_clustered_locking = 1 + + # If an attempt to initialise type 2 or type 3 locking failed, perhaps + # because cluster components such as clvmd are not running, with this set + # to 1 an attempt will be made to use local file-based locking (type 1). + # If this succeeds, only commands against local volume groups will proceed. + # Volume Groups marked as clustered will be ignored. + fallback_to_local_locking = 1 + + # Local non-LV directory that holds file-based locks while commands are + # in progress. A directory like /tmp that may get wiped on reboot is OK. + locking_dir = "/run/lock/lvm" + + # Whenever there are competing read-only and read-write access requests for + # a volume group's metadata, instead of always granting the read-only + # requests immediately, delay them to allow the read-write requests to be + # serviced. Without this setting, write access may be stalled by a high + # volume of read-only requests. + # NB. This option only affects locking_type = 1 viz. local file-based + # locking. + prioritise_write_locks = 1 + + # Other entries can go here to allow you to load shared libraries + # e.g. if support for LVM1 metadata was compiled as a shared library use + # format_libraries = "liblvm2format1.so" + # Full pathnames can be given. + + # Search this directory first for shared libraries. + # library_dir = "/lib/lvm2" + + # The external locking library to load if locking_type is set to 2. + # locking_library = "liblvm2clusterlock.so" + + # Treat any internal errors as fatal errors, aborting the process that + # encountered the internal error. Please only enable for debugging. + abort_on_internal_errors = 0 + + # Check whether CRC is matching when parsed VG is used multiple times. + # This is useful to catch unexpected internal cached volume group + # structure modification. Please only enable for debugging. + detect_internal_vg_cache_corruption = 0 + + # If set to 1, no operations that change on-disk metadata will be permitted. + # Additionally, read-only commands that encounter metadata in need of repair + # will still be allowed to proceed exactly as if the repair had been + # performed (except for the unchanged vg_seqno). + # Inappropriate use could mess up your system, so seek advice first! + metadata_read_only = 0 + + # 'mirror_segtype_default' defines which segtype will be used when the + # shorthand '-m' option is used for mirroring. The possible options are: + # + # "mirror" - The original RAID1 implementation provided by LVM2/DM. It is + # characterized by a flexible log solution (core, disk, mirrored) + # and by the necessity to block I/O while reconfiguring in the + # event of a failure. + # + # There is an inherent race in the dmeventd failure handling + # logic with snapshots of devices using this type of RAID1 that + # in the worst case could cause a deadlock. + # Ref: https://bugzilla.redhat.com/show_bug.cgi?id=817130#c10 + # + # "raid1" - This implementation leverages MD's RAID1 personality through + # device-mapper. It is characterized by a lack of log options. + # (A log is always allocated for every device and they are placed + # on the same device as the image - no separate devices are + # required.) This mirror implementation does not require I/O + # to be blocked in the kernel in the event of a failure. + # This mirror implementation is not cluster-aware and cannot be + # used in a shared (active/active) fashion in a cluster. + # + # Specify the '--type ' option to override this default + # setting. + mirror_segtype_default = "raid1" + + # 'raid10_segtype_default' determines the segment types used by default + # when the '--stripes/-i' and '--mirrors/-m' arguments are both specified + # during the creation of a logical volume. + # Possible settings include: + # + # "raid10" - This implementation leverages MD's RAID10 personality through + # device-mapper. + # + # "mirror" - LVM will layer the 'mirror' and 'stripe' segment types. It + # will do this by creating a mirror on top of striped sub-LVs; + # effectively creating a RAID 0+1 array. This is suboptimal + # in terms of providing redundancy and performance. Changing to + # this setting is not advised. + # Specify the '--type ' option to override this default + # setting. + raid10_segtype_default = "raid10" + + # The default format for displaying LV names in lvdisplay was changed + # in version 2.02.89 to show the LV name and path separately. + # Previously this was always shown as /dev/vgname/lvname even when that + # was never a valid path in the /dev filesystem. + # Set to 1 to reinstate the previous format. + # + # lvdisplay_shows_full_device_path = 0 + + # Whether to use (trust) a running instance of lvmetad. If this is set to + # 0, all commands fall back to the usual scanning mechanisms. When set to 1 + # *and* when lvmetad is running (automatically instantiated by making use of + # systemd's socket-based service activation or run as an initscripts service + # or run manually), the volume group metadata and PV state flags are obtained + # from the lvmetad instance and no scanning is done by the individual + # commands. In a setup with lvmetad, lvmetad udev rules *must* be set up for + # LVM to work correctly. Without proper udev rules, all changes in block + # device configuration will be *ignored* until a manual 'pvscan --cache' + # is performed. These rules are installed by default. + # + # If lvmetad has been running while use_lvmetad was 0, it MUST be stopped + # before changing use_lvmetad to 1 and started again afterwards. + # + # If using lvmetad, the volume activation is also switched to automatic + # event-based mode. In this mode, the volumes are activated based on + # incoming udev events that automatically inform lvmetad about new PVs + # that appear in the system. Once the VG is complete (all the PVs are + # present), it is auto-activated. The activation/auto_activation_volume_list + # setting controls which volumes are auto-activated (all by default). + # + # A note about device filtering while lvmetad is used: + # When lvmetad is updated (either automatically based on udev events + # or directly by pvscan --cache call), the devices/filter + # is ignored and all devices are scanned by default. The lvmetad always + # keeps unfiltered information which is then provided to LVM commands + # and then each LVM command does the filtering based on devices/filter + # setting itself. + # To prevent scanning devices completely, even when using lvmetad, + # the devices/global_filter must be used. + # N.B. Don't use lvmetad with locking type 3 as lvmetad is not yet + # supported in clustered environment. If use_lvmetad=1 and locking_type=3 + # is set at the same time, LVM always issues a warning message about this + # and then it automatically disables lvmetad use. + use_lvmetad = 0 + + # Full path of the utility called to check that a thin metadata device + # is in a state that allows it to be used. + # Each time a thin pool needs to be activated or after it is deactivated + # this utility is executed. The activation will only proceed if the utility + # has an exit status of 0. + # Set to "" to skip this check. (Not recommended.) + # The thin tools are available as part of the device-mapper-persistent-data + # package from https://github.com/jthornber/thin-provisioning-tools. + # + # thin_check_executable = "/usr/sbin/thin_check" + + # Array of string options passed with thin_check command. By default, + # option "-q" is for quiet output. + # With thin_check version 2.1 or newer you can add "--ignore-non-fatal-errors" + # to let it pass through ignorable errors and fix them later. + # With thin_check version 3.2 or newer you should add + # "--clear-needs-check-flag". + # + # thin_check_options = [ "-q", "--clear-needs-check-flag" ] + + # Full path of the utility called to repair a thin metadata device + # is in a state that allows it to be used. + # Each time a thin pool needs repair this utility is executed. + # See thin_check_executable how to obtain binaries. + # + # thin_repair_executable = "/usr/sbin/thin_repair" + + # Array of extra string options passed with thin_repair command. + # thin_repair_options = [ "" ] + + # Full path of the utility called to dump thin metadata content. + # See thin_check_executable how to obtain binaries. + # + # thin_dump_executable = "/usr/sbin/thin_dump" + + # If set, given features are not used by thin driver. + # This can be helpful not just for testing, but i.e. allows to avoid + # using problematic implementation of some thin feature. + # Features: + # block_size + # discards + # discards_non_power_2 + # external_origin + # metadata_resize + # external_origin_extend + # + # thin_disabled_features = [ "discards", "block_size" ] + + # Full path of the utility called to check that a cache metadata device + # is in a state that allows it to be used. + # Each time a cached LV needs to be used or after it is deactivated + # this utility is executed. The activation will only proceed if the utility + # has an exit status of 0. + # Set to "" to skip this check. (Not recommended.) + # The cache tools are available as part of the device-mapper-persistent-data + # package from https://github.com/jthornber/thin-provisioning-tools. + # + # cache_check_executable = "/usr/sbin/cache_check" + + # Array of string options passed with cache_check command. By default, + # option "-q" is for quiet output. + # + # cache_check_options = [ "-q" ] + + # Full path of the utility called to repair a cache metadata device. + # Each time a cache metadata needs repair this utility is executed. + # See cache_check_executable how to obtain binaries. + # + # cache_repair_executable = "/usr/sbin/cache_repair" + + # Array of extra string options passed with cache_repair command. + # cache_repair_options = [ "" ] + + # Full path of the utility called to dump cache metadata content. + # See cache_check_executable how to obtain binaries. + # + # cache_dump_executable = "/usr/sbin/cache_dump" +} + +activation { + # Set to 1 to perform internal checks on the operations issued to + # libdevmapper. Useful for debugging problems with activation. + # Some of the checks may be expensive, so it's best to use this + # only when there seems to be a problem. + checks = 0 + + # Set to 0 to disable udev synchronisation (if compiled into the binaries). + # Processes will not wait for notification from udev. + # They will continue irrespective of any possible udev processing + # in the background. You should only use this if udev is not running + # or has rules that ignore the devices LVM2 creates. + # The command line argument --nodevsync takes precedence over this setting. + # If set to 1 when udev is not running, and there are LVM2 processes + # waiting for udev, run 'dmsetup udevcomplete_all' manually to wake them up. + udev_sync = 1 + + # Set to 0 to disable the udev rules installed by LVM2 (if built with + # --enable-udev_rules). LVM2 will then manage the /dev nodes and symlinks + # for active logical volumes directly itself. + # N.B. Manual intervention may be required if this setting is changed + # while any logical volumes are active. + udev_rules = 1 + + # Set to 1 for LVM2 to verify operations performed by udev. This turns on + # additional checks (and if necessary, repairs) on entries in the device + # directory after udev has completed processing its events. + # Useful for diagnosing problems with LVM2/udev interactions. + verify_udev_operations = 0 + + # If set to 1 and if deactivation of an LV fails, perhaps because + # a process run from a quick udev rule temporarily opened the device, + # retry the operation for a few seconds before failing. + retry_deactivation = 1 + + # How to fill in missing stripes if activating an incomplete volume. + # Using "error" will make inaccessible parts of the device return + # I/O errors on access. You can instead use a device path, in which + # case, that device will be used to in place of missing stripes. + # But note that using anything other than "error" with mirrored + # or snapshotted volumes is likely to result in data corruption. + missing_stripe_filler = "error" + + # The linear target is an optimised version of the striped target + # that only handles a single stripe. Set this to 0 to disable this + # optimisation and always use the striped target. + use_linear_target = 1 + + # How much stack (in KB) to reserve for use while devices suspended + # Prior to version 2.02.89 this used to be set to 256KB + reserved_stack = 64 + + # How much memory (in KB) to reserve for use while devices suspended + reserved_memory = 8192 + + # Nice value used while devices suspended + process_priority = -18 + + # If volume_list is defined, each LV is only activated if there is a + # match against the list. + # + # "vgname" and "vgname/lvname" are matched exactly. + # "@tag" matches any tag set in the LV or VG. + # "@*" matches if any tag defined on the host is also set in the LV or VG + # + # If any host tags exist but volume_list is not defined, a default + # single-entry list containing "@*" is assumed. + # + # volume_list = [ "vg1", "vg2/lvol1", "@tag1", "@*" ] + + # If auto_activation_volume_list is defined, each LV that is to be + # activated with the autoactivation option (--activate ay/-a ay) is + # first checked against the list. There are two scenarios in which + # the autoactivation option is used: + # + # - automatic activation of volumes based on incoming PVs. If all the + # PVs making up a VG are present in the system, the autoactivation + # is triggered. This requires lvmetad (global/use_lvmetad=1) and udev + # to be running. In this case, "pvscan --cache -aay" is called + # automatically without any user intervention while processing + # udev events. Please, make sure you define auto_activation_volume_list + # properly so only the volumes you want and expect are autoactivated. + # + # - direct activation on command line with the autoactivation option. + # In this case, the user calls "vgchange --activate ay/-a ay" or + # "lvchange --activate ay/-a ay" directly. + # + # By default, the auto_activation_volume_list is not defined and all + # volumes will be activated either automatically or by using --activate ay/-a ay. + # + # N.B. The "activation/volume_list" is still honoured in all cases so even + # if the VG/LV passes the auto_activation_volume_list, it still needs to + # pass the volume_list for it to be activated in the end. + + # If auto_activation_volume_list is defined but empty, no volumes will be + # activated automatically and --activate ay/-a ay will do nothing. + # + # auto_activation_volume_list = [] + + # If auto_activation_volume_list is defined and it's not empty, only matching + # volumes will be activated either automatically or by using --activate ay/-a ay. + # + # "vgname" and "vgname/lvname" are matched exactly. + # "@tag" matches any tag set in the LV or VG. + # "@*" matches if any tag defined on the host is also set in the LV or VG + # + # auto_activation_volume_list = [ "vg1", "vg2/lvol1", "@tag1", "@*" ] + + # If read_only_volume_list is defined, each LV that is to be activated + # is checked against the list, and if it matches, it as activated + # in read-only mode. (This overrides '--permission rw' stored in the + # metadata.) + # + # "vgname" and "vgname/lvname" are matched exactly. + # "@tag" matches any tag set in the LV or VG. + # "@*" matches if any tag defined on the host is also set in the LV or VG + # + # read_only_volume_list = [ "vg1", "vg2/lvol1", "@tag1", "@*" ] + + # Each LV can have an 'activation skip' flag stored persistently against it. + # During activation, this flag is used to decide whether such an LV is skipped. + # The 'activation skip' flag can be set during LV creation and by default it + # is automatically set for thin snapshot LVs. The 'auto_set_activation_skip' + # enables or disables this automatic setting of the flag while LVs are created. + # auto_set_activation_skip = 1 + + # For RAID or 'mirror' segment types, 'raid_region_size' is the + # size (in KiB) of each: + # - synchronization operation when initializing + # - each copy operation when performing a 'pvmove' (using 'mirror' segtype) + # This setting has replaced 'mirror_region_size' since version 2.02.99 + raid_region_size = 512 + + # Setting to use when there is no readahead value stored in the metadata. + # + # "none" - Disable readahead. + # "auto" - Use default value chosen by kernel. + readahead = "auto" + + # 'raid_fault_policy' defines how a device failure in a RAID logical + # volume is handled. This includes logical volumes that have the following + # segment types: raid1, raid4, raid5*, and raid6*. + # + # In the event of a failure, the following policies will determine what + # actions are performed during the automated response to failures (when + # dmeventd is monitoring the RAID logical volume) and when 'lvconvert' is + # called manually with the options '--repair' and '--use-policies'. + # + # "warn" - Use the system log to warn the user that a device in the RAID + # logical volume has failed. It is left to the user to run + # 'lvconvert --repair' manually to remove or replace the failed + # device. As long as the number of failed devices does not + # exceed the redundancy of the logical volume (1 device for + # raid4/5, 2 for raid6, etc) the logical volume will remain + # usable. + # + # "allocate" - Attempt to use any extra physical volumes in the volume + # group as spares and replace faulty devices. + # + raid_fault_policy = "warn" + + # 'mirror_image_fault_policy' and 'mirror_log_fault_policy' define + # how a device failure affecting a mirror (of "mirror" segment type) is + # handled. A mirror is composed of mirror images (copies) and a log. + # A disk log ensures that a mirror does not need to be re-synced + # (all copies made the same) every time a machine reboots or crashes. + # + # In the event of a failure, the specified policy will be used to determine + # what happens. This applies to automatic repairs (when the mirror is being + # monitored by dmeventd) and to manual lvconvert --repair when + # --use-policies is given. + # + # "remove" - Simply remove the faulty device and run without it. If + # the log device fails, the mirror would convert to using + # an in-memory log. This means the mirror will not + # remember its sync status across crashes/reboots and + # the entire mirror will be re-synced. If a + # mirror image fails, the mirror will convert to a + # non-mirrored device if there is only one remaining good + # copy. + # + # "allocate" - Remove the faulty device and try to allocate space on + # a new device to be a replacement for the failed device. + # Using this policy for the log is fast and maintains the + # ability to remember sync state through crashes/reboots. + # Using this policy for a mirror device is slow, as it + # requires the mirror to resynchronize the devices, but it + # will preserve the mirror characteristic of the device. + # This policy acts like "remove" if no suitable device and + # space can be allocated for the replacement. + # + # "allocate_anywhere" - Not yet implemented. Useful to place the log device + # temporarily on same physical volume as one of the mirror + # images. This policy is not recommended for mirror devices + # since it would break the redundant nature of the mirror. This + # policy acts like "remove" if no suitable device and space can + # be allocated for the replacement. + + mirror_log_fault_policy = "allocate" + mirror_image_fault_policy = "remove" + + # 'snapshot_autoextend_threshold' and 'snapshot_autoextend_percent' define + # how to handle automatic snapshot extension. The former defines when the + # snapshot should be extended: when its space usage exceeds this many + # percent. The latter defines how much extra space should be allocated for + # the snapshot, in percent of its current size. + # + # For example, if you set snapshot_autoextend_threshold to 70 and + # snapshot_autoextend_percent to 20, whenever a snapshot exceeds 70% usage, + # it will be extended by another 20%. For a 1G snapshot, using up 700M will + # trigger a resize to 1.2G. When the usage exceeds 840M, the snapshot will + # be extended to 1.44G, and so on. + # + # Setting snapshot_autoextend_threshold to 100 disables automatic + # extensions. The minimum value is 50 (A setting below 50 will be treated + # as 50). + + snapshot_autoextend_threshold = 100 + snapshot_autoextend_percent = 20 + + # 'thin_pool_autoextend_threshold' and 'thin_pool_autoextend_percent' define + # how to handle automatic pool extension. The former defines when the + # pool should be extended: when its space usage exceeds this many + # percent. The latter defines how much extra space should be allocated for + # the pool, in percent of its current size. + # + # For example, if you set thin_pool_autoextend_threshold to 70 and + # thin_pool_autoextend_percent to 20, whenever a pool exceeds 70% usage, + # it will be extended by another 20%. For a 1G pool, using up 700M will + # trigger a resize to 1.2G. When the usage exceeds 840M, the pool will + # be extended to 1.44G, and so on. + # + # Setting thin_pool_autoextend_threshold to 100 disables automatic + # extensions. The minimum value is 50 (A setting below 50 will be treated + # as 50). + + thin_pool_autoextend_threshold = 100 + thin_pool_autoextend_percent = 20 + + # While activating devices, I/O to devices being (re)configured is + # suspended, and as a precaution against deadlocks, LVM2 needs to pin + # any memory it is using so it is not paged out. Groups of pages that + # are known not to be accessed during activation need not be pinned + # into memory. Each string listed in this setting is compared against + # each line in /proc/self/maps, and the pages corresponding to any + # lines that match are not pinned. On some systems locale-archive was + # found to make up over 80% of the memory used by the process. + # mlock_filter = [ "locale/locale-archive", "gconv/gconv-modules.cache" ] + + # Set to 1 to revert to the default behaviour prior to version 2.02.62 + # which used mlockall() to pin the whole process's memory while activating + # devices. + use_mlockall = 0 + + # Monitoring is enabled by default when activating logical volumes. + # Set to 0 to disable monitoring or use the --ignoremonitoring option. + monitoring = 1 + + # When pvmove or lvconvert must wait for the kernel to finish + # synchronising or merging data, they check and report progress + # at intervals of this number of seconds. The default is 15 seconds. + # If this is set to 0 and there is only one thing to wait for, there + # are no progress reports, but the process is awoken immediately the + # operation is complete. + polling_interval = 15 + + # 'activation_mode' determines how Logical Volumes are activated if + # any devices are missing. Possible settings are: + # + # "complete" - Only allow activation of an LV if all of the Physical + # Volumes it uses are present. Other PVs in the Volume + # Group may be missing. + # + # "degraded" - Like "complete", but additionally RAID Logical Volumes of + # segment type raid1, raid4, raid5, radid6 and raid10 will + # be activated if there is no data loss, i.e. they have + # sufficient redundancy to present the entire addressable + # range of the Logical Volume. + # + # "partial" - Allows the activation of any Logical Volume even if + # a missing or failed PV could cause data loss with a + # portion of the Logical Volume inaccessible. + # This setting should not normally be used, but may + # sometimes assist with data recovery. + # + # This setting was introduced in LVM version 2.02.108. It corresponds + # with the '--activationmode' option for lvchange and vgchange. + activation_mode = "degraded" +} + +# Report settings. +# +# report { + # Align columns on report output. + # aligned=1 + + # When buffered reporting is used, the report's content is appended + # incrementally to include each object being reported until the report + # is flushed to output which normally happens at the end of command + # execution. Otherwise, if buffering is not used, each object is + # reported as soon as its processing is finished. + # buffered=1 + + # Show headings for columns on report. + # headings=1 + + # A separator to use on report after each field. + # separator=" " + + # A separator to use for list items when reported. + # list_item_separator="," + + # Use a field name prefix for each field reported. + # prefixes=0 + + # Quote field values when using field name prefixes. + # quoted=1 + + # Output each column as a row. If set, this also implies report/prefixes=1. + # colums_as_rows=0 + + # Use binary values "0" or "1" instead of descriptive literal values for + # columns that have exactly two valid values to report (not counting the + # "unknown" value which denotes that the value could not be determined). + # + # binary_values_as_numeric = 0 + + # Comma separated list of columns to sort by when reporting 'lvm devtypes' command. + # See 'lvm devtypes -o help' for the list of possible fields. + # devtypes_sort="devtype_name" + + # Comma separated list of columns to report for 'lvm devtypes' command. + # See 'lvm devtypes -o help' for the list of possible fields. + # devtypes_cols="devtype_name,devtype_max_partitions,devtype_description" + + # Comma separated list of columns to report for 'lvm devtypes' command in verbose mode. + # See 'lvm devtypes -o help' for the list of possible fields. + # devtypes_cols_verbose="devtype_name,devtype_max_partitions,devtype_description" + + # Comma separated list of columns to sort by when reporting 'lvs' command. + # See 'lvs -o help' for the list of possible fields. + # lvs_sort="vg_name,lv_name" + + # Comma separated list of columns to report for 'lvs' command. + # See 'lvs -o help' for the list of possible fields. + # lvs_cols="lv_name,vg_name,lv_attr,lv_size,pool_lv,origin,data_percent,metadata_percent,move_pv,mirror_log,copy_percent,convert_lv" + + # Comma separated list of columns to report for 'lvs' command in verbose mode. + # See 'lvs -o help' for the list of possible fields. + # lvs_cols_verbose="lv_name,vg_name,seg_count,lv_attr,lv_size,lv_major,lv_minor,lv_kernel_major,lv_kernel_minor,pool_lv,origin,data_percent,metadata_percent,move_pv,copy_percent,mirror_log,convert + + # Comma separated list of columns to sort by when reporting 'vgs' command. + # See 'vgs -o help' for the list of possible fields. + # vgs_sort="vg_name" + + # Comma separated list of columns to report for 'vgs' command. + # See 'vgs -o help' for the list of possible fields. + # vgs_cols="vg_name,pv_count,lv_count,snap_count,vg_attr,vg_size,vg_free" + + # Comma separated list of columns to report for 'vgs' command in verbose mode. + # See 'vgs -o help' for the list of possible fields. + # vgs_cols_verbose="vg_name,vg_attr,vg_extent_size,pv_count,lv_count,snap_count,vg_size,vg_free,vg_uuid,vg_profile" + + # Comma separated list of columns to sort by when reporting 'pvs' command. + # See 'pvs -o help' for the list of possible fields. + # pvs_sort="pv_name" + + # Comma separated list of columns to report for 'pvs' command. + # See 'pvs -o help' for the list of possible fields. + # pvs_cols="pv_name,vg_name,pv_fmt,pv_attr,pv_size,pv_free" + + # Comma separated list of columns to report for 'pvs' command in verbose mode. + # See 'pvs -o help' for the list of possible fields. + # pvs_cols_verbose="pv_name,vg_name,pv_fmt,pv_attr,pv_size,pv_free,dev_size,pv_uuid" + + # Comma separated list of columns to sort by when reporting 'lvs --segments' command. + # See 'lvs --segments -o help' for the list of possible fields. + # segs_sort="vg_name,lv_name,seg_start" + + # Comma separated list of columns to report for 'lvs --segments' command. + # See 'lvs --segments -o help' for the list of possible fields. + # segs_cols="lv_name,vg_name,lv_attr,stripes,segtype,seg_size" + + # Comma separated list of columns to report for 'lvs --segments' command in verbose mode. + # See 'lvs --segments -o help' for the list of possible fields. + # segs_cols_verbose="lv_name,vg_name,lv_attr,seg_start,seg_size,stripes,segtype,stripesize,chunksize" + + # Comma separated list of columns to sort by when reporting 'pvs --segments' command. + # See 'pvs --segments -o help' for the list of possible fields. + # pvsegs_sort="pv_name,pvseg_start" + + # Comma separated list of columns to sort by when reporting 'pvs --segments' command. + # See 'pvs --segments -o help' for the list of possible fields. + # pvsegs_cols="pv_name,vg_name,pv_fmt,pv_attr,pv_size,pv_free,pvseg_start,pvseg_size" + + # Comma separated list of columns to sort by when reporting 'pvs --segments' command in verbose mode. + # See 'pvs --segments -o help' for the list of possible fields. + # pvsegs_cols_verbose="pv_name,vg_name,pv_fmt,pv_attr,pv_size,pv_free,pvseg_start,pvseg_size,lv_name,seg_start_pe,segtype,seg_pe_ranges" +#} + +#################### +# Advanced section # +#################### + +# Metadata settings +# +# metadata { + # Default number of copies of metadata to hold on each PV. 0, 1 or 2. + # You might want to override it from the command line with 0 + # when running pvcreate on new PVs which are to be added to large VGs. + + # pvmetadatacopies = 1 + + # Default number of copies of metadata to maintain for each VG. + # If set to a non-zero value, LVM automatically chooses which of + # the available metadata areas to use to achieve the requested + # number of copies of the VG metadata. If you set a value larger + # than the the total number of metadata areas available then + # metadata is stored in them all. + # The default value of 0 ("unmanaged") disables this automatic + # management and allows you to control which metadata areas + # are used at the individual PV level using 'pvchange + # --metadataignore y/n'. + + # vgmetadatacopies = 0 + + # Approximate default size of on-disk metadata areas in sectors. + # You should increase this if you have large volume groups or + # you want to retain a large on-disk history of your metadata changes. + + # pvmetadatasize = 255 + + # List of directories holding live copies of text format metadata. + # These directories must not be on logical volumes! + # It's possible to use LVM2 with a couple of directories here, + # preferably on different (non-LV) filesystems, and with no other + # on-disk metadata (pvmetadatacopies = 0). Or this can be in + # addition to on-disk metadata areas. + # The feature was originally added to simplify testing and is not + # supported under low memory situations - the machine could lock up. + # + # Never edit any files in these directories by hand unless you + # you are absolutely sure you know what you are doing! Use + # the supplied toolset to make changes (e.g. vgcfgrestore). + + # dirs = [ "/etc/lvm/metadata", "/mnt/disk2/lvm/metadata2" ] +#} + +# Event daemon +# +dmeventd { + # mirror_library is the library used when monitoring a mirror device. + # + # "libdevmapper-event-lvm2mirror.so" attempts to recover from + # failures. It removes failed devices from a volume group and + # reconfigures a mirror as necessary. If no mirror library is + # provided, mirrors are not monitored through dmeventd. + + mirror_library = "libdevmapper-event-lvm2mirror.so" + + # snapshot_library is the library used when monitoring a snapshot device. + # + # "libdevmapper-event-lvm2snapshot.so" monitors the filling of + # snapshots and emits a warning through syslog when the use of + # the snapshot exceeds 80%. The warning is repeated when 85%, 90% and + # 95% of the snapshot is filled. + + snapshot_library = "libdevmapper-event-lvm2snapshot.so" + + # thin_library is the library used when monitoring a thin device. + # + # "libdevmapper-event-lvm2thin.so" monitors the filling of + # pool and emits a warning through syslog when the use of + # the pool exceeds 80%. The warning is repeated when 85%, 90% and + # 95% of the pool is filled. + + thin_library = "libdevmapper-event-lvm2thin.so" + + # Full path of the dmeventd binary. + # + # executable = "/sbin/dmeventd" +} diff --git a/machine-id b/machine-id new file mode 100644 index 0000000..0e84fd2 --- /dev/null +++ b/machine-id @@ -0,0 +1 @@ +c31b91d5b725472fb853d76732951b2e diff --git a/magic b/magic new file mode 100644 index 0000000..283a863 --- /dev/null +++ b/magic @@ -0,0 +1,3 @@ +# Magic local data for file(1) command. +# Insert here your local magic data. Format is described in magic(5). + diff --git a/magic.mime b/magic.mime new file mode 100644 index 0000000..283a863 --- /dev/null +++ b/magic.mime @@ -0,0 +1,3 @@ +# Magic local data for file(1) command. +# Insert here your local magic data. Format is described in magic(5). + diff --git a/mailcap b/mailcap new file mode 100644 index 0000000..86c699f --- /dev/null +++ b/mailcap @@ -0,0 +1,48 @@ +############################################################################### +# +# MIME media types and programs that process those types +# +# Much of this file is generated automatically by the program "update-mime". +# Please see the "update-mime" man page for more information. +# +# Users can add their own rules if they wish by creating a ".mailcap" +# file in their home directory. Entries included there will take +# precedence over those listed here. +# +############################################################################### + + +############################################################################### +# +# User section follows: Any entries included in this section will take +# precedence over those created by "update-mime". DO NOT CHANGE the +# "User Section Begins" and "User Section Ends" lines, or anything outside +# of this section! +# + +# ----- User Section Begins ----- # +# ----- User Section Ends ----- # + +############################################################################### + +text/plain; less '%s'; needsterminal +application/x-troff-man; /usr/bin/man -X100 -l '%s'; test=test -n "$DISPLAY" -a -e /usr/bin/gxditview; description=Man page +text/troff; /usr/bin/man -X100 -l '%s'; test=test -n "$DISPLAY" -a -e /usr/bin/gxditview; description=Man page +application/x-troff-man; /usr/bin/man -l '%s'; needsterminal; description=Man page +text/troff; /usr/bin/man -l '%s'; needsterminal; description=Man page +text/html; /usr/bin/sensible-browser %s; description=HTML Text; nametemplate=%s.html +application/x-troff-man; /usr/bin/nroff -mandoc -Tutf8; copiousoutput; print=/usr/bin/nroff -mandoc -Tutf8 | print text/plain:- +text/plain; more %s; needsterminal +text/plain; vim %s; needsterminal +text/plain; view %s; edit=vim %s; compose=vim %s; test=test -x /usr/bin/vim; needsterminal +text/plain; view %s; edit=vi %s; compose=vi %s; needsterminal +application/x-troff-man; /usr/bin/man -Tascii -l '%s' | col -b; copiousoutput; description=Man page +text/troff; /usr/bin/man -Tascii -l '%s' | col -b; copiousoutput; description=Man page +text/*; less '%s'; needsterminal +text/*; view %s; edit=vim %s; compose=vim %s; test=test -x /usr/bin/vim; needsterminal +application/x-tar; /bin/tar tvf '%s'; print=/bin/tar tvf - | print text/plain:-; copiousoutput +application/x-gtar; /bin/tar tvf '%s'; print=/bin/tar tvf - | print text/plain:-; copiousoutput +application/x-ustar; /bin/tar tvf '%s'; print=/bin/tar tvf - | print text/plain:-; copiousoutput +text/*; more %s; needsterminal +text/*; view %s; edit=vi %s; compose=vi %s; needsterminal +application/vnd.debian.binary-package; /usr/lib/mime/debian-view %s; needsterminal; description=Debian GNU/Linux Package; nametemplate=%s.deb diff --git a/mailcap.order b/mailcap.order new file mode 100644 index 0000000..7f38c23 --- /dev/null +++ b/mailcap.order @@ -0,0 +1,10 @@ +############################################################################### +# +# Mailcap.order: This file allows a system-wide override of MIME program +# preferences. See the mailcap.order(5) man page for more information. +# +# After modifying this file, be sure to run /usr/sbin/update-mime (as root) +# to propagate the changes into the /etc/mailcap file. +# +################################################################################ + diff --git a/mailname b/mailname new file mode 100644 index 0000000..5e3b821 --- /dev/null +++ b/mailname @@ -0,0 +1 @@ +ns3.uhu-banane.de diff --git a/manpath.config b/manpath.config new file mode 100644 index 0000000..3b5b54f --- /dev/null +++ b/manpath.config @@ -0,0 +1,131 @@ +# manpath.config +# +# This file is used by the man-db package to configure the man and cat paths. +# It is also used to provide a manpath for those without one by examining +# their PATH environment variable. For details see the manpath(5) man page. +# +# Lines beginning with `#' are comments and are ignored. Any combination of +# tabs or spaces may be used as `whitespace' separators. +# +# There are three mappings allowed in this file: +# -------------------------------------------------------- +# MANDATORY_MANPATH manpath_element +# MANPATH_MAP path_element manpath_element +# MANDB_MAP global_manpath [relative_catpath] +#--------------------------------------------------------- +# every automatically generated MANPATH includes these fields +# +#MANDATORY_MANPATH /usr/src/pvm3/man +# +MANDATORY_MANPATH /usr/man +MANDATORY_MANPATH /usr/share/man +MANDATORY_MANPATH /usr/local/share/man +#--------------------------------------------------------- +# set up PATH to MANPATH mapping +# ie. what man tree holds man pages for what binary directory. +# +# *PATH* -> *MANPATH* +# +MANPATH_MAP /bin /usr/share/man +MANPATH_MAP /usr/bin /usr/share/man +MANPATH_MAP /sbin /usr/share/man +MANPATH_MAP /usr/sbin /usr/share/man +MANPATH_MAP /usr/local/bin /usr/local/man +MANPATH_MAP /usr/local/bin /usr/local/share/man +MANPATH_MAP /usr/local/sbin /usr/local/man +MANPATH_MAP /usr/local/sbin /usr/local/share/man +MANPATH_MAP /usr/X11R6/bin /usr/X11R6/man +MANPATH_MAP /usr/bin/X11 /usr/X11R6/man +MANPATH_MAP /usr/games /usr/share/man +MANPATH_MAP /opt/bin /opt/man +MANPATH_MAP /opt/sbin /opt/man +#--------------------------------------------------------- +# For a manpath element to be treated as a system manpath (as most of those +# above should normally be), it must be mentioned below. Each line may have +# an optional extra string indicating the catpath associated with the +# manpath. If no catpath string is used, the catpath will default to the +# given manpath. +# +# You *must* provide all system manpaths, including manpaths for alternate +# operating systems, locale specific manpaths, and combinations of both, if +# they exist, otherwise the permissions of the user running man/mandb will +# be used to manipulate the manual pages. Also, mandb will not initialise +# the database cache for any manpaths not mentioned below unless explicitly +# requested to do so. +# +# In a per-user configuration file, this directive only controls the +# location of catpaths and the creation of database caches; it has no effect +# on privileges. +# +# Any manpaths that are subdirectories of other manpaths must be mentioned +# *before* the containing manpath. E.g. /usr/man/preformat must be listed +# before /usr/man. +# +# *MANPATH* -> *CATPATH* +# +MANDB_MAP /usr/man /var/cache/man/fsstnd +MANDB_MAP /usr/share/man /var/cache/man +MANDB_MAP /usr/local/man /var/cache/man/oldlocal +MANDB_MAP /usr/local/share/man /var/cache/man/local +MANDB_MAP /usr/X11R6/man /var/cache/man/X11R6 +MANDB_MAP /opt/man /var/cache/man/opt +# +#--------------------------------------------------------- +# Program definitions. These are commented out by default as the value +# of the definition is already the default. To change: uncomment a +# definition and modify it. +# +#DEFINE pager pager -s +#DEFINE cat cat +#DEFINE tr tr '\255\267\264\327' '\055\157\047\170' +#DEFINE grep grep +#DEFINE troff groff -mandoc +#DEFINE nroff nroff -mandoc +#DEFINE eqn eqn +#DEFINE neqn neqn +#DEFINE tbl tbl +#DEFINE col col +#DEFINE vgrind vgrind +#DEFINE refer refer +#DEFINE grap grap +#DEFINE pic pic -S +# +#DEFINE compressor gzip -c7 +#--------------------------------------------------------- +# Misc definitions: same as program definitions above. +# +#DEFINE whatis_grep_flags -i +#DEFINE apropos_grep_flags -iEw +#DEFINE apropos_regex_grep_flags -iE +#--------------------------------------------------------- +# Section names. Manual sections will be searched in the order listed here; +# the default is 1, n, l, 8, 3, 0, 2, 5, 4, 9, 6, 7. Multiple SECTION +# directives may be given for clarity, and will be concatenated together in +# the expected way. +# If a particular extension is not in this list (say, 1mh), it will be +# displayed with the rest of the section it belongs to. The effect of this +# is that you only need to explicitly list extensions if you want to force a +# particular order. Sections with extensions should usually be adjacent to +# their main section (e.g. "1 1mh 8 ..."). +# +SECTION 1 n l 8 3 2 3posix 3pm 3perl 5 4 9 6 7 +# +#--------------------------------------------------------- +# Range of terminal widths permitted when displaying cat pages. If the +# terminal falls outside this range, cat pages will not be created (if +# missing) or displayed. +# +#MINCATWIDTH 80 +#MAXCATWIDTH 80 +# +# If CATWIDTH is set to a non-zero number, cat pages will always be +# formatted for a terminal of the given width, regardless of the width of +# the terminal actually being used. This should generally be within the +# range set by MINCATWIDTH and MAXCATWIDTH. +# +#CATWIDTH 0 +# +#--------------------------------------------------------- +# Flags. +# NOCACHE keeps man from creating cat pages. +#NOCACHE diff --git a/mime.types b/mime.types new file mode 100644 index 0000000..1cf184b --- /dev/null +++ b/mime.types @@ -0,0 +1,833 @@ +############################################################################### +# +# MIME media types and the extensions that represent them. +# +# The format of this file is a media type on the left and zero or more +# filename extensions on the right. Programs using this file will map +# files ending with those extensions to the associated type. +# +# This file is part of the "mime-support" package. Please report a bug using +# the "reportbug" command of the "reportbug" package if you would like new +# types or extensions to be added. +# +# The reason that all types are managed by the mime-support package instead +# allowing individual packages to install types in much the same way as they +# add entries in to the mailcap file is so these types can be referenced by +# other programs (such as a web server) even if the specific support package +# for that type is not installed. +# +# Users can add their own types if they wish by creating a ".mime.types" +# file in their home directory. Definitions included there will take +# precedence over those listed here. +# +############################################################################### + + +application/activemessage +application/andrew-inset ez +application/annodex anx +application/applefile +application/atom+xml atom +application/atomcat+xml atomcat +application/atomicmail +application/atomserv+xml atomsrv +application/batch-SMTP +application/bbolin lin +application/beep+xml +application/cals-1840 +application/commonground +application/cu-seeme cu +application/cybercash +application/davmount+xml davmount +application/dca-rft +application/dec-dx +application/dicom dcm +application/docbook+xml +application/dsptype tsp +application/dvcs +application/ecmascript es +application/edi-consent +application/edi-x12 +application/edifact +application/eshop +application/font-sfnt otf ttf +application/font-tdpfr pfr +application/font-woff woff +application/futuresplash spl +application/ghostview +application/gzip gz +application/hta hta +application/http +application/hyperstudio +application/iges +application/index +application/index.cmd +application/index.obj +application/index.response +application/index.vnd +application/iotp +application/ipp +application/isup +application/java-archive jar +application/java-serialized-object ser +application/java-vm class +application/javascript js +application/json json +application/m3g m3g +application/mac-binhex40 hqx +application/mac-compactpro cpt +application/macwriteii +application/marc +application/mathematica nb nbp +application/mbox mbox +application/ms-tnef +application/msaccess mdb +application/msword doc dot +application/mxf mxf +application/news-message-id +application/news-transmission +application/ocsp-request +application/ocsp-response +application/octet-stream bin +application/oda oda +application/oebps-package+xml opf +application/ogg ogx +application/onenote one onetoc2 onetmp onepkg +application/parityfec +application/pdf pdf +application/pgp-encrypted pgp +application/pgp-keys key +application/pgp-signature sig +application/pics-rules prf +application/pkcs10 +application/pkcs7-mime +application/pkcs7-signature +application/pkix-cert +application/pkix-crl +application/pkixcmp +application/postscript ps ai eps epsi epsf eps2 eps3 +application/prs.alvestrand.titrax-sheet +application/prs.cww +application/prs.nprend +application/qsig +application/rar rar +application/rdf+xml rdf +application/remote-printing +application/riscos +application/rtf rtf +application/sdp +application/set-payment +application/set-payment-initiation +application/set-registration +application/set-registration-initiation +application/sgml +application/sgml-open-catalog +application/sieve +application/sla stl +application/slate +application/smil+xml smi smil +application/timestamp-query +application/timestamp-reply +application/vemmi +application/whoispp-query +application/whoispp-response +application/wita +application/x400-bp +application/xhtml+xml xhtml xht +application/xml xml xsd +application/xml-dtd +application/xml-external-parsed-entity +application/xslt+xml xsl xslt +application/xspf+xml xspf +application/zip zip +application/vnd.3M.Post-it-Notes +application/vnd.accpac.simply.aso +application/vnd.accpac.simply.imp +application/vnd.acucobol +application/vnd.aether.imp +application/vnd.android.package-archive apk +application/vnd.anser-web-certificate-issue-initiation +application/vnd.anser-web-funds-transfer-initiation +application/vnd.audiograph +application/vnd.bmi +application/vnd.businessobjects +application/vnd.canon-cpdl +application/vnd.canon-lips +application/vnd.cinderella cdy +application/vnd.claymore +application/vnd.commerce-battelle +application/vnd.commonspace +application/vnd.comsocaller +application/vnd.contact.cmsg +application/vnd.cosmocaller +application/vnd.ctc-posml +application/vnd.cups-postscript +application/vnd.cups-raster +application/vnd.cups-raw +application/vnd.cybank +application/vnd.debian.binary-package deb ddeb udeb +application/vnd.dna +application/vnd.dpgraph +application/vnd.dxr +application/vnd.ecdis-update +application/vnd.ecowin.chart +application/vnd.ecowin.filerequest +application/vnd.ecowin.fileupdate +application/vnd.ecowin.series +application/vnd.ecowin.seriesrequest +application/vnd.ecowin.seriesupdate +application/vnd.enliven +application/vnd.epson.esf +application/vnd.epson.msf +application/vnd.epson.quickanime +application/vnd.epson.salt +application/vnd.epson.ssf +application/vnd.ericsson.quickcall +application/vnd.eudora.data +application/vnd.fdf +application/vnd.ffsns +application/vnd.flographit +application/vnd.font-fontforge-sfd sfd +application/vnd.framemaker +application/vnd.fsc.weblaunch +application/vnd.fujitsu.oasys +application/vnd.fujitsu.oasys2 +application/vnd.fujitsu.oasys3 +application/vnd.fujitsu.oasysgp +application/vnd.fujitsu.oasysprs +application/vnd.fujixerox.ddd +application/vnd.fujixerox.docuworks +application/vnd.fujixerox.docuworks.binder +application/vnd.fut-misnet +application/vnd.google-earth.kml+xml kml +application/vnd.google-earth.kmz kmz +application/vnd.grafeq +application/vnd.groove-account +application/vnd.groove-identity-message +application/vnd.groove-injector +application/vnd.groove-tool-message +application/vnd.groove-tool-template +application/vnd.groove-vcard +application/vnd.hhe.lesson-player +application/vnd.hp-HPGL +application/vnd.hp-PCL +application/vnd.hp-PCLXL +application/vnd.hp-hpid +application/vnd.hp-hps +application/vnd.httphone +application/vnd.hzn-3d-crossword +application/vnd.ibm.MiniPay +application/vnd.ibm.afplinedata +application/vnd.ibm.modcap +application/vnd.informix-visionary +application/vnd.intercon.formnet +application/vnd.intertrust.digibox +application/vnd.intertrust.nncp +application/vnd.intu.qbo +application/vnd.intu.qfx +application/vnd.irepository.package+xml +application/vnd.is-xpr +application/vnd.japannet-directory-service +application/vnd.japannet-jpnstore-wakeup +application/vnd.japannet-payment-wakeup +application/vnd.japannet-registration +application/vnd.japannet-registration-wakeup +application/vnd.japannet-setstore-wakeup +application/vnd.japannet-verification +application/vnd.japannet-verification-wakeup +application/vnd.koan +application/vnd.lotus-1-2-3 +application/vnd.lotus-approach +application/vnd.lotus-freelance +application/vnd.lotus-notes +application/vnd.lotus-organizer +application/vnd.lotus-screencam +application/vnd.lotus-wordpro +application/vnd.mcd +application/vnd.mediastation.cdkey +application/vnd.meridian-slingshot +application/vnd.mif +application/vnd.minisoft-hp3000-save +application/vnd.mitsubishi.misty-guard.trustweb +application/vnd.mobius.daf +application/vnd.mobius.dis +application/vnd.mobius.msl +application/vnd.mobius.plc +application/vnd.mobius.txf +application/vnd.motorola.flexsuite +application/vnd.motorola.flexsuite.adsi +application/vnd.motorola.flexsuite.fis +application/vnd.motorola.flexsuite.gotap +application/vnd.motorola.flexsuite.kmr +application/vnd.motorola.flexsuite.ttc +application/vnd.motorola.flexsuite.wem +application/vnd.mozilla.xul+xml xul +application/vnd.ms-artgalry +application/vnd.ms-asf +application/vnd.ms-excel xls xlb xlt +application/vnd.ms-excel.addin.macroEnabled.12 xlam +application/vnd.ms-excel.sheet.binary.macroEnabled.12 xlsb +application/vnd.ms-excel.sheet.macroEnabled.12 xlsm +application/vnd.ms-excel.template.macroEnabled.12 xltm +application/vnd.ms-fontobject eot +application/vnd.ms-lrm +application/vnd.ms-officetheme thmx +application/vnd.ms-pki.seccat cat +#application/vnd.ms-pki.stl stl +application/vnd.ms-powerpoint ppt pps +application/vnd.ms-powerpoint.addin.macroEnabled.12 ppam +application/vnd.ms-powerpoint.presentation.macroEnabled.12 pptm +application/vnd.ms-powerpoint.slide.macroEnabled.12 sldm +application/vnd.ms-powerpoint.slideshow.macroEnabled.12 ppsm +application/vnd.ms-powerpoint.template.macroEnabled.12 potm +application/vnd.ms-project +application/vnd.ms-tnef +application/vnd.ms-word.document.macroEnabled.12 docm +application/vnd.ms-word.template.macroEnabled.12 dotm +application/vnd.ms-works +application/vnd.mseq +application/vnd.msign +application/vnd.music-niff +application/vnd.musician +application/vnd.netfpx +application/vnd.noblenet-directory +application/vnd.noblenet-sealer +application/vnd.noblenet-web +application/vnd.novadigm.EDM +application/vnd.novadigm.EDX +application/vnd.novadigm.EXT +application/vnd.oasis.opendocument.chart odc +application/vnd.oasis.opendocument.database odb +application/vnd.oasis.opendocument.formula odf +application/vnd.oasis.opendocument.graphics odg +application/vnd.oasis.opendocument.graphics-template otg +application/vnd.oasis.opendocument.image odi +application/vnd.oasis.opendocument.presentation odp +application/vnd.oasis.opendocument.presentation-template otp +application/vnd.oasis.opendocument.spreadsheet ods +application/vnd.oasis.opendocument.spreadsheet-template ots +application/vnd.oasis.opendocument.text odt +application/vnd.oasis.opendocument.text-master odm +application/vnd.oasis.opendocument.text-template ott +application/vnd.oasis.opendocument.text-web oth +application/vnd.openxmlformats-officedocument.presentationml.presentation pptx +application/vnd.openxmlformats-officedocument.presentationml.slide sldx +application/vnd.openxmlformats-officedocument.presentationml.slideshow ppsx +application/vnd.openxmlformats-officedocument.presentationml.template potx +application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx +application/vnd.openxmlformats-officedocument.spreadsheetml.template xltx +application/vnd.openxmlformats-officedocument.wordprocessingml.document docx +application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx +application/vnd.osa.netdeploy +application/vnd.palm +application/vnd.pg.format +application/vnd.pg.osasli +application/vnd.powerbuilder6 +application/vnd.powerbuilder6-s +application/vnd.powerbuilder7 +application/vnd.powerbuilder7-s +application/vnd.powerbuilder75 +application/vnd.powerbuilder75-s +application/vnd.previewsystems.box +application/vnd.publishare-delta-tree +application/vnd.pvi.ptid1 +application/vnd.pwg-xhtml-print+xml +application/vnd.rapid +application/vnd.rim.cod cod +application/vnd.s3sms +application/vnd.seemail +application/vnd.shana.informed.formdata +application/vnd.shana.informed.formtemplate +application/vnd.shana.informed.interchange +application/vnd.shana.informed.package +application/vnd.smaf mmf +application/vnd.sss-cod +application/vnd.sss-dtf +application/vnd.sss-ntf +application/vnd.stardivision.calc sdc +application/vnd.stardivision.chart sds +application/vnd.stardivision.draw sda +application/vnd.stardivision.impress sdd +application/vnd.stardivision.math sdf +application/vnd.stardivision.writer sdw +application/vnd.stardivision.writer-global sgl +application/vnd.street-stream +application/vnd.sun.xml.calc sxc +application/vnd.sun.xml.calc.template stc +application/vnd.sun.xml.draw sxd +application/vnd.sun.xml.draw.template std +application/vnd.sun.xml.impress sxi +application/vnd.sun.xml.impress.template sti +application/vnd.sun.xml.math sxm +application/vnd.sun.xml.writer sxw +application/vnd.sun.xml.writer.global sxg +application/vnd.sun.xml.writer.template stw +application/vnd.svd +application/vnd.swiftview-ics +application/vnd.symbian.install sis +application/vnd.tcpdump.pcap cap pcap +application/vnd.triscape.mxs +application/vnd.trueapp +application/vnd.truedoc +application/vnd.tve-trigger +application/vnd.ufdl +application/vnd.uplanet.alert +application/vnd.uplanet.alert-wbxml +application/vnd.uplanet.bearer-choice +application/vnd.uplanet.bearer-choice-wbxml +application/vnd.uplanet.cacheop +application/vnd.uplanet.cacheop-wbxml +application/vnd.uplanet.channel +application/vnd.uplanet.channel-wbxml +application/vnd.uplanet.list +application/vnd.uplanet.list-wbxml +application/vnd.uplanet.listcmd +application/vnd.uplanet.listcmd-wbxml +application/vnd.uplanet.signal +application/vnd.vcx +application/vnd.vectorworks +application/vnd.vidsoft.vidconference +application/vnd.visio vsd vst vsw vss +application/vnd.vividence.scriptfile +application/vnd.wap.sic +application/vnd.wap.slc +application/vnd.wap.wbxml wbxml +application/vnd.wap.wmlc wmlc +application/vnd.wap.wmlscriptc wmlsc +application/vnd.webturbo +application/vnd.wordperfect wpd +application/vnd.wordperfect5.1 wp5 +application/vnd.wrq-hp3000-labelled +application/vnd.wt.stf +application/vnd.xara +application/vnd.xfdl +application/vnd.yellowriver-custom-menu +application/zlib +application/x-123 wk +application/x-7z-compressed 7z +application/x-abiword abw +application/x-apple-diskimage dmg +application/x-bcpio bcpio +application/x-bittorrent torrent +application/x-cab cab +application/x-cbr cbr +application/x-cbz cbz +application/x-cdf cdf cda +application/x-cdlink vcd +application/x-chess-pgn pgn +application/x-comsol mph +application/x-core +application/x-cpio cpio +application/x-csh csh +application/x-debian-package deb udeb +application/x-director dcr dir dxr +application/x-dms dms +application/x-doom wad +application/x-dvi dvi +application/x-executable +application/x-font pfa pfb gsf +application/x-font-pcf pcf pcf.Z +application/x-freemind mm +application/x-futuresplash spl +application/x-ganttproject gan +application/x-gnumeric gnumeric +application/x-go-sgf sgf +application/x-graphing-calculator gcf +application/x-gtar gtar +application/x-gtar-compressed tgz taz +application/x-hdf hdf +#application/x-httpd-eruby rhtml +#application/x-httpd-php phtml pht php +#application/x-httpd-php-source phps +#application/x-httpd-php3 php3 +#application/x-httpd-php3-preprocessed php3p +#application/x-httpd-php4 php4 +#application/x-httpd-php5 php5 +application/x-hwp hwp +application/x-ica ica +application/x-info info +application/x-internet-signup ins isp +application/x-iphone iii +application/x-iso9660-image iso +application/x-jam jam +application/x-java-applet +application/x-java-bean +application/x-java-jnlp-file jnlp +application/x-jmol jmz +application/x-kchart chrt +application/x-kdelnk +application/x-killustrator kil +application/x-koan skp skd skt skm +application/x-kpresenter kpr kpt +application/x-kspread ksp +application/x-kword kwd kwt +application/x-latex latex +application/x-lha lha +application/x-lyx lyx +application/x-lzh lzh +application/x-lzx lzx +application/x-maker frm maker frame fm fb book fbdoc +application/x-mif mif +application/x-mpegURL m3u8 +application/x-ms-wmd wmd +application/x-ms-wmz wmz +application/x-msdos-program com exe bat dll +application/x-msi msi +application/x-netcdf nc +application/x-ns-proxy-autoconfig pac +application/x-nwc nwc +application/x-object o +application/x-oz-application oza +application/x-pkcs7-certreqresp p7r +application/x-pkcs7-crl crl +application/x-python-code pyc pyo +application/x-qgis qgs shp shx +application/x-quicktimeplayer qtl +application/x-rdp rdp +application/x-redhat-package-manager rpm +application/x-rss+xml rss +application/x-ruby rb +application/x-rx +application/x-scilab sci sce +application/x-scilab-xcos xcos +application/x-sh sh +application/x-shar shar +application/x-shellscript +application/x-shockwave-flash swf swfl +application/x-silverlight scr +application/x-sql sql +application/x-stuffit sit sitx +application/x-sv4cpio sv4cpio +application/x-sv4crc sv4crc +application/x-tar tar +application/x-tcl tcl +application/x-tex-gf gf +application/x-tex-pk pk +application/x-texinfo texinfo texi +application/x-trash ~ % bak old sik +application/x-troff t tr roff +application/x-troff-man man +application/x-troff-me me +application/x-troff-ms ms +application/x-ustar ustar +application/x-videolan +application/x-wais-source src +application/x-wingz wz +application/x-x509-ca-cert crt +application/x-xcf xcf +application/x-xfig fig +application/x-xpinstall xpi +application/x-xz xz + +audio/32kadpcm +audio/3gpp +audio/amr amr +audio/amr-wb awb +audio/annodex axa +audio/basic au snd +audio/csound csd orc sco +audio/flac flac +audio/g.722.1 +audio/l16 +audio/midi mid midi kar +audio/mp4a-latm +audio/mpa-robust +audio/mpeg mpga mpega mp2 mp3 m4a +audio/mpegurl m3u +audio/ogg oga ogg opus spx +audio/parityfec +audio/prs.sid sid +audio/telephone-event +audio/tone +audio/vnd.cisco.nse +audio/vnd.cns.anp1 +audio/vnd.cns.inf1 +audio/vnd.digital-winds +audio/vnd.everad.plj +audio/vnd.lucent.voice +audio/vnd.nortel.vbk +audio/vnd.nuera.ecelp4800 +audio/vnd.nuera.ecelp7470 +audio/vnd.nuera.ecelp9600 +audio/vnd.octel.sbc +audio/vnd.qcelp +audio/vnd.rhetorex.32kadpcm +audio/vnd.vmx.cvsd +audio/x-aiff aif aiff aifc +audio/x-gsm gsm +audio/x-mpegurl m3u +audio/x-ms-wma wma +audio/x-ms-wax wax +audio/x-pn-realaudio-plugin +audio/x-pn-realaudio ra rm ram +audio/x-realaudio ra +audio/x-scpls pls +audio/x-sd2 sd2 +audio/x-wav wav + +chemical/x-alchemy alc +chemical/x-cache cac cache +chemical/x-cache-csf csf +chemical/x-cactvs-binary cbin cascii ctab +chemical/x-cdx cdx +chemical/x-cerius cer +chemical/x-chem3d c3d +chemical/x-chemdraw chm +chemical/x-cif cif +chemical/x-cmdf cmdf +chemical/x-cml cml +chemical/x-compass cpa +chemical/x-crossfire bsd +chemical/x-csml csml csm +chemical/x-ctx ctx +chemical/x-cxf cxf cef +#chemical/x-daylight-smiles smi +chemical/x-embl-dl-nucleotide emb embl +chemical/x-galactic-spc spc +chemical/x-gamess-input inp gam gamin +chemical/x-gaussian-checkpoint fch fchk +chemical/x-gaussian-cube cub +chemical/x-gaussian-input gau gjc gjf +chemical/x-gaussian-log gal +chemical/x-gcg8-sequence gcg +chemical/x-genbank gen +chemical/x-hin hin +chemical/x-isostar istr ist +chemical/x-jcamp-dx jdx dx +chemical/x-kinemage kin +chemical/x-macmolecule mcm +chemical/x-macromodel-input mmd mmod +chemical/x-mdl-molfile mol +chemical/x-mdl-rdfile rd +chemical/x-mdl-rxnfile rxn +chemical/x-mdl-sdfile sd sdf +chemical/x-mdl-tgf tgf +#chemical/x-mif mif +chemical/x-mmcif mcif +chemical/x-mol2 mol2 +chemical/x-molconn-Z b +chemical/x-mopac-graph gpt +chemical/x-mopac-input mop mopcrt mpc zmt +chemical/x-mopac-out moo +chemical/x-mopac-vib mvb +chemical/x-ncbi-asn1 asn +chemical/x-ncbi-asn1-ascii prt ent +chemical/x-ncbi-asn1-binary val aso +chemical/x-ncbi-asn1-spec asn +chemical/x-pdb pdb ent +chemical/x-rosdal ros +chemical/x-swissprot sw +chemical/x-vamas-iso14976 vms +chemical/x-vmd vmd +chemical/x-xtel xtel +chemical/x-xyz xyz + +image/cgm +image/g3fax +image/gif gif +image/ief ief +image/jp2 jp2 jpg2 +image/jpeg jpeg jpg jpe +image/jpm jpm +image/jpx jpx jpf +image/naplps +image/pcx pcx +image/png png +image/prs.btif +image/prs.pti +image/svg+xml svg svgz +image/tiff tiff tif +image/vnd.cns.inf2 +image/vnd.djvu djvu djv +image/vnd.dwg +image/vnd.dxf +image/vnd.fastbidsheet +image/vnd.fpx +image/vnd.fst +image/vnd.fujixerox.edmics-mmr +image/vnd.fujixerox.edmics-rlc +image/vnd.microsoft.icon ico +image/vnd.mix +image/vnd.net-fpx +image/vnd.svf +image/vnd.wap.wbmp wbmp +image/vnd.xiff +image/x-canon-cr2 cr2 +image/x-canon-crw crw +image/x-cmu-raster ras +image/x-coreldraw cdr +image/x-coreldrawpattern pat +image/x-coreldrawtemplate cdt +image/x-corelphotopaint cpt +image/x-epson-erf erf +image/x-icon +image/x-jg art +image/x-jng jng +image/x-ms-bmp bmp +image/x-nikon-nef nef +image/x-olympus-orf orf +image/x-photoshop psd +image/x-portable-anymap pnm +image/x-portable-bitmap pbm +image/x-portable-graymap pgm +image/x-portable-pixmap ppm +image/x-rgb rgb +image/x-xbitmap xbm +image/x-xpixmap xpm +image/x-xwindowdump xwd + +inode/chardevice +inode/blockdevice +inode/directory-locked +inode/directory +inode/fifo +inode/socket + +message/delivery-status +message/disposition-notification +message/external-body +message/http +message/s-http +message/news +message/partial +message/rfc822 eml + +model/iges igs iges +model/mesh msh mesh silo +model/vnd.dwf +model/vnd.flatland.3dml +model/vnd.gdl +model/vnd.gs-gdl +model/vnd.gtw +model/vnd.mts +model/vnd.vtu +model/vrml wrl vrml +model/x3d+vrml x3dv +model/x3d+xml x3d +model/x3d+binary x3db + +multipart/alternative +multipart/appledouble +multipart/byteranges +multipart/digest +multipart/encrypted +multipart/form-data +multipart/header-set +multipart/mixed +multipart/parallel +multipart/related +multipart/report +multipart/signed +multipart/voice-message + +text/cache-manifest appcache +text/calendar ics icz +text/css css +text/csv csv +text/directory +text/english +text/enriched +text/h323 323 +text/html html htm shtml +text/iuls uls +text/mathml mml +text/parityfec +text/plain asc txt text pot brf srt +text/prs.lines.tag +text/rfc822-headers +text/richtext rtx +text/rtf +text/scriptlet sct wsc +text/t140 +text/texmacs tm +text/tab-separated-values tsv +text/turtle ttl +text/uri-list +text/vcard vcf vcard +text/vnd.abc +text/vnd.curl +text/vnd.debian.copyright +text/vnd.DMClientScript +text/vnd.flatland.3dml +text/vnd.fly +text/vnd.fmi.flexstor +text/vnd.in3d.3dml +text/vnd.in3d.spot +text/vnd.IPTC.NewsML +text/vnd.IPTC.NITF +text/vnd.latex-z +text/vnd.motorola.reflex +text/vnd.ms-mediapackage +text/vnd.sun.j2me.app-descriptor jad +text/vnd.wap.si +text/vnd.wap.sl +text/vnd.wap.wml wml +text/vnd.wap.wmlscript wmls +text/x-bibtex bib +text/x-boo boo +text/x-c++hdr h++ hpp hxx hh +text/x-c++src c++ cpp cxx cc +text/x-chdr h +text/x-component htc +text/x-crontab +text/x-csh csh +text/x-csrc c +text/x-dsrc d +text/x-diff diff patch +text/x-haskell hs +text/x-java java +text/x-lilypond ly +text/x-literate-haskell lhs +text/x-makefile +text/x-moc moc +text/x-pascal p pas +text/x-pcs-gcd gcd +text/x-perl pl pm +text/x-python py +text/x-scala scala +text/x-server-parsed-html +text/x-setext etx +text/x-sfv sfv +text/x-sh sh +text/x-tcl tcl tk +text/x-tex tex ltx sty cls +text/x-vcalendar vcs + +video/3gpp 3gp +video/annodex axv +video/dl dl +video/dv dif dv +video/fli fli +video/gl gl +video/mpeg mpeg mpg mpe +video/MP2T ts +video/mp4 mp4 +video/quicktime qt mov +video/mp4v-es +video/ogg ogv +video/parityfec +video/pointer +video/webm webm +video/vnd.fvt +video/vnd.motorola.video +video/vnd.motorola.videop +video/vnd.mpegurl mxu +video/vnd.mts +video/vnd.nokia.interleaved-multimedia +video/vnd.vivo +video/x-flv flv +video/x-la-asf lsf lsx +video/x-mng mng +video/x-ms-asf asf asx +video/x-ms-wm wm +video/x-ms-wmv wmv +video/x-ms-wmx wmx +video/x-ms-wvx wvx +video/x-msvideo avi +video/x-sgi-movie movie +video/x-matroska mpv mkv + +x-conference/x-cooltalk ice + +x-epoc/x-sisx-app sisx +x-world/x-vrml vrm vrml wrl diff --git a/mke2fs.conf b/mke2fs.conf new file mode 100644 index 0000000..0871f77 --- /dev/null +++ b/mke2fs.conf @@ -0,0 +1,53 @@ +[defaults] + base_features = sparse_super,filetype,resize_inode,dir_index,ext_attr + default_mntopts = acl,user_xattr + enable_periodic_fsck = 0 + blocksize = 4096 + inode_size = 256 + inode_ratio = 16384 + +[fs_types] + ext3 = { + features = has_journal + } + ext4 = { + features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize + auto_64-bit_support = 1 + inode_size = 256 + } + ext4dev = { + features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize + inode_size = 256 + options = test_fs=1 + } + small = { + blocksize = 1024 + inode_size = 128 + inode_ratio = 4096 + } + floppy = { + blocksize = 1024 + inode_size = 128 + inode_ratio = 8192 + } + big = { + inode_ratio = 32768 + } + huge = { + inode_ratio = 65536 + } + news = { + inode_ratio = 4096 + } + largefile = { + inode_ratio = 1048576 + blocksize = -1 + } + largefile4 = { + inode_ratio = 4194304 + blocksize = -1 + } + hurd = { + blocksize = 4096 + inode_size = 128 + } diff --git a/modprobe.d/fbdev-blacklist.conf b/modprobe.d/fbdev-blacklist.conf new file mode 100644 index 0000000..00a9170 --- /dev/null +++ b/modprobe.d/fbdev-blacklist.conf @@ -0,0 +1,20 @@ +# This file blacklists most old-style PCI framebuffer drivers. + +blacklist arkfb +blacklist aty128fb +blacklist atyfb +blacklist radeonfb +blacklist cirrusfb +blacklist cyber2000fb +blacklist kyrofb +blacklist matroxfb_base +blacklist mb862xxfb +blacklist neofb +blacklist pm2fb +blacklist pm3fb +blacklist s3fb +blacklist savagefb +blacklist sisfb +blacklist tdfxfb +blacklist tridentfb +blacklist vt8623fb diff --git a/modules b/modules new file mode 100644 index 0000000..a88e208 --- /dev/null +++ b/modules @@ -0,0 +1,5 @@ +# /etc/modules: kernel modules to load at boot time. +# +# This file contains the names of kernel modules that should be loaded +# at boot time, one per line. Lines beginning with "#" are ignored. + diff --git a/modules-load.d/modules.conf b/modules-load.d/modules.conf new file mode 120000 index 0000000..464b823 --- /dev/null +++ b/modules-load.d/modules.conf @@ -0,0 +1 @@ +../modules \ No newline at end of file diff --git a/nanorc b/nanorc new file mode 100644 index 0000000..4e5ba5d --- /dev/null +++ b/nanorc @@ -0,0 +1,299 @@ +## Sample initialization file for GNU nano. +## +## Please note that you must have configured nano with --enable-nanorc +## for this file to be read! Also note that this file should not be in +## DOS or Mac format, and that characters specially interpreted by the +## shell should not be escaped here. +## +## To make sure a value is disabled, use "unset