Current release: 10.0 – September 1st, 2020
Changelog Entries:
September 1st, 2020
[bdubbs] - Release of BLFS-10.0.
August 30th, 2020
[bdubbs] - Update to libreoffice-<IP_ADDRESS>. Fixes #13886.
August 28th, 2020
[bdubbs] - Update to dash-<IP_ADDRESS>. Fixes #13977.
August 27th, 2020
[bdubbs] - Add xfce4-pulseaudio-plugin-0.4.3.
[bdubbs] - Add xfce4-dev-tools-4.14.0.
[bdubbs] - Add keybinder-3.0-03.2.
[bdubbs] - Add pavucontrol-4.0.
[bdubbs] - Update to xterm-359. Fixes #13937.
August 25th, 2020
August 22nd, 2020
August 21st, 2020
[bdubbs] - Update to kf5-5.73. Now requires plasma-wayland-protocols. Includes breeze-icons, oxygen-icons, and extra-cmake-modules. Fixes #13646.
August 19th, 2020
[renodr] - Update to x264-20200819. Fixes #7555.
[thomas] - Add qtwebengine-everywhere-src-5.15.0-consolidated_fixes-3.patch. Fixes an issue which glibc version > 2.31.
August 18th, 2020
[dj] - Update to LSB-Tools-0.7.
[renodr] - Fix building Inkscape with glibc-2.32.
[pierre] - Update to blocaled-0.3. Fixes #13938.
August 17th, 2020
[renodr] - Update to xf86-video-intel-20200817. Fixes #5918.
[renodr] - Fix the test suite for libxcb.
[renodr] - Adapt Ruby to function properly with glibc-2.32. This is due to lchmod() being added to glibc.
[renodr] - Disable building the libxslt python module since it does not support Python3.
[pierre] - Update to libreoffice-<IP_ADDRESS>. Fixes #13930.
[pierre] - Update to boost-1.74.0. Fixes #13928.
[pierre] - Update to vim-8.2.1361. See #12241.
August 16th, 2020
[renodr] - Remove an instruction from OpenLDAP that pointed to a non-existent symlink.
[renodr] - Adapt libarchive test suite to changes in glibc-2.32. Fixes #13933.
[ken] - Archive ImageMagick-6, emacs-27.1 can link to ImageMagick-7. Fixes #13932.
[ken] - Update to sqlite-3.33.0. Fixes #13929.
[ken] - Update to ImageMagick-7.0.10-27. Addresses #7859.
August 15th, 2020
[pierre] - Tweak bind-utils instructions so that manual pages are installed again. Thanks to Joe Locash for the report.
August 14th, 2020
[ken] - Update to dvisvgm-2.10. Fixes #13921.
[ken] - Add missing dependences to dvisvgm (brotli and woff2) which were accidentally omitted when I added dvisvgm in r22343.
[bdubbs] - Update to tumbler-0.3.0. Fixes #13927.
[renodr] - Update to harfbuzz-2.7.1. Fixes #13924.
[renodr] - Update to postgresql-12.4 (Security Update). Fixes #13925.
[renodr] - Update to libinput-1.16.1. Fixes #13926.
August 13th, 2020
[renodr] - Update to nano-5.1. Fixes #13922.
[renodr] - Update to samba-4.12.6. Fixes #13923.
[renodr] - Update to goffice-0.10.48. Fixes #13919.
[renodr] - Update to gnumeric-1.12.48. Fixes #13920.
[renodr] - Update to openldap-2.4.51. Fixes #13918.
[renodr] - Update to wireshark-3.2.6 (Security Update). Fixes #13917.
[renodr] - Update to udisks-2.9.1. Fixes #13916.
[ken] - Tweak the texlive instructions to not report an error from 'let'.
[ken] - Use updated patch in qtwebengine to fix build with current bison.
[xry111] - Revert r23505, and fix the instruction to build texlive with poppler-20.08.
August 12th, 2020
[ken] - Fix texlive build failure with poppler-20.08 by removing instructions to use system poppler.
[renodr] - Adapt the Lua-5.4 sed in VIM to the latest version of VIM.
[ken] - Fix seamonkey build failure with glibc-2.32. Thanks to Pierre for the sed.
[bdubbs] - Update to qemu-5.1.0. Fixes #13914.
[bdubbs] - Update to mariadb-10.5.5. Fixes #13909.
[renodr] - Update to gnome-desktop-3.36.5. Fixes #13907.
[renodr] - Update to mutter-3.36.5. Fixes #13913.
[renodr] - Update to gnome-shell-3.36.5. Fixes #13911.
[renodr] - Update to gnome-shell-extensions-3.36.3. Fixes #13912.
[renodr] - Update to dovecot-<IP_ADDRESS> (security update). Fixes #13915.
[bdubbs] - Update to gtk+3.24.22. Fixes #13905.
[bdubbs] - Update to emacs-27.1. Fixes #13908.
[bdubbs] - Update to pango-1.46.0. Fixes #13906.
[bdubbs] - Update to vala-0.48.9. Fixes #13904.
August 11th, 2020
[renodr] - Reintroduce the Intel Iris Mesa driver.
[renodr] - Fix CVE-2020-14347 in xorg-server. Fixes #13871.
[renodr] - Update to libX11-1.6.11 (Security Fix). Fixes #13870.
[renodr] - Update to systemd-246. Fixes #13863.
[renodr] - Restore the test suite in libnl.
[pierre] - Update to fuse3-3.9.3. Fixes #13902.
[pierre] - Update to LVM2-2.03.10. Fixes #13901.
August 10th, 2020
August 9th, 2020
[ken] - Update to asymptote-2.67. Fixes #13893.
[bdubbs] - Update to xfwm4-4.14.5. Fixes #13900.
[bdubbs] - Remove mention of a deleted file from mc instructions. Fixes #13890.
[bdubbs] - Update to doxygen-1.8.19. Fixes #13898.
[pierre] - Update to file-roller-3.36.3. Fixes #13897.
[pierre] - Update to pipewire-0.3.9. Fixes #13883.
August 8th, 2020
[ken] - Updated to DateTime-1.52, DateTime-Format-Strptime-1.77, DateTime-Locale-1.26, DateTime-TimeZone-2.39, Exporter-Tiny-1.002002, Text-CSV_XS-1.44 (perl module dependencies), part of #13844.
[bdubbs] - Update to php-7.4.9. Fixes #13889.
[bdubbs] - Update to tumbler-0.2.9. Fixes #13890.
[pierre] - Update to thunderbird-78.1.1. Fixes #13896.
[pierre] - Update to evolution- and evolution-data-server-3.36.5. Fixes #13895.
[pierre] - Update to epiphany-3.36.4. Fixes #13891.
August 7th, 2020
[bdubbs] - Update to polkit-0.117. Fixes #13864.
[bdubbs] - Update to gegl-0.4.26. Fixes #13880.
[pierre] - Update to apache-2.4.46. Fixes #13884.
[bdubbs] - Update to mlt-6.22.1. Fixes #13878.
[bdubbs] - Update to rsync-3.2.3. Fixes #13894.
[bdubbs] - Update to font-alias font-misc-ethiopic 1.0.4 (Xorg fonts). Fixes #13892.
[ken] - Updated to Net-DNS-1.26 (perl module). Fixes #13888.
[ken] - Updated to Specio-0.46, Sub-Quote-2.006006, Test2-Plugin-NoWarnings-0.09, Test-Deep-1.130, IPC-System-Simple-1.30, Test-utf8-1.02 (perl module dependencies), part of #13844.
[ken] - Updated to Clone-0.45 with its new dependency of B-COW-0.004. Also updated to Test-Requires-0.11 (perl module dependencies), part of #13844.
August 6th, 2020
August 4th, 2020
[ken] - Update to at-3.2.1. Fixes #13879.
August 3rd, 2020
August 2nd, 2020
[thomas] - Update to xfwm4-4.14.4. Fixes #13874.
August 1st, 2020
[renodr] - Update to Thunderbird-78.1.0 (Security Update). Fixes #13867.
[ken] - Update to HTTP::Message-6.25, libwww-perl-6.46, TimeDate-2.33 (perl module dependencies), part of #13844.
[thomas] - Update to sysstat-12.4.0. Fixes #13873.
[renodr] - Update to cmake-3.18.1. Fixes #13866.
[renodr] - Update to mlt-6.22.0. Fixes #13868.
[renodr] - Update to libgusb-0.3.5. Fixes #13865.
[renodr] - Update to libvpx-1.9.0. Fixes #13825.
[ken] - Update to Alien::Build-2.26, Alien::Libxml2-0.16, FFI::CheckLib-0.27, Path::Tiny-0.114, Term::Table-0.015, Test2-Suite-0.000130, XML::LibXML-2.0205 (perl module dependencies), part of #13844.
July 31st, 2020
July 30th, 2020
July 29th, 2020
July 28th, 2020
[ken] - Update to Test::MockModule-v0.173.0 andTest::Warnings-0.030 (perl module dependencies), part of #13844.
[pierre] - Update to js-68.11.0. Fixes #13855.
[pierre] - Update to git-2.28.0. Fixes #13852.
[pierre] - Update to libqmi-1.26.2. Fixes #13846.
[bdubbs] - Update to xfwm4-4.14.3. Fixes #13849.
[bdubbs] - Update to postfix-3.5.6. Fixes #13847.
[thomas] - Update to json-c-0.15. Fixes #13845.
[thomas] - Update to uhttpmock-0.5.3. Fixes #13853.
[thomas] - Update to unbound-1.11.0. Fixes #13854.
July 27th, 2020
[ken] - Update to firefox-78.1.0esr (Security fix). Fixes #13851.
July 26th, 2020
[ken] - Remove '--disable-dbus' option from thunderbird, it breaks the build. Therefore, require dbus-glib. Fixes #13843.
July 25th, 2020
July 24th, 2020
[ken] - In firefox, note that clang (llvm-10.0.0) does not accept at least one hardening CFLAG.
[renodr] - Update to node.js-12.18.3. Fixes #13834.
[bdubbs] - Update to nspr-4.27. Fixes #13836.
[bdubbs] - Update to LibRaw-0.20.0. Fixes #13838.
[thomas] - Update to sudo-1.9.2. Fixes #13837.
[renodr] - Update to LLVM-10.0.1. Fixes #13823.
[renodr] - Update to libseccomp-2.5.0. Fixes #13822.
[renodr] - Update to pipewire-0.3.7. Fixes #13831.
July 23rd, 2020
July 22nd, 2020
July 21st, 2020
July 20th, 2020
[renodr] - Update to gnome-disk-utility-3.36.3. Fixes #13821.
July 19th, 2020
July 18th, 2020
[renodr] - Update to BIND and BIND Utilites 9.16.5. Fixes #13808.
[renodr] - Update to cmake-3.18.0. Fixes #13807.
[ken] - Tweak patch for LWP-Protocol-https-6.09 (Perl Module), re #13809.
[bdubbs] - Update to nasm-2.15.03. Fixes #13814.
[bdubbs] - Update to xev-1.2.4 (Xorg Application). Fixes #13816.
July 17th, 2020
[renodr] - Update to Thunderbird-78.0 (Security Update). Fixes #13806.
[bdubbs] - Update to gpgme-1.14.0. Fixes #13813.
[bdubbs] - Update to mpg123-1.26.3. Fixes #13812.
[bdubbs] - Update to libevdev-1.9.1 (Xorg Driver). Fixes #13811.
[bdubbs] - Update to SCons-4.0.1. Fixes #13810.
[bdubbs] - Update to LWP-Protocol-https-6.09 (Perl Module). Fixes #13809.
July 15th, 2020
July 14th, 2020
July 13th, 2020
July 12th, 2020
July 11th, 2020
July 10th, 2020
July 9th, 2020
July 8th, 2020
July 7th, 2020
[renodr] - Update to sendmail-8.16.1. Fixes #13776.
[renodr] - Update to qca-2.3.1. Fixes #13781.
[renodr] - Update to seamonkey-2.53.3 (Security Update). Fixes #13782.
[renodr] - Update to libcap-2.38. Fixes #13765.
[renodr] - Update to dbus-1.12.20 (Security Update). Fixes #13753.
[pierre] - Update to gjs-1.64.4. Fixes #13780.
[pierre] - Update to libgcrypt-1.8.6. Fixes #13779.
July 6th, 2020
July 5th, 2020
July 4th, 2020
July 3rd, 2020
[renodr] - Update to evince-3.36.7. Fixes #13674.
[renodr] - Update to librsvg-2.48.8. Fixes #13673.
[renodr] - Update to evolution-3.36.4. Fixes #13672.
[renodr] - Update to evolution-data-server-3.36.4 (Security Update). Fixes #13762.
[renodr] - Update to gnome-control-center-3.36.4. Fixes #13761.
[renodr] - Update to dhcpcd-9.1.3. Fixes #13759.
[renodr] - Update to nasm-2.15.02. Fixes #13758.
[renodr] - Update to poppler-0.90.0. Fixes #13757.
[renodr] - Update to epiphany-3.36.3. Fixes #13754.
[bdubbs] - Update to libreoffice-<IP_ADDRESS>. Fixes #13760.
[bdubbs] - Update to btrfs-progs-v5.7. Fixes #13755.
July 2nd, 2020
July 1st, 2020
June 30th, 2020
[renodr] - Update to libwacom-1.4.1. Fixes #13738.
[renodr] - Update to exiv2-0.27.3 (Security Update). Fixes #13739.
[renodr] - Update to graphviz-2.44.1. Fixes #13740.
[renodr] - Update to unrar-5.9.4. Fixes #13741.
[renodr] - Update to rpcsvc-proto-1.4.2. Fixes #13743.
[renodr] - Update to vala-0.48.7. Fixes #13744.
[renodr] - Update to lua-5.4.0. Fixes #13742.
[renodr] - Adapt httpd to lua-5.4 API changes.
[renodr] - Adapt gvim to lua-5.4 API changes.
[ken] - note that building rustc can now mostly be restricted to a specified number of processors by adding a --jobs switch to each x.py command and also exporting CARGO_BUILD_JOBS= with a value.
[ken] - Pierre discovered that building firefox-78 requires that Python3 has been rebuilt after installing sqlite3.
[pierre] - Add some explanation about cracklib and pwquality to the PAM page and update shadow “important” note about rebuilding after PAM.
June 29th, 2020
[ken] - Update to firefox-78.0esr. If updating from firefox-68esr, please read the wiki entry for firefox first. This version will expect a newer profile, but starting from a term with '--enable-downgrade' to use an existing profile seems to work. [ Security fix ] Fixes #13721.
[pierre] - Add instructions and informations for mounting lvm volumes at boot with systemd. Fixes #13730.
[renodr] - Update to gtk+-3.24.21. Fixes #13737.
June 28th, 2020
[renodr] - Update to libva-2.8.0. Fixes #13736.
[bdubbs] - Update to postfix-3.5.4. Fixes #13734.
[renodr] - Update to haveged-1.9.13. Fixes #13731.
[renodr] - Update to nasm-2.15.01. Fixes #13732.
[renodr] - Update to py3c-1.2 (Python Module). Fixes #13733.
[renodr] - Update to baobab-3.34.1. Fixes #13735.
June 27th, 2020
June 25th, 2020
[bdubbs] - Update to mariadb-10.5.4. Fixes #13720.
[renodr] - Update to exempi-2.5.2. Fixes #13715.
[renodr] - Update to guile-3.0.4. Fixes #13714.
[renodr] - Update to nspr-4.26. Fixes #13716.
[renodr] - Update to cbindgen-0.14.3. Fixes #13718.
[renodr] - Update to pycryptodome-3.9.8 (Python Module). Fixes #13719.
June 24th, 2020
[pierre] - Update to popt-1.18. Fixes #13701.
[renodr] - Update to cURL-7.71.0 (security update). Fixes #13712.
[renodr] - Update to ModemManager-1.14.0. Fixes #13710.
[renodr] - Update to libwacom-1.4. Fixes #13708.
[bdubbs] - Update to libjpeg-turbo-2.0.5. Fixes #13709.
[bdubbs] - Update to ntp-4.2.8p15. Fixes #13711.
June 23rd, 2020
[ken] - Update to mutt-1.14.5. Fixes #13707.
[bdubbs] - Archive expect, dejagnu, and tcl which are now included in LFS. Fixes #13697.
[bdubbs] - Update to nfs-utils-2.5.1. Fixes #13704.
[renodr] - Update to harfbuzz-2.6.8. Fixes #13702.
[renodr] - Update to valgrind-3.16.1. Fixes #13703.
[renodr] - Update to rsync-3.2.1. Fixes #13705.
[renodr] - Update to libnma-1.8.30. Fixes #13706.
June 22nd, 2020
June 21st, 2020
June 20th, 2020
June 19th, 2020
[bdubbs] - Update to alsa-lib-<IP_ADDRESS>. Fixes #13693.
[renodr] - Update to evince-3.36.6. Fixes #13682.
[renodr] - Update to haveged-1.9.12. Fixes #13683.
[renodr] - Update to libmbim-1.24.0. Fixes #13685.
[renodr] - Update to desktop-file-utils-0.26. Fixes #13686.
[renodr] - Update to sqlite-3.32.3. Fixes #13688.
[renodr] - Update to libinput-1.15.6. Fixes #13689.
[renodr] - Update to libgweather-3.36.1. Fixes #13691.
[thomas] - Update to sudo-1.9.1. Fixes #13684.
[ken] - Update to mutt-1.14.4 (Security fixes). Fixes #13687.
June 18th, 2020
June 17th, 2020
[bdubbs] - Update to ffmpeg-4.3. Fixes #13674.
[bdubbs] - Update to iptables-1.8.5. Fixes #13675.
[renodr] - Update to NSS-3.53.1 (security update). Fixes #13676.
[renodr] - Update to lcms2-2.11. Fixes #13677.
[renodr] - Update to pidgin-2.14.1. Fixes #13678.
[renodr] - Update to vlc-3.0.11. Fixes #13679.
June 16th, 2020
June 15th, 2020
[ken] - Add a caution in the Intel microcode section, certain Skylake variants fail to boot with the latest firmware.
[ken] - Update to mutt-1.14.3 (Security fixes, also now requires lynx (or links, with adjustment) to generate manual.txt. Fixes #13672.
[renodr] - Update to twm-1.0.11. Fixes #13670.
[renodr] - Update to gnome-desktop-<IP_ADDRESS>. Fixes #13671.
June 13th, 2020
June 12th, 2020
June 11th, 2020
June 10th, 2020
June 9th, 2020
[ken] - Update Intel microcode to 20200609 [security fix]. If you are hosting VMs, please read the ticket to see what is and what is not fixed. Fixes #13656.
[renodr] - Update to evince-3.36.4. Fixes #13655.
[renodr] - Update to xapian-core-1.4.16. Fixes #13652.
[renodr] - Update to Linux-PAM-1.4.0. Fixes #13651.
[renodr] - Move the libpwquality.so library to /lib because it is now used as an authentication module and should be available if /usr is on a separate filesystem.
June 8th, 2020
June 7th, 2020
[ken] - Add a note to rxvt-unicode that it ignores SIGFPE (a perl issue), this causes some tests to fail if using it to build a new LFS system.
[bdubbs] - Update to polkit-cf22af32. Allows use of js68.
[bdubbs] - Update to cups-filters-1.27.5. Fixes #13206.
June 6th, 2020
[bdubbs] - Update to mercurial-5.4.1. Fixes #13645.
June 5th, 2020
June 4th, 2020
[bdubbs] - Update to librsvg-2.48.7. Fixes #13639.
[renodr] - Fix a problem in NcFTP caused by GCC-10. Credit goes to Joe Locash for determining the problem and providing a solution.
[renodr] - Update to cogl-1.22.8. Fixes #13638.
[pierre] - Update to asciidoc-9.0.0. Fixes #13404.
[pierre] - Update to thunderbird-68.9.0 (security update). Fixes #13637.
June 3rd, 2020
[renodr] - Update to dbus-1.12.18 (security update). Fixes #13626.
[renodr] - Update to libcap-2.36. Fixes #13627.
[renodr] - Fix the build of systemd-245 with GCC-10 using a patch instead of CFLAGS.
[bdubbs] - Update to harfbuzz-2.6.7. Fixes #13636.
[ken] - Use parallel builds for nss-3.53. Fixes #13634.
[renodr] - Update to gnutls-3.6.14 (Security Update). This includes a fix for the expired root certificate (on 5/30/2020) that made several sites inaccessible in Epiphany and other GnuTLS users because of a logic error with regards to using a certificate with the same private key from an alternate vendor. Fixes #13635.
[bdubbs] - Update to xkeyboard-config-2.30. Fixes #13630.
[pierre] - Reinstate system nghttp2 for node.js-12.18.0.
[pierre] - Update to nghttp2-1.41.0 (security fixes). Fixes #13629.
[ken] - Update to node.js-12.18.0 (security fixes). Fixes #13628.
[renodr] - Update to gnome-shell-3.36.3. Fixes #13632.
[renodr] - Update to Mutter-3.36.3. Fixes #13633.
[renodr] - Update to gnome-control-center-3.36.3. Fixes #13631.
June 2nd, 2020
[renodr] - Update to evince-3.36.3. Fixes #13613.
[renodr] - Update to lcms2-2.10. Fixes #13618.
[renodr] - Update to dhcpcd-9.1.0. Fixes #13619.
[renodr] - Update to gjs-1.64.3. Fixes #13620.
[bdubbs] - Update to librsvg-2.48.6. Fixes #13625.
[bdubbs] - Update to git-2.27.0. Fixes #13622.
[bdubbs] - Update to audacious-4.0.4. Fixes #13624.
[pierre] - Update to exim-4.94. Fixes #13623.
[thomas] - Update to dash-0.5.11. Fixes #13621.
June 1st, 2020
[renodr] - Update to librsvg-2.48.5. Fixes #13597.
[renodr] - Update to NSS-3.53. Fixes #13599.
[bdubbs] - Update to icewm-1.6.6. Fixes #13605.
[bdubbs] - Update to mpg123-1.26.1. Fixes #13615.
[bdubbs] - Update to proftpd-1.3.6d. Fixes #13612.
[bdubbs] - Update to pciutils-3.7.0. Fixes #13611.
[bdubbs] - Update to libqmi-1.24.14. Fixes #13610.
[ken] - Update to firefox-68.9.0 (security fixes), also used for JS68. Fixes #13609.
[thomas] - Update to fetchmail-6.4.6. Fixes #13603.
May 31st, 2020
[bdubbs] - Add a style element to css file to make the html navigation header 'sticky' instead of scrolling.
May 30th, 2020
[thomas] - Update to xarchiver-<IP_ADDRESS>. Fixes #13614.
[bdubbs] - Update to x265-3.4. Fixes #13608.
[bdubbs] - Update to feh-3.4.1. Fixes #13607.
[bdubbs] - Update to Mako-1.1.3 (Python Module). Fixes #13602.
[bdubbs] - Update to libgpg-error-1.38. Fixes #13600.
[thomas] - Update to vte-0.60.3. Fixes #13598.
[pierre] - Update to epiphany-3.36.2. Fixes #13596.
[pierre] - Update to gnome-system-monitor-3.36.1. Fixes #13594.
[pierre] - Update to nautilus-3.36.3. Fixes #13593.
[pierre] - Update to evolution and evolution-data-server 3.36.3. Fixes #13592.
May 29th, 2020
[renodr] - Update to amtk-5.1.1. Fixes #13591.
[renodr] - Update to NetworkManager-1.24.2 (security update). Fixes #13595.
[thomas] - Upgrade subversion-1.14.0. Drop description of Python2 bindings. Fixes #13584.
[thomas] - Make swig use Python3.
[thomas] - Add Python module py3c-1.1 (needed by subversion).
May 28th, 2020
[renodr] - Update to glib-networking-2.64.3. Fixes #13589.
[renodr] - Update to babl-0.1.76. Fixes #13582.
[renodr] - Update to cryptsetup-2.3.3. Fixes #13587.
[renodr] - Update to Valgrind-3.16.0. Fixes #13585.
[renodr] - Update to cmake-3.17.3. Fixes #13588.
[renodr] - Update to poppler-0.89.0. Fixes #13586.
[renodr] - Update to Net-DNS-1.24. Fixes #13583.
[ken] - Adapt vlc-3.0.10 for changes in Qt-5.15.
[thomas] - Upgrade to openssh-8.3p1. Fixes #13580.
May 27th, 2020
[renodr] - Update to HTTP-Daemon-6.10 (Perl Module). Fixes #13578.
[renodr] - Update to Node.JS-12.17.0. Reinstates system ICU as well. Fixes #13576.
[renodr] - Update to udisks-2.9.0. Fixes #13577.
[renodr] - Update to libdrm-2.4.102. Fixes #13579.
[renodr] - Adapt Falkon to build with Qt-5.15.
[renodr] - Update to Qt and QtWebEngine-5.15.0. Fixes #13575.
[pierre] - Update to vim-8.2.0814 to sync with lfs.
May 26th, 2020
May 25th, 2020
[bdubbs] - Update to thunar-1.8.15. Fixes #13573.
May 24th, 2020
May 23rd, 2020
May 22nd, 2020
May 21st, 2020
[bdubbs] - Update to ffmpeg-4.2.3. Fixes #13564.
[bdubbs] - Update to v4l-utils-1.20.0. Fixes #13563.
[bdubbs] - Update to six-1.15.0 (Python module). Fixes #13561.
[bdubbs] - Update to libbytesize-2.3. Fixes #13560.
[pierre] - Patch jfsutils to avoid the use of -fcommon.
[pierre] - Patch transcode to avoid the use of -fcommon.
[renodr] - Update to dovecot-<IP_ADDRESS> (Security Update). Fixes #13545.
[renodr] - Update to balsa-2.5.11. Fixes #13521.
[renodr] - Update to goffice-0.10.47. Fixes #13518.
[renodr] - Update to gnumeric-1.12.47. Fixes #13519.
[bdubbs] - Update to wireshark-3.2.4. Fixes #13558.
[bdubbs] - Update to glib-2.64.3. Fixes #13559.
May 20th, 2020
May 19th, 2020
[bdubbs] - Update to kf5 packages kio-5.70.1, ktexteditor-5.70.1, and plasma-framework-5.70.1 in non-scheduled updates.
[bdubbs] - Update to xf86-input-libinput-0.30.0. Fixes #13549.
[bdubbs] - Update to unbound-1.10.1. Fixes #13551.
[bdubbs] - Update to uhttpmock-0.5.2. Fixes #13547.
[renodr] - Update to Samba-4.12.3. Fixes #13552.
[thomas] - Update bind-9.16.3 and bind-utils-9.16.3. Fixes #13550.
[pierre] - Add a patch to freeglut to avoid the use of -fcommon.
[pierre] - Add a patch to lxtask to avoid the use of -fcommon.
[pierre] - Add a patch to menu-cache to fix a memory leak and avoid the use of -fcommon.
[pierre] - Fix vinagre to avoid the use of -fcommon.
[pierre] - Two fixes for sharutils: prevent a heap overflow and avoid the use of -fcommon.
May 18th, 2020
[renodr] - Update to gnome-logs-3.36.1. Fixes #13528.
[renodr] - Update to gfbgraph-0.2.4. Fixes #13544.
[renodr] - Update to evince-3.36.1. Fixes #13548.
[pierre] - Update to Xorg Intel Driver-20200518. Fixes a "multiple definition" error with GCC 10.
[bdubbs] - Update to vala-0.48.6. Fixes #13546.
[bdubbs] - Update to postfix-3.5.2. Fixes #13543.
[renodr] - Fix an installation problem in gjs caused by trying to create a symlink before it's origin is installed.
[thomas] - Update to libuv-1.38.0. Fixes #13542.
May 17th, 2020
May 16th, 2020
[renodr] - Fix a regression in Udisks2 caused by glib-2.64. This is primarily due to encoding API changes.
[pierre] - Patch libreoffice to build with GCC 10.
[pierre] - Patch boost to allow building libreoffice with GCC 10.
[pierre] - Fix rox-filer for GCC 10.
[pierre] - Fix vsftpd for GCC 10. Thanks to Thomas Trepl for the sed.
[bdubbs] - Update to postgresql-12.3. Fixes #13540.
[bdubbs] - Update to php-7.4.6. Fixes #13538.
[bdubbs] - Update to Python-3.8.3. Fixes #13539.
[bdubbs] - Update to highlight-3.57. Fixes #13537.
May 15th, 2020
[bdubbs] - Update to mesa-20.0.7. Fixes #13536.
[bdubbs] - Update to sysstat-12.3.3. Fixes #13517.
[bdubbs] - Update to plasma5-5.18.5. Fixes #13191.
[bdubbs] - Update to kf5-apps-20.04.1 including kwave and kate. Fixes #13217.
[bdubbs] - Update to mariadb-10.4.13. Fixes #13531.
[renodr] - Update to libqmi-1.24.12. Fixes #13514.
[renodr] - Update to ModemManager-1.12.10. Fixes #13516.
[pierre] - Fix building libmusicbrainz-5.10 with cmake-3.17.
[thomas] - Update to apache-ant-1.10.8. Fixes #13533.
May 14th, 2020
[renodr] - Fix gst-plugins-bad so that it detects neon properly at build-time.
[bdubbs] - Update to polkit-qt-1-0.113.0. Fixes #13436.
[bdubbs] - Update to kf5-5.70.0. Fixes #13235.
[pierre] - Update to xarchiver-<IP_ADDRESS>. Fixes #13535.
[pierre] - Fix building transcode with GCC-10.
[pierre] - Fix building vinagre with GCC-10.
[pierre] - Fix building dhcp with GCC-10. From a patch by Xi Ruoyao.
[pierre] - Fix building menu-cache with GCC-10.
[pierre] - Fix building lxtask with GCC-10.
May 13th, 2020
[renodr] - Update to libmypaint-1.6.1. Fixes #13525.
[renodr] - Fix building Sawfish with GCC-10.
[pierre] - Update to Java(32 bit) 14.0.1+7. Fixes #13530.
[renodr] - Remove invalid dependency from gdk-pixbuf. Fixes #13529.
[pierre] - Fix the build of xine-lib with GCC-10.
[pierre] - Update to Java(64 bit) and Openjdk 14.0.1+7. Java 32 still pending. Partially fixes #13530.
[renodr] - Fix the build of xf86-video-amdgpu with GCC-10.
May 12th, 2020
[renodr] - Update to harfbuzz-2.6.6. Fixes #13527.
[ken] - Update to mutt-1.14.0. Fixes #13493.
[bdubbs] - Fix building p7zip with gcc 10. Also addresses several exiting security issues.
[renodr] - Adapt valgrind to changes in GCC-10.
[thomas] - Upgrade to sudo-1.9.0. Fixes #13524.
[thomas] - Upgrade to pcre2-10.35. Fixes #13520.
[thomas] - Upgrade btrfs-progs to 5.6.1. Fixes #13512.
[thomas] - Upgrade freetype to 2.10.2. Fixes #13515.
[pierre] - Fix building cpio with gcc 10.
[pierre] - Fix building freeglut with gcc 10.
[pierre] - Fix building intel-vaapi-driver with gcc 10.
[thomas] - Added a patch to fix building qtwebengine-5.14.2 with GCC-10. It also enables using system ICU again.
May 11th, 2020
[ken] - Update to fontforge-20200314 (security fixes). Fixes #13488.
[renodr] - Update to c-ares-1.16.1. Fixes #13522.
[bdubbs] - Update to postfix-3.5.1. Fixes #13523.
[ken] - Added libspiro and libuninameslist to the book. Addresses part of #13488.
[ken] - Reinstate link-shared in config.toml for rustc, it had fallen out. Thanks to Pierre for noticing.
[thomas] - Added a patch to fix building QT-5.14.2 with GCC-10.
[thomas] - Fix building xf86-video-ati and xf86-video-intel with GCC-10.
[pierre] - Update to libcap-pam-2.34. Fixes #13497.
May 10th, 2020
[thomas] - Fix building ntp with GCC-10.
[pierre] - Make a consolidated patch for gpm.
[pierre] - Update to gcc-10.1.0. Partially fixes #13511.
May 9th, 2020
[pierre] - Fix building gpm with GCC 10.
[pierre] - Fix building systemd with GCC 10.
May 8th, 2020
May 7th, 2020
[renodr] - Update to shared-mime-info-2.0. Fixes #13510.
May 6th, 2020
May 5th, 2020
[renodr] - Added double-conversion to the book. Fixes #13504.
[renodr] - Added gdl to the book. Fixes #13503.
[renodr] - Update to Inkscape-1.0. Fixes #13501.
[renodr] - Update to faad2-2.9.2. Fixes #13502.
[renodr] - Update to gdm-3.36.2. Fixes #13499.
[thomas] - Update to xfce4-notifyd-0.6.1. Fixes #13500.
May 4th, 2020
[renodr] - Fix a build failure in cyrus-sasl.
[ken] - Update to firefox-68.8.0 (security fixes), also used for JS68. Fixes #13498.
May 3rd, 2020
[renodr] - Update to Seamonkey-2.53.2 (security update). Fixes #13495.
[renodr] - Update to GTK+-3.24.20. Revert back to autotools per upstream's recommendations, and include the scrollbar button fix in ~/.config/gtk-3.0/gtk.css. Fixes #13459.
[bdubbs] - Update to v4l-utils-1.18.1. Fixes #13496.
[thomas] - Upgrade xterm-356. Fixes #13494.
May 2nd, 2020
May 1st, 2020
[renodr] - Document test suite issues in GDB with AMD processors.
[bdubbs] - Update to xfwm4-4.14.2. Fixes #13487.
[renodr] - Update to soundtouch-2.1.2. Fixes #13483.
[renodr] - Update to cbindgen-0.14.2. Fixes #13484.
[renodr] - Update to gnome-control-center-3.36.2. Fixes #13485.
[renodr] - Update to pipewire-0.3.4. Fixes #13486.
[renodr] - Fix a regression in gnome-shell that causes crashes with some extensions, such as dash-to-panel, enabled.
April 30th, 2020
[pierre] - Document options to prevent elogind to kill all user processes when the user logs out. This recovers the traditional behavior of commands like nohup or screen.
[renodr] - Update to cryptsetup-2.3.2. Fixes #13482.
[renodr] - Update to libmypaint-1.6.0. Fixes #13480.
[renodr] - Update to mesa-20.0.6. Fixes #13479.
April 29th, 2020
[renodr] - Update to gnome-settings-daemon-3.36.1. Fixes #13477.
[renodr] - Update to gsettings-desktop-schemas-3.36.1. Fixes #13478.
[renodr] - Update to gnome-shell-extensions-3.36.2. Fixes #13476.
[renodr] - Update to gnome-shell-3.36.2. Fixes #13474.
[renodr] - Update to mutter-3.36.2. Fixes #13475.
[thomas] - Update to audacious/-plugins-4.0.3. Fixes #13473.
[renodr] - Update to node.js-12.16.3. Fixes #13467.
[bdubbs] - Update to qemu-5.0.0. Fixes #13465.
[renodr] - Update to OpenLDAP-2.4.50. Fixes #13469.
[renodr] - Update to gnome-desktop-3.36.2. Fixes #13470.
[renodr] - Update to curl-7.70.0. Fixes #13471.
[renodr] - Update to boost-1.73.0. Fixes #13466.
[thomas] - Update to cmake-3.17.2. Fixes #13468.
[thomas] - Remove switch -webengine-icu from qtwebengine instructions as current qtwebengine (5.14.2) does not compile against ICU-67.1.
April 28th, 2020
[thomas] - Update to fetchmail-6.4.4. Fixes #13456.
[bdubbs] - Update to xfce4-panel-4.14.4. Fixes #13462.
[renodr] - Update to gjs-1.64.2. Fixes #13461.
[renodr] - Update to cups-2.3.3 (security update). Fixes #13464.
[renodr] - Update to samba-4.12.2 (security update). Fixes #13463.
[thomas] - Update to poppler-0.88.0. Fixes #13460.
April 27th, 2020
April 25th, 2020
[renodr] - Update to gnome-user-docs-3.36.2. Fixes #13455.
[ken] - Add tlpdb tarball to install of texlive source. Fixes #13445.
[renodr] - Update to gnome-terminal-3.36.2. Fixes #13454.
[renodr] - Update to vte-0.60.2. Fixes #13453.
[renodr] - Update to gedit-3.36.2. Fixes #13452.
[renodr] - Update to eog-3.36.2. Fixes #13451.
[renodr] - Update to dconf-editor-3.36.2. Fixes #13450.
[renodr] - Update to gnome-maps-3.36.2. Fixes #13449.
[renodr] - Update to WebKitGTK+-2.28.2. Fixes #13447.
[renodr] - Update to evolution-data-server-3.36.2. Part of #13446.
[renodr] - Update to evolution-3.36.2. Fixes #13446.
April 24th, 2020
April 22nd, 2020
April 21st, 2020
April 20th, 2020
April 19th, 2020
April 18th, 2020
[bdubbs] - Update to php-7.4.5. Fixes #13425.
April 17th, 2020
April 16th, 2020
[thomas] - Update to bind-9.16.2, bind-utils-9.16.2. Fixes #13423.
April 15th, 2020
[bdubbs] - Update to libuv-v1.36.0. Fixes #13422.
[renodr] - Update to audacious/audacious-plugins 4.0.2. Fixes #13419.
[renodr] - Update to libsecret-0.20.3. Fixes #13416.
[renodr] - Update to glib-networking-2.64.2. Fixes #13415.
[renodr] - Update to dhcpcd-9.0.1. Fixes #14313.
[renodr] - Update the systemd units tarball to handle changes in dhcpcd's PID file location. This prevents freezing systemctl while trying to start dhcpcd as well as allows dhcpcd to function correctly.
[renodr] - Update to krb5-1.18.1. Fixes #13409.
[bdubbs] - Update to faac-1_30. Fixes #13420.
[bdubbs] - Update to faad2-2_9_1. Fixes #13421.
[bdubbs] - Update to xfsprogs-5.6.0. Fixes #13418.
April 14th, 2020
[ken] - Update to git-2.26.1 (security fix). Fixes #13417.
[bdubbs] - Update to xorgproto-2020.1. Fixes #13414.
[bdubbs] - Update to doxygen-1.8.18. Fixes #13412.
[bdubbs] - Update to Jinja2-2.11.2 (Python Module). Fixes #13411.
[bdubbs] - Update to glm-<IP_ADDRESS>. Fixes #13410.
[bdubbs] - Update to libsass-3.6.3. Fixes #12875.
April 13th, 2020
April 12th, 2020
[ken] - Update to texlive-20200406. Fixes #13394.
April 11th, 2020
[renodr] - Update to libyaml-0.2.3. Fixes #13402.
[renodr] - Update to feh-3.4. Fixes #13403.
[renodr] - Update to VLC-<IP_ADDRESS>. Fixes #13400.
[renodr] - Update to libqmi-1.24.10. Fixes #13395.
[renodr] - Update to cbindgen-0.14.1. Fixes #13397.
[renodr] - Update the pdfbox/fontbox packages in fop to 2.0.19. Fixes #13401.
[bdubbs] - Update to libvdpau-1.4. Fixes #13399.
[bdubbs] - Update to libinput-1.15.5. Fixes #13398.
[thomas] - Update to sysstat-12.3.2. Fixes #13396.
April 10th, 2020
[renodr] - Update to libtirpc-1.2.6. Fixes #13393.
[renodr] - Update to qpdf-10.0.1. Fixes #13392.
[renodr] - Update to gtk+-3.24.18. Fixes #13390.
[renodr] - Update to graphviz-2.44.0. Fixes #13379.
[renodr] - Update to cmake-3.17.1. Fixes #13389.
[renodr] - Update to gnome-weather-3.36.1. Fixes #13391.
April 9th, 2020
[renodr] - Update to librsvg-2.48.3. Fixes #13388.
[renodr] - Update to glib-2.64.2. Fixes #13386.
[renodr] - Update to node.js-12.16.2. Fixes #13378.
[bdubbs] - Clarify naming of docbook xml and dtd pages.
[bdubbs] - Update to libva-2.7.0. Fixes #13387.
[timtas] - Update to thunderbird-68.7.0. Fixes #13381.
[thomas] - Update to wireshark-3.2.3. Fixes #13380.
April 8th, 2020
[thomas] - Update to xfce4-notifyd-0.6.0. Fixes #13376.
April 7th, 2020
April 6th, 2020
[renodr] - Update to gnome-weather-3.36.0. Fixes #13370.
[renodr] - Update to vala-0.48.3. Fixes #13369.
[renodr] - Update to audacious and audacious-plugins 4.0.1. Fixes #13367.
[bdubbs] - Update to btrfs-progs-5.6. Fixes #13365.
[ken] - Update to firefox-68.7.0 (security fixes), also used for JS68. Fixes #13368.
[ken] - Let our cairo snapshot build with automake-1.16.2. Fixes #13364.
April 5th, 2020
April 4th, 2020
[bdubbs] - Update to opencv and opencv_contrib 4.3.0. Fixes #13357.
[bdubbs] - Update to mesa-20.0.4. Fixes #13343.
[bdubbs] - Update to graphite2-1.3.14. Fixes #13339.
[bdubbs] - Update to libdrm-2.4.101. Fixes #13358.
[bdubbs] - Update to vim-8.2.0486. Fixes #13356.
[renodr] - Update to gnome-weather-3.34.1. Fixes #13359.
[timtas] - Update to dhcpcd-9.0.0. Fixes #13352.
[ken] - Use firefox-68.6.1 for JS68. Addresses #13355.
April 3rd, 2020
[ken] - Update to firefox-68.6.1 (security fixes). Fixes #13354.
[bdubbs] - Update to gtk+-3.24.17. Fixes #13253.
[bdubbs] - Update to mercurial-5.3.2. Fixes #13251.
[bdubbs] - Update to atk-2.36.0. Fixes #13245.
[renodr] - Update to gnome-terminal-<IP_ADDRESS>. Finishes #13243.
[renodr] - Update to gnome-system-monitor-3.36.0. Part of #13243.
[renodr] - Update to gnome-screenshot-3.36.0. Part of #13243.
[renodr] - Update to gnome-maps-3.36.1. Part of #13243.
[renodr] - Update to gnome-disk-utility-3.36.1. Part of #13243.
[renodr] - Update to gnome-calculator-3.36.0. Part of #13243.
[renodr] - Update to file-roller-3.36.1. Part of #13243.
[renodr] - Update to evolution-3.36.1. Part of #13243.
[renodr] - Update to Evince-3.36.0. Part of #13243.
[renodr] - Update to EOG-3.36.1. Part of #13243.
[renodr] - Remove the systemctl instructions from systemd and dbus. Nobody has reported problems with them in years.
[thomas] - Update to qt-5.14.2, qtwebengine-5.14.2. Fixes #13342.
April 2nd, 2020
[renodr] - Update to yelp-3.36.0. Finishes #13242.
[renodr] - Update to gnome-user-docs-3.36.1. Part of #13242.
[renodr] - Update to gnome-session-3.36.0. Part of #13242.
[renodr] - Update to gnome-shell-extensions-3.36.1. Part of #13242.
[renodr] - Archived libcroco.
[renodr] - Update to gnome-shell-3.36.1. Part of #13242.
[renodr] - Update to mutter-3.36.1. Part of #13242.
[renodr] - Update to gnome-control-center-3.36.1. Part of #13242.
[renodr] - Update to gnome-color-manager-3.36.0. Part of #13243.
[renodr] - Update to network-manager-applet-1.16.0. Part of #13243.
[renodr] - Moved network-manager-applet to Networking Utilities.
[renodr] - Added graphene to the book. Fixes #13347.
[renodr] - Added libnma to the book. Fixes #13346.
[renodr] - Moved polkit-gnome to Security. Fixes #13350.
[renodr] - Moved notification-daemon to System Utilites. Fixes #13349.
[renodr] - Update to gnome-settings-daemon-3.36.0. Part of #13242.
[renodr] - Added the test suite to libgudev.
[renodr] - Added umockdev. Fixes #13348.
[thomas] - Update to nano-4.9.1. Fixes #13334.
April 1st, 2020
[renodr] - Update to librsvg-2.48.2. Fixes #13336.
[renodr] - Add a patch to IBUS to allow it to function in Wayland-based desktop environments such as gnome.
[renodr] - Reinstate system LLVM in Rust.
[bdubbs] - Update to ruby-2.7.1. Fixes #13341.
[bdubbs] - Update to httpd-2.4.43. Fixes #13332.
[bdubbs] - Update to gnutls-3.6.13. Fixes #13337.
[bdubbs] - Update to IO-Socket-SSL-2.068 (Perl Module). Fixes #13340.
[bdubbs] - Update to unrar-5.9.2. Fixes #13331.
March 31st, 2020
[renodr] - Update to bubblewrap-0.4.1 (Security Update). Fixes #13330.
[renodr] - Update to gnome-bluetooth-3.34.1. Part of #13242.
[renodr] - Update to Nautilus-<IP_ADDRESS>. Part of #13242.
[renodr] - Update to gvfs-1.44.1. Part of #13242.
[renodr] - Update to gnome-backgrounds-3.36.0. Part of #13242.
[renodr] - Update to gnome-desktop-3.36.1. Fixes #13335.
[renodr] - Update to tracker-miners-2.3.3. Finishes #13241.
[renodr] - Update to dconf-editor-3.36.0. Part of #13242.
[renodr] - Update to dconf-0.36.0. Part of #13242.
[renodr] - Update to tracker-2.3.4. Part of #13241.
[renodr] - Update to folks-0.14.0. Part of #13241.
[renodr] - Update to evolution-data-server-3.36.1. Part of #13241.
[renodr] - Update to libwnck-3.36.0. Part of #13241.
[renodr] - Update to libpeas-1.26.0. Part of #13241.
[renodr] - Update to gnome-online-accounts-3.36.0. Part of #13241.
[renodr] - Update to libgweather-3.36.0. Part of #13241.
March 30th, 2020
[renodr] - Update to gnome-menus-3.36.0. Part of #13241.
[renodr] - Update to geocode-glib-3.26.2. Part of #13241.
[renodr] - Update to yelp-xsl-3.36.0. Part of #13241.
[renodr] - Update to vte-0.60.1. Part of #13241.
[ken] - Update to rustc-1.42.0 and patch seamonkey for this. Thanks to Bruce, Pierre and Uwe for their help. Fixes #13321.
[bdubbs] - Update to xorg-server-1.20.8. Fixes #13329.
[bdubbs] - Update to xfce4-terminal-<IP_ADDRESS>. Fixes #13328.
March 29th, 2020
[renodr] - Update to epiphany-3.36.1. Finishes #13244.
[renodr] - Update to seahorse-3.36.0. Part of #13243.
[renodr] - Update to libhandy-0.0.13. Part of #13244.
[renodr] - Update to libdazzle-3.36.0. Part of #13244.
[renodr] - Update to gnome-keyring-3.36.0. Part of #13242.
[renodr] - Update to libsecret-0.20.2. Part of #13241.
[bdubbs] - Update to poppler-0.87.0. Fixes #13326.
[bdubbs] - Update to xfce4-session-4.14.2. Fixes #13325.
March 28th, 2020
March 27th, 2020
[bdubbs] - Update to librsvg-2.48.1. Fixes #13322.
[ken] - Use the shipped copy of llvm when building rustc-1.39.0, instead of system llvm because it fails to build with llvm-10.0.. Fixes #13320.
[renodr] - Update to glib-networking-2.64.1. Fixes #13323.
[bdubbs] - Update to gtk+-3.24.16. Fixes #13319.
[bdubbs] - Update to LVM<IP_ADDRESS>. Fixes #13311.
[bdubbs] - Update to pipewire-0.3.2. Fixes #13312.
[bdubbs] - Update to guile-3.0.2. Fixes #13315.
[bdubbs] - Update to neon-0.31.0. Fixes #13310.
[bdubbs] - Update to libgsf-1.14.47. Fixes #13309.
[bdubbs] - Update to vala-0.48.2. Fixes #13307.
[bdubbs] - Update to libsigc++-2.10.3. Fixes #13306.
[renodr] - Update to gedit-3.36.1. Part of #13244.
[renodr] - Added uchardet. Fixes #13318.
[renodr] - Added amtk. Fixes #13317.
{renodr] - Added tepl. Fixes #13316.
March 26th, 2020
March 25th, 2020
[renodr] - Update to libsoup-2.70.0. Part of #13244.
[renodr] - Update to glib-networking-2.64.0. Part of #13244.
[renodr] - Update to gsettings-desktop-schemas-3.36.0. Part of #13241.
[renodr] - Update to pipewire-0.3.1. Part of #13244.
[bdubbs] - Update to sane-frontends-1.0.14. Fixes #13303.
[bdubbs] - Update to libwacom-1.3. Fixes #13305.
[bdubbs] - Remove a2ps and psutils. Fixes #13300.
[bdubbs] - Update to thunar-1.8.14. Fixes #13304.
[bdubbs] - Update to llvm-10.0.0. Fixes #13302.
March 24th, 2020
March 23rd, 2020
[bdubbs] - Update to thunar-1.8.13. Fixes #13298.
[bdubbs] - Update to thunderbird-68.6.0. Fixes #13264.
[bdubbs] - Update to git-2.26.0. Fixes #13297.
[bdubbs] - Update to glibmm-2.64.2. Fixes #13296.
[bdubbs] - Update to ghostscript-9.52. Fixes #13265.
[bdubbs] - Update to NetworkManager-1.22.10. Fixes #13261.
[bdubbs] - Update to cryptsetup-2.3.1. Fixes #13261.
March 22nd, 2020
March 21st, 2020
[renodr] - Update to libreoffice-<IP_ADDRESS>. Fixes #13201.
[ken] - Update to dvisvgm-2.9.1. Fixes #13268.
[bdubbs] - Update to Business-ISSN-1.004 (Perl Module). Fixes #13283.
[bdubbs] - Update to gmime-3.2.7. Fixes #13292.
[bdubbs] - Update to pangomm-2.42.1. Fixes #13291.
[bdubbs] - Update to cmake-3.17.0. Fixes #13290.
[bdubbs] - Update to cbindgen-0.13.2. Fixes #13289.
[bdubbs] - Update to xscreensaver-5.44. Fixes #13288.
[bdubbs] - Update to gnupg-2.2.20. Fixes #13287.
[bdubbs] - Update to bind9 and bind 9.16.1. Fixes #13286.
[bdubbs] - Update to php-7.4.4. Fixes #13285.
[bdubbs] - Update to PyYAML-5.3.1 (Python Module). Fixes #13284.
[bdubbs] - Update to libinput-1.15.4. Fixes #13281.
[renodr] - Update to gcc-9.3.0. Fixes #13260.
March 19th, 2020
March 18th, 2020
March 17th, 2020
[bdubbs] - Update to icewm-1.6.5. Fixes #13274.
[bdubbs] - Update to bluez-5.54. Fixes #13273.
[bdubbs] - Update to libqmi-1.24.8. Fixes #13272.
[ken] - Adjust seamonkey-2.53.0 to build with rustc-1.39.0. Fixes #13271.
[ken] - Update to librsvg-2.48.0, and hence update to rustc-1.39.0. Fixes #13230.
March 16th, 2020
March 15th, 2020
[bdubbs] - Update to curl-7.69.1. Fixes #13259.
[bdubbs] - Update to Archive-Zip-1.68 (Perl Module). Fixes #13262.
[bdubbs] - Update to vala-0.48.1. Fixes #13258.
[bdubbs] - Update to libuv-v1.35.0. Fixes #13257.
[bdubbs] - Update to icu-66_1. Fixes #13256.
[bdubbs] - Update to webkitgtk-2.28.0. Fixes #13253.
[bdubbs] - Update to SDL2-2.0.12. Fixes #13254.
March 12th, 2020
[pierre] - Update to elogind-243.7 again (stealth update). Fixes #13154.
March 10th, 2020
[ken] - Update to firefox-68.6.0 (security fixes). Fixes #13250.
[bdubbs] - Update to cogl-1.22.6. Fixes #13252.
[bdubbs] - Update to clutter-1.26.4. Fixes #13251.
[bdubbs] - Update to xfce4-power-manager-1.6.6. Fixes #13249.
[bdubbs] - Update to adwaita-icon-theme-3.36.0. Fixes #13248.
[bdubbs] - Update to guile-3.0.1. Fixes #13246.
[bdubbs] - Update to libical-3.0.8. Fixes #13238.
[bdubbs] - Update to gobject-introspection-1.64.0. Fixes #13237.
March 9th, 2020
[ken] - Update to asymptote-2.64. Fixes #13220.
[bdubbs] - Update to pygobject-3.36.0. Fixes #13247.
[bdubbs] - Update to Pygments-2.6.1. Fixes #13245.
[bdubbs] - Update to pyatspi-2.36.0. Fixes #13239.
[bdubbs] - Update to at-spi2-core-2.36.0. Fixes #13240.
[bdubbs] - Update to xfburn-0.6.2. Fixes #13236.
[timtas] - Update to dovecot-2.3.10. Fixes #13233.
March 8th, 2020
[dj] - Update to make-ca-1.7.
March 7th, 2020
March 5th, 2020
[bdubbs] - Update to mercurial-5.3.1. Fixes #13226.
[bdubbs] - Update to cmake-3.16.5. Fixes #13225.
[bdubbs] - Update to glib-2.64.0. Fixes #13224.
[pierre] - Update to wireshark-3.2.2. Fixes #13193.
[pierre] - Update to elogind-243.7. Fixes #13154.
[pierre] - Add a patch for mutter to allow building with mesa-20.x.
March 4th, 2020
[bdubbs] - Update to bind-utils and bind-9.16.0. Fixes #13170.
[bdubbs] - Update to sg3_utils-1.45. Fixes #13216.
[bdubbs] - Update to curl-7.69.0. Fixes #13223.
[bdubbs] - Update to ntp-4.2.8p14. Fixes #13221.
[bdubbs] - Update to vala-0.48.0. Fixes #13219.
[bdubbs] - Update to fribidi-1.0.9. Fixes #13215.
[bdubbs] - Update to php-7.4.3. Fixes #13176.
[bdubbs] - Update to cryptsetup-2.3.0. Fixes #13198.
[bdubbs] - Update to NetworkManager-1.22.8. Fixes #13159.
[bdubbs] - Update to glib-2.62.5. Fixes #13158.
[renodr] - Update to qca-2.3.0. Fixes #13189.
[renodr] - Update to poppler-0.86.1. Fixes #13204.
[pierre] - Add a patch for cogl to allow building with mesa-20.x.
March 3rd, 2020
March 2nd, 2020
[bdubbs] - Update to libinput-1.15.2. Fixes #13171.
[bdubbs] - Update to libevdev-1.9.0. Fixes #13212.
[bdubbs] - Update to xkbcomp-1.4.3 (Xorg App). Fixes #13174.
[bdubbs] - Update to mesa-20.0.0. Fixes #13172.
[bdubbs] - Update to wayland-protocols-1.20. Fixes #13208.
[bdubbs] - Update to libxcb-1.14. Fixes #13184.
[bdubbs] - Update to xcb-proto-1.14. Fixes #13183.
[bdubbs] - Update to Mako-1.1.2 (Python Module). Fixes #13214.
[bdubbs] - Update to pycairo-1.19.1 (Python Module). Fixes #13177.
[bdubbs] - Update to pycryptodome-3.9.7 (Python Module). Fixes #13182.
[bdubbs] - Update to decorator-4.4.2 (Python Module). Fixes #13210.
[bdubbs] - Update to Python-3.8.2. Fixes #13190.
[bdubbs] - Update to libcap-2.33. Fixes #13143.
[bdubbs] - Update to rpcsvc-proto-1.4.1. Fixes #13168.
[renodr] - Update to alsa-lib, alsa-plugins, alsa-tools, and alsa-utils 1.2.2. Fixes #13173.
[renodr] - Update to unbound-1.10.0. Fixes #13178.
[renodr] - Update to at-spi2-atk-2.34.2. Fixes #13207.
[renodr] - Update to logrotate-3.16.0. Fixes #13205>.
[renodr] - Update to libqmi-1.24.4. Fixes #13200.
[renodr] - Update to libgdata-0.17.12. Fixes #13197.
[renodr] - Update to libmypaint-1.5.1. Fixes #13187.
[renodr] - Update to ibus-1.5.22. Fixes #13181.
[renodr] - Update to avahi-0.8. Fixes #13164.
[renodr] - Update to git-2.25.1. Fixes #13155.
[bdubbs] - Update to ed-1.16. Fixes #13185.
[bdubbs] - Update to List-AllUtils-0.16 (Perl Module). Fixes #13209.
[renodr] - Update to lxsession-0.5.5. Fixes #13211.
[renodr] - Update to totem-pl-parser-3.26.5. Fixes #13203.
[renodr] - Update to libsoup-2.68.4. Fixes #13188.
[renodr] - Update to enchant-2.2.8. Fixes #13199.
[renodr] - Update to geoclue-2.5.6. Fixes #13194.
[renodr] - Update to libnotify-0.7.9. Fixes #13192.
[renodr] - Update to libgusb-0.3.4. Fixes #13175.
March 1st, 2020
[bdubbs] - Release of BLFS-9.1.
Last updated on 2020-08-31 19:46:15 -0700


Writing out some advice for our GSOC student on XML parsing. (Now filed as RNeXML/#11
Here is some quick background on different ways we might go about extracting NeXML into an R object we want to work with. We can use S4 classes, R’s native data.frame
and list
types, or extract specific terms of interest with xpath. I illustrate each of these below using the example “trees.xml” in your repository.
It would be good to decide on which strategy you want. As you seem to be leaning to the S4 already, note how I have made the slot labels correspond exactly to the attribute and node labels of the NeXML. This lets us use the xmlToS4
method:
Using S4 classes
We can define S4 class structures to correspond to the elements we want to extract. Elements omitted from our definition will be ignored.
setClass("node",
representation(id = "character",
label = "character",
otu = "character",
about = "character",
meta = "meta"))
Note that class “meta” is not yet defined, we will define it below. Note also that we could omit any slots we don’t care about, and they would simply be ignored. (Try deleting the meta
line, or the about
line.)
setClass("edge",
representation(source = "character",
target = "character",
id = "character",
length = "numeric"))
setClass("meta",
representation(id ="character",
property="character",
content="logical",
'xsi:type'="character",
datatype="character"))
setAs("XMLInternalElementNode", "meta", function(from) xmlToS4(from))
In order for xmlToS4
to work on nodes, I need the Coercion method for meta
too, defined above. We are now ready to rock and roll:
require(XML)
doc <- xmlParse("tests/examples/trees.xml")
edges <- getNodeSet(doc, "//x:tree[@id = 'tree1']/x:edge", namespaces="x")
edges <- lapply(edges, xmlToS4)
nodes <- getNodeSet(doc, "//x:tree[@id = 'tree1']/x:node", namespaces="x")
nodes <- lapply(nodes, xmlToS4)
My opinion is that we should not bother writing validator methods etc for these classes we have just defined at this time. We can already validate the XML produced against the schema, and as the class definitions follow those from the schema, we should be reasonably robust. Happy to hear counter-arguments.
Extracting Attributes or values directly by xpath query
A different route does not define class types at all, but just extracts the attributes we want. This is a bit more fast and loose.
edges = xpathSApply(doc, "//x:tree[@id = 'tree1']/x:edge", namespaces = "x", xmlAttrs)
nodes = xpathSApply(doc, "//x:tree[@id = 'tree1']/x:node", namespaces = "x",
function(x)
c(xmlGetAttr(x, "id", NA, as.character),
xmlGetAttr(x, "otu", NA, as.character)))
Coercing into standard R forms
This approach can be very quick and powerful if the data conforms to this structure.
XML:::xmlAttrsToDataFrame(getNodeSet(doc, "//x:tree[@id = 'tree1']/x:node", namespaces="x"))
XML:::xmlAttrsToDataFrame(getNodeSet(doc, "//x:tree[@id = 'tree1']/x:edge", namespaces="x"))
without XPath
We can skip over XPath based expressions by using xmlToList immediately:
nex <- xmlToList(doc)
Unfortunately, this will do some possibly unexpected things: for instance, attributes are converted to list elements (node$id
, node$otu
, etc) on simple nodes (e.g. <nodes>
without a <meta>
node), while if they contain another node, attributes are one sub-list and the containing nodes another (e.g. node$meta
and node$.attr
, etc)
Also note that instead of xpath queries as in the xpathSApply
and getNodeSet
examples above, we can index nodes the way would lists:
e.g. xmlRoot(doc)[["trees"]][["tree"]]
instead of getNodeSet(doc, "//trees/tree")[[1]]
(note that the former returns the first <tree>
node in the <trees>
node, while the latter returns all <tree>
nodes unless we just ask for the [[1]]
So this gives us a table of all node and edge elements:
XML:::xmlAttrsToDataFrame(xmlRoot(doc)[["trees"]][["tree"]])
Which gives us:
id label root otu about source target length
1 n1 n1 true <NA> <NA> <NA> <NA> <NA>
2 n2 n2 <NA> t1 <NA> <NA> <NA> <NA>
3 n3 n3 <NA> <NA> <NA> <NA> <NA> <NA>
4 n4 n4 <NA> <NA> #n4 <NA> <NA> <NA>
5 n5 n5 <NA> t3 <NA> <NA> <NA> <NA>
6 n6 n6 <NA> t2 <NA> <NA> <NA> <NA>
7 n7 n7 <NA> <NA> <NA> <NA> <NA> <NA>
8 n8 n8 <NA> t5 <NA> <NA> <NA> <NA>
9 n9 n9 <NA> t4 <NA> <NA> <NA> <NA>
10 e1 <NA> <NA> <NA> <NA> n1 n3 0.34534
11 e2 <NA> <NA> <NA> <NA> n1 n2 0.4353
12 e3 <NA> <NA> <NA> <NA> n3 n4 0.324
13 e4 <NA> <NA> <NA> <NA> n3 n7 0.3247
14 e5 <NA> <NA> <NA> <NA> n4 n5 0.234
15 e6 <NA> <NA> <NA> <NA> n4 n6 0.3243
16 e7 <NA> <NA> <NA> <NA> n7 n8 0.32443
17 e8 <NA> <NA> <NA> <NA> n7 n9 0.2342
Sometimes this notation is cleaner than the xpath, sort of up to you.


#
Redux FAQ: React Redux#
Table of Contents-
Redux FAQ: React Redux
- Table of Contents
-
React Redux
- Why should I use React-Redux?
- Why isn't my component re-rendering, or my mapStateToProps running?
- Why is my component re-rendering too often?
-
How can I speed up my
mapStateToProps
? -
Why don't I have
this.props.dispatch
available in my connected component? - Should I only connect my top component, or can I connect multiple components in my tree?
- How does Redux compare to the React Context API?
#
React Redux#
Why should I use React-Redux?Redux itself is a standalone library that can be used with any UI layer or framework, including React, Angular, Vue, Ember, and vanilla JS. Although Redux and React are commonly used together, they are independent of each other.
If you are using Redux with any kind of UI framework, you will normally use a "UI binding" library to tie Redux together with your UI framework, rather than directly interacting with the store from your UI code.
React-Redux is the official Redux UI binding library for React. If you are using Redux and React together, you should also use React-Redux to bind these two libraries.
While it is possible to write Redux store subscription logic by hand, doing so would become very repetitive. In addition, optimizing UI performance would require complicated logic.
The process of subscribing to the store, checking for updated data, and triggering a re-render can be made more generic and reusable. A UI binding library like React-Redux handles the store interaction logic, so you don't have to write that code yourself.
Overall, React-Redux encourages good React architecture, and implements complex performance optimizations for you. It is also kept up-to-date with the latest API changes from Redux and React.
#
Further InformationDocumentation
#
Why isn't my component re-rendering, or my mapStateToProps running?
Accidentally mutating or modifying your state directly
is by far the most common reason why components do not
re-render after an action has been dispatched. Redux
expects that your reducers will update their state
“immutably”, which effectively means always making
copies of your data, and applying your changes to the
copies. If you return the same object from a reducer,
Redux assumes that nothing has been changed, even if
you made changes to its contents. Similarly, React
Redux tries to improve performance by doing shallow
equality reference checks on incoming props in
shouldComponentUpdate
, and if all
references are the same,
shouldComponentUpdate
returns
false
to skip actually updating your
original component.
It's important to remember that whenever you
update a nested value, you must also return new copies
of anything above it in your state tree. If you have
state.a.b.c.d
, and you want to make an
update to d
, you would also need to
return new copies of c
, b
,
a
, and state
. This
state tree mutation diagram
demonstrates how a change deep in a tree requires
changes all the way up.
Note that “updating data immutably” does not mean that you must use Immer, although that is certainly an option. You can do immutable updates to plain JS objects and arrays using several different approaches:
-
Copying objects using functions like
Object.assign()
or_.extend()
, and array functions such asslice()
andconcat()
- The array spread operator in ES6, and the similar object spread operator that is proposed for a future version of JavaScript
- Utility libraries that wrap immutable update logic into simpler functions
#
Further informationDocumentation
- Troubleshooting
- React Redux: Troubleshooting
- Recipes: Using the Object Spread Operator
- Recipes: Structuring Reducers - Prerequisite Concepts
- Recipes: Structuring Reducers - Immutable Update Patterns
Articles
Discussions
- #1262: Immutable data + bad performance
- React Redux #235: Predicate function for updating component
- React Redux #291: Should mapStateToProps be called every time an action is dispatched?
- Stack Overflow: Cleaner/shorter way to update nested state in Redux?
- Gist: state mutations
#
Why is my component re-rendering too often?
React Redux implements several optimizations to ensure
your actual component only re-renders when actually
necessary. One of those is a shallow equality check on
the combined props object generated by the
mapStateToProps
and
mapDispatchToProps
arguments passed to
connect
. Unfortunately, shallow equality
does not help in cases where new array or object
instances are created each time
mapStateToProps
is called. A typical
example might be mapping over an array of IDs and
returning the matching object references, such as:
Even though the array might contain the exact same object references each time, the array itself is a different reference, so the shallow equality check fails and React Redux would re-render the wrapped component.
The extra re-renders could be resolved by saving the
array of objects into the state using a reducer,
caching the mapped array using
Reselect, or implementing
shouldComponentUpdate
in the component by
hand and doing a more in-depth props comparison using
a function such as _.isEqual
. Be careful
to not make your custom
shouldComponentUpdate()
more expensive
than the rendering itself! Always use a profiler to
check your assumptions about performance.
For non-connected components, you may want to check
what props are being passed in. A common issue is
having a parent component re-bind a callback inside
its render function, like
<Child onClick={this.handleClick.bind(this)}
/>
. That creates a new function reference every time
the parent re-renders. It's generally good
practice to only bind callbacks once in the parent
component's constructor.
#
Further informationDocumentation
Articles
- A Deep Dive into React Perf Debugging
- React.js pure render performance anti-pattern
- Improving React and Redux Performance with Reselect
- Encapsulating the Redux State Tree
- React/Redux Links: React/Redux Performance
Discussions
Libraries
mapStateToProps
?#
How can I speed up my
While React Redux does work to minimize the number of
times that your mapStateToProps
function
is called, it's still a good idea to ensure that
your mapStateToProps
runs quickly and
also minimizes the amount of work it does. The common
recommended approach is to create memoized “selector”
functions using
Reselect. These selectors can be combined and composed
together, and selectors later in a pipeline will only
run if their inputs have changed. This means you can
create selectors that do things like filtering or
sorting, and ensure that the real work only happens if
needed.
#
Further informationDocumentation
Articles
Discussions
this.props.dispatch
available in my
connected component?#
Why don't I have
The connect()
function takes two primary
arguments, both optional. The first,
mapStateToProps
, is a function you
provide to pull data from the store when it changes,
and pass those values as props to your component. The
second, mapDispatchToProps
, is a function
you provide to make use of the store's
dispatch
function, usually by creating
pre-bound versions of action creators that will
automatically dispatch their actions as soon as they
are called.
If you do not provide your own
mapDispatchToProps
function when calling
connect()
, React Redux will provide a
default version, which simply returns the
dispatch
function as a prop. That means
that if you do provide your own function,
dispatch
is not automatically
provided. If you still want it available as a prop,
you need to explicitly return it yourself in your
mapDispatchToProps
implementation.
#
Further informationDocumentation
Discussions
- React Redux #89: can i wrap multi actionCreators into one props with name?
- React Redux #145: consider always passing down dispatch regardless of what mapDispatchToProps does
- React Redux #255: this.props.dispatch is undefined if using mapDispatchToProps
- Stack Overflow: How to get simple dispatch from this.props using connect w/ Redux?
#
Should I only connect my top component, or can I connect multiple components in my tree?Early Redux documentation advised that you should only have a few connected components near the top of your component tree. However, time and experience has shown that such a component architecture generally requires a few components to know too much about the data requirements of all their descendants, and forces them to pass down a confusing number of props.
The current suggested best practice is to categorize your components as “presentational” or “container” components, and extract a connected container component wherever it makes sense:
Emphasizing “one container component at the top” in Redux examples was a mistake. Don't take this as a maxim. Try to keep your presentation components separate. Create container components by connecting them when it's convenient. Whenever you feel like you're duplicating code in parent components to provide data for same kinds of children, time to extract a container. Generally as soon as you feel a parent knows too much about “personal” data or actions of its children, time to extract a container.
In fact, benchmarks have shown that more connected components generally leads to better performance than fewer connected components.
In general, try to find a balance between understandable data flow and areas of responsibility with your components.
#
Further informationDocumentation
Articles
- Presentational and Container Components
- High-Performance Redux
- React/Redux Links: Architecture - Redux Architecture
- React/Redux Links: Performance - Redux Performance
Discussions
- Twitter: emphasizing “one container” was a mistake
- #419: Recommended usage of connect
- #756: container vs component?
- #1176: Redux+React with only stateless components
- Stack Overflow: can a dumb component use a Redux container?
#
How does Redux compare to the React Context API?Similarities
Both Redux and React's Context API deal with "prop drilling". That said, they both allow you to pass data without having to pass the props through multiple layers of components. Internally, Redux uses the React context API that allows it to pass the store along your component tree.
Differences
With Redux, you get the the power of Redux Dev Tools Extension. It automatically logs every action your app performs, and it allows time traveling – you can click on any past action and jump to that point in time. Redux also supports the concept of middleware, where you may bind customized function calls on every action dispatch. Such examples include an automatic event logger, interception of certain actions, etc.
With React's Context API, you deal with a pair of components speaking only to each other. This gives you nice isolation between irrelevant data. You also have the flexibility of how you may use the data with your components, i.e., you can provide the state of a parent component, and you may pass context data as props to wrapped components.
There is a key difference in how Redux and React's Context treat data. Redux maintains the data of your whole app in a giant, stateful object. It deduces the changes of your data by running the reducer function you provide, and returns the next state that corresponds to every action dispatched. React Redux then optimizes component rendering and makes sure that each component re-renders only when the data it needs change. Context, on the other hand, does not hold any state. It is only a conduit for the data. To express changes in data you need to rely on the state of a parent component.


| I l@ve RuBoard |
1.10 Object-Oriented ProgrammingClasses are Python's main OOP tool. They support multiple instances, attribute inheritance, and operator overloading. 1.10.1 Classes and Instances<IP_ADDRESS> Class objects provide default behavior
<IP_ADDRESS> Instance objects are generated from classes
<IP_ADDRESS> Inheritance rules
1.10.2 Pseudo-Private AttributesBy default, all attribute names in modules and classes are visible everywhere. Special conventions allow some limited data hiding, but are mostly designed to prevent name collisions.See also Section <IP_ADDRESS> in Section 1.7. <IP_ADDRESS> Module privatesNames in modules with a single underscore (e.g., _X), and those not listed on the module's _ _all_ _ list, are not copied over when a client uses from module import *. This is not strict privacy, though, as such names can still be accessed apart from the from..* statement. <IP_ADDRESS> Class privatesIn Python 1.5 and later, names anywhere within class statements with two leading underscores only (e.g., _ _X) are mangled at compile time to include the enclosing class name as a prefix (e.g., _Class_ _X). The added class-name prefix localizes such names to the enclosing class and thus makes them distinct in both the self instance object and the class hierarchy. This especially helps to avoid clashes that arise in the single instance object at the bottom of the inheritance chain (all assignments to self.attr anywhere in a framework change the single instance namespace). This is not strict privacy, though, as such attributes can still be accessed via the mangled name. |
| I l@ve RuBoard |


{{ serviceName.embassyFees }}
Pay for a service provided by a British Embassy in another country, such as legalising a signature or solmenising a marriage.
These fees are also known as consular fees.
It usually takes around 5 minutes to go through the payment process.


Eye in Psycho
2014-06-02
In Psycho, Hitchcock was not satisfied with just displaying ordinary people under severe circumstances. Compared with Vertigo, characters in Psycho shows psychiatric symptoms in different aspects. In order to express these extreme states of minds, Hitchcock used some symbols over and over again like a tireless carver.
Hitchcock tended to use the camera shot as a ubiquitous voyeur. Eye is a simple even crude intermedium to cover the immortal watch. In some uptight scenes like Marion’s drive on the way off Phoenix, camera shotted straightly into her eyes, which is counter to what we usually do. The last scene of Marion was also frozen on her eyes, which fills nearly 100 percent of the screen.
In addition, the spyhole on the wall in Bate’ Motel looks like a huge eye. Although Norman’s witness led to his mother’s death 10 years before, he kept the status as a voyeur up to now. The hole as a distorted eye revealed the dark side of Norman Bates.
In contrast, Norman’s sight was gentle and shy, even lovable to some extent. From the policeman (or psychiatrist)’s statement near the end of the movie, we know that Norman’s personality was suppressed by his mother’s all the time. So his eyes looks wandering in front of the camera.
It’s interesting that the other figure, Marion, was just escaped from the similar plight. On the very beginning of the film, Marion laid on the bed in a posture of obedience. When she went to work, she had to bend to Mr. Cassidy’s superiority. These scenes implies that Marion was also confined in the role of obedience as well as Norman. These two characters were both struggling to get rid of the feminine temperament. In motel the comparatively closed situation, there would be an inevitable conflict between the two.
In ancient Egyptian culture, the Eye of Horus is a symbol of protection and power. The eye is personified in a goddess, Wadjet. Similarly, eyes in other cultures, like the Eye of Providence, represent the all-seeing God, or some else powerful deities. From this aspect, the eye of repeated occurrence in Psycho may imply the imbalance of power between the two conflicting characters. In some scenes it’s an accomplice of the crime, in others it’s a sign of the dark subconsciousness of the twisted figures.
At the end of the movie, the camera followed the policeman with a blanket moving into the interrogation room. The background is a flat wall, and Norman was shotted abruptly from head to heel. As the camera moved closer, Norman’s eyes dominated the screen gradually. At first he looked down in anguish, then his facial expression eased up and begun staring at the camera. In Psycho, it’s the first time that the audiences have a chance to look straightly into Norman’s eyes. The eyesight as well as the aside revealed the deeper part of his thought consciousness, and as an audience, we have to face the schismatic and lunatic minds of Bates. We audiences are no more voyeurs but inexistent watchers in this scene.
“They're probably watching me. Well, let them. Let them see what kind of a person I am. I'm not even going to swat that fly. I hope they are watching... they'll see. They'll see and they'll know, and they'll say, "Why, she wouldn't even harm a fly..."
Well, the remaining personality on Norman was succumbed to the more powerful eyes at last.


VexFlow - Copyright (c) Mohit Muthanna 2010. @author Mohit Cheppudira @author Greg Ristow (modifications)
This file implements accidentals as modifiers that can be attached to notes. Support is included for both western and microtonal accidentals.
See tests/accidental_tests.js
for usage examples.
import { Vex } from './vex';
import { Fraction } from './fraction';
import { Flow } from './tables';
import { Music } from './music';
import { Modifier } from './modifier';
import { Glyph } from './glyph';
To enable logging for this class. Set Vex.Flow.Accidental.DEBUG
to true
.
function L(...args) { if (Accidental.DEBUG) Vex.L('Vex.Flow.Accidental', args); }
const getGlyphWidth = glyph => glyph.getMetrics().width;
An Accidental
inherits from Modifier
, and is formatted within a
ModifierContext
.
export class Accidental extends Modifier {
static get CATEGORY() { return 'accidentals'; }
Arrange accidentals inside a ModifierContext.
static format(accidentals, state) {
const noteheadAccidentalPadding = 1;
const leftShift = state.left_shift + noteheadAccidentalPadding;
const accidentalSpacing = 3;
If there are no accidentals, we needn’t format their positions
if (!accidentals || accidentals.length === 0) return;
const accList = [];
let prevNote = null;
let shiftL = 0;
First determine the accidentals’ Y positions from the note.keys
for (let i = 0; i < accidentals.length; ++i) {
const acc = accidentals[i];
const note = acc.getNote();
const stave = note.getStave();
const props = note.getKeyProps()[acc.getIndex()];
if (note !== prevNote) {
Iterate through all notes to get the displaced pixels
for (let n = 0; n < note.keys.length; ++n) {
shiftL = Math.max(note.getLeftDisplacedHeadPx(), shiftL);
}
prevNote = note;
}
if (stave !== null) {
const lineSpace = stave.options.spacing_between_lines_px;
const y = stave.getYForLine(props.line);
const accLine = Math.round(y / lineSpace * 2) / 2;
accList.push({ y, line: accLine, shift: shiftL, acc, lineSpace });
} else {
accList.push({ line: props.line, shift: shiftL, acc });
}
}
Sort accidentals by line number.
accList.sort((a, b) => b.line - a.line);
FIXME: Confusing name. Each object in this array has a property called line
.
So if this is a list of lines, you end up with: line.line
which is very awkward.
const lineList = [];
amount by which all accidentals must be shifted right or left for stem flipping, notehead shifting concerns.
let accShift = 0;
let previousLine = null;
Create an array of unique line numbers (lineList) from accList
for (let i = 0; i < accList.length; i++) {
const acc = accList[i];
if this is the first line, or a new line, add a lineList
if (previousLine === null || previousLine !== acc.line) {
lineList.push({
line: acc.line,
flatLine: true,
dblSharpLine: true,
numAcc: 0,
width: 0,
});
}
if this accidental is not a flat, the accidental needs 3.0 lines lower clearance instead of 2.5 lines for b or bb. FIXME: Naming could use work. acc.acc is very awkward
if (acc.acc.type !== 'b' && acc.acc.type !== 'bb') {
lineList[lineList.length - 1].flatLine = false;
}
if this accidental is not a double sharp, the accidental needs 3.0 lines above
if (acc.acc.type !== '##') {
lineList[lineList.length - 1].dblSharpLine = false;
}
Track how many accidentals are on this line:
lineList[lineList.length - 1].numAcc++;
Track the total x_offset needed for this line which will be needed for formatting lines w/ multiple accidentals:
width = accidental width + universal spacing between accidentals
lineList[lineList.length - 1].width += acc.acc.getWidth() + accidentalSpacing;
if this accShift is larger, use it to keep first column accidentals in the same line
accShift = acc.shift > accShift ? acc.shift : accShift;
previousLine = acc.line;
}
Default to a classic triangular layout (middle accidental farthest left), but follow exceptions as outlined in G. Read’s Music Notation and Elaine Gould’s Behind Bars.
Additionally, this implements different vertical collision rules for flats (only need 2.5 lines clearance below) and double sharps (only need 2.5 lines of clearance above or below).
Classic layouts and exception patterns are found in the ‘tables.js’ in ‘Vex.Flow.accidentalColumnsTable’
Beyond 6 vertical accidentals, default to the parallel ascending lines approach, using as few columns as possible for the verticle structure.
TODO (?): Allow column to be specified for an accidental at run-time?
let totalColumns = 0;
establish the boundaries for a group of notes with clashing accidentals:
for (let i = 0; i < lineList.length; i++) {
let noFurtherConflicts = false;
const groupStart = i;
let groupEnd = i;
while (groupEnd + 1 < lineList.length && !noFurtherConflicts) {
if this note conflicts with the next:
if (this.checkCollision(lineList[groupEnd], lineList[groupEnd + 1])) {
include the next note in the group:
groupEnd++;
} else {
noFurtherConflicts = true;
}
}
Gets an a line from the lineList
, relative to the current group
const getGroupLine = (index) => lineList[groupStart + index];
const getGroupLines = (indexes) => indexes.map(getGroupLine);
const lineDifference = (indexA, indexB) => {
const [a, b] = getGroupLines([indexA, indexB]).map(item => item.line);
return a - b;
};
const notColliding = (...indexPairs) =>
indexPairs
.map(getGroupLines)
.every(lines => !this.checkCollision(...lines));
Set columns for the lines in this group:
const groupLength = groupEnd - groupStart + 1;
Set the accidental column for each line of the group
let endCase = this.checkCollision(lineList[groupStart], lineList[groupEnd]) ? 'a' : 'b';
switch (groupLength) {
case 3:
if (endCase === 'a' && lineDifference(1, 2) === 0.5 && lineDifference(0, 1) !== 0.5) {
endCase = 'second_on_bottom';
}
break;
case 4:
if (notColliding([0, 2], [1, 3])) {
endCase = 'spaced_out_tetrachord';
}
break;
case 5:
if (endCase === 'b' && notColliding([1, 3])) {
endCase = 'spaced_out_pentachord';
if (notColliding([0, 2], [2, 4])) {
endCase = 'very_spaced_out_pentachord';
}
}
break;
case 6:
if (notColliding([0, 3], [1, 4], [2, 5])) {
endCase = 'spaced_out_hexachord';
}
if (notColliding([0, 2], [2, 4], [1, 3], [3, 5])) {
endCase = 'very_spaced_out_hexachord';
}
break;
default:
break;
}
let groupMember;
let column;
If the group contains more than seven members, use ascending parallel lines of accidentals, using as few columns as possible while avoiding collisions.
if (groupLength >= 7) {
First, determine how many columns to use:
let patternLength = 2;
let collisionDetected = true;
while (collisionDetected === true) {
collisionDetected = false;
for (let line = 0; line + patternLength < lineList.length; line++) {
if (this.checkCollision(lineList[line], lineList[line + patternLength])) {
collisionDetected = true;
patternLength++;
break;
}
}
}
Then, assign a column to each line of accidentals
for (groupMember = i; groupMember <= groupEnd; groupMember++) {
column = ((groupMember - i) % patternLength) + 1;
lineList[groupMember].column = column;
totalColumns = (totalColumns > column) ? totalColumns : column;
}
Otherwise, if the group contains fewer than seven members, use the layouts from the accidentalsColumnsTable housed in tables.js.
} else {
for (groupMember = i; groupMember <= groupEnd; groupMember++) {
column = Flow.accidentalColumnsTable[groupLength][endCase][groupMember - i];
lineList[groupMember].column = column;
totalColumns = (totalColumns > column) ? totalColumns : column;
}
}
Increment i to the last note that was set, so that if a lower set of notes does not conflict at all with this group, it can have its own classic shape.
i = groupEnd;
}
This keeps columns aligned, even if they have different accidentals within them which sometimes results in a larger x_offset than is an accidental might need to preserve the symmetry of the accidental shape.
Neither A.C. Vinci nor G. Read address this, and it typically only happens in music with complex chord clusters.
TODO (?): Optionally allow closer compression of accidentals, instead of forcing parallel columns.
track each column’s max width, which will be used as initial shift of later columns:
const columnWidths = [];
const columnXOffsets = [];
for (let i = 0; i <= totalColumns; i++) {
columnWidths[i] = 0;
columnXOffsets[i] = 0;
}
columnWidths[0] = accShift + leftShift;
columnXOffsets[0] = accShift + leftShift;
Fill columnWidths with widest needed x-space; this is what keeps the columns parallel.
lineList.forEach(line => {
if (line.width > columnWidths[line.column]) columnWidths[line.column] = line.width;
});
for (let i = 1; i < columnWidths.length; i++) {
this column’s offset = this column’s width + previous column’s offset
columnXOffsets[i] = columnWidths[i] + columnXOffsets[i - 1];
}
const totalShift = columnXOffsets[columnXOffsets.length - 1];
Set the xShift for each accidental according to column offsets:
let accCount = 0;
lineList.forEach(line => {
let lineWidth = 0;
const lastAccOnLine = accCount + line.numAcc;
handle all of the accidentals on a given line:
for (accCount; accCount < lastAccOnLine; accCount++) {
const xShift = (columnXOffsets[line.column - 1] + lineWidth);
accList[accCount].acc.setXShift(xShift);
keep track of the width of accidentals we’ve added so far, so that when we loop, we add space for them.
lineWidth += accList[accCount].acc.getWidth() + accidentalSpacing;
L('Line, accCount, shift: ', line.line, accCount, xShift);
}
});
update the overall layout with the full width of the accidental shapes:
state.left_shift += totalShift;
}
Helper function to determine whether two lines of accidentals collide vertically
static checkCollision(line1, line2) {
let clearance = line2.line - line1.line;
let clearanceRequired = 3;
But less clearance is required for certain accidentals: b, bb and ##.
if (clearance > 0) { // then line 2 is on top
clearanceRequired = (line2.flatLine || line2.dblSharpLine) ? 2.5 : 3.0;
if (line1.dblSharpLine) clearance -= 0.5;
} else { // line 1 is on top
clearanceRequired = (line1.flatLine || line1.dblSharpLine) ? 2.5 : 3.0;
if (line2.dblSharpLine) clearance -= 0.5;
}
const collision = Math.abs(clearance) < clearanceRequired;
L('Line_1, Line_2, Collision: ', line1.line, line2.line, collision);
return collision;
}
Use this method to automatically apply accidentals to a set of voices
.
The accidentals will be remembered between all the voices provided.
Optionally, you can also provide an initial keySignature
.
static applyAccidentals(voices, keySignature) {
const tickPositions = [];
const tickNoteMap = {};
Sort the tickables in each voice by their tick position in the voice
voices.forEach(voice => {
const tickPosition = new Fraction(0, 1);
const notes = voice.getTickables();
notes.forEach(note => {
if (note.shouldIgnoreTicks()) return;
const notesAtPosition = tickNoteMap[tickPosition.value()];
if (!notesAtPosition) {
tickPositions.push(tickPosition.value());
tickNoteMap[tickPosition.value()] = [note];
} else {
notesAtPosition.push(note);
}
tickPosition.add(note.getTicks());
});
});
const music = new Music();
Default key signature is C major
if (!keySignature) keySignature = 'C';
Get the scale map, which represents the current state of each pitch
const scaleMap = music.createScaleMap(keySignature);
tickPositions.forEach(tick => {
const notes = tickNoteMap[tick];
Array to store all pitches that modified accidental states at this tick position
const modifiedPitches = [];
const processNote = (note) => {
if (note.isRest() || note.shouldIgnoreTicks()) return;
Go through each key and determine if an accidental should be applied
note.keys.forEach((keyString, keyIndex) => {
const key = music.getNoteParts(keyString.split('/')[0]);
Force a natural for every key without an accidental
const accidentalString = key.accidental || 'n';
const pitch = key.root + accidentalString;
Determine if the current pitch has the same accidental as the scale state
const sameAccidental = scaleMap[key.root] === pitch;
Determine if an identical pitch in the chord already modified the accidental state
const previouslyModified = modifiedPitches.indexOf(pitch) > -1;
Add the accidental to the StaveNote
if (!sameAccidental || (sameAccidental && previouslyModified)) {
Modify the scale map so that the root pitch has an updated state
scaleMap[key.root] = pitch;
Create the accidental
const accidental = new Accidental(accidentalString);
Attach the accidental to the StaveNote
note.addAccidental(keyIndex, accidental);
Add the pitch to list of pitches that modified accidentals
modifiedPitches.push(pitch);
}
});
process grace notes
note.getModifiers().forEach(modifier => {
if (modifier.getCategory() === 'gracenotegroups') {
modifier.getGraceNotes().forEach(processNote);
}
});
};
notes.forEach(processNote);
});
}
Create accidental. type
can be a value from the
Vex.Flow.accidentalCodes.accidentals
table in tables.js
. For
example: #
, ##
, b
, n
, etc.
constructor(type = null) {
super();
this.setAttribute('type', 'Accidental');
L('New accidental: ', type);
this.note = null;
The index
points to a specific note in a chord.
this.index = null;
this.type = type;
this.position = Modifier.Position.LEFT;
this.render_options = {
Font size for glyphs
font_scale: 38,
Length of stroke across heads above or below the stave.
stroke_px: 3,
Padding between accidental and parentheses on each side
parenLeftPadding: 2,
parenRightPadding: 2,
};
this.accidental = Flow.accidentalCodes(this.type);
if (!this.accidental) {
throw new Vex.RERR('ArgumentError', `Unknown accidental type: ${type}`);
}
Cautionary accidentals have parentheses around them
this.cautionary = false;
this.parenLeft = null;
this.parenRight = null;
this.reset();
}
reset() {
const fontScale = this.render_options.font_scale;
this.glyph = new Glyph(this.accidental.code, fontScale);
this.glyph.setOriginX(1.0);
if (this.cautionary) {
this.parenLeft = new Glyph(Flow.accidentalCodes('{').code, fontScale);
this.parenRight = new Glyph(Flow.accidentalCodes('}').code, fontScale);
this.parenLeft.setOriginX(1.0);
this.parenRight.setOriginX(1.0);
}
}
getCategory() { return Accidental.CATEGORY; }
getWidth() {
const parenWidth = this.cautionary
? (
getGlyphWidth(this.parenLeft) +
getGlyphWidth(this.parenRight) +
this.render_options.parenLeftPadding +
this.render_options.parenRightPadding
)
: 0;
return getGlyphWidth(this.glyph) + parenWidth;
}
Attach this accidental to note
, which must be a StaveNote
.
setNote(note) {
if (!note) {
throw new Vex.RERR('ArgumentError', `Bad note value: ${note}`);
}
this.note = note;
Accidentals attached to grace notes are rendered smaller.
if (this.note.getCategory() === 'gracenotes') {
this.render_options.font_scale = 25;
this.reset();
}
}
If called, draws parenthesis around accidental.
setAsCautionary() {
this.cautionary = true;
this.render_options.font_scale = 28;
this.reset();
return this;
}
Render accidental onto canvas.
draw() {
const {
context,
type, position, note, index, cautionary,
x_shift, y_shift,
glyph, parenLeft, parenRight,
render_options: { parenLeftPadding, parenRightPadding },
} = this;
this.checkContext();
if (!(note && (index != null))) {
throw new Vex.RERR('NoAttachedNote', "Can't draw accidental without a note and index.");
}
Figure out the start x
and y
coordinates for note and index.
const start = note.getModifierStartXY(position, index);
let accX = start.x + x_shift;
const accY = start.y + y_shift;
L('Rendering: ', type, accX, accY);
if (!cautionary) {
glyph.render(context, accX, accY);
} else {
Render the accidental in parentheses.
parenRight.render(context, accX, accY);
accX -= getGlyphWidth(parenRight);
accX -= parenRightPadding;
accX -= this.accidental.parenRightPaddingAdjustment;
glyph.render(context, accX, accY);
accX -= getGlyphWidth(glyph);
accX -= parenLeftPadding;
parenLeft.render(context, accX, accY);
}
this.setRendered();
}
}


./komodo-cli -ac_name=MBTCTEST importgatewayaddress 03e732c82d87e1ee47071f3900a79a7507b93321f5bddbb4236c10b6ca4f27e0a2
{
"result": "success",
"ImportGatewayCCAddress": "RXJT6CRAXHFuQ2UjqdxMj7EfrayF6UJpzZ",
"ImportGatewayCCBalance": 0.00010000,
"ImportGatewayNormalAddress": "RNFRho63Ddz1Rh2eGPETykrU4fA8r67S4Y",
"ImportGatewayNormalBalance": 0.00000000,
"ImportGatewayCCTokensAddress": "RAczoarH6zfAzcsY2dX6xuCm6tEU2K6tVK",
"PubkeyCCaddress(ImportGateway)": "RExKVF4RTyqPMo7tfo3Zhcfak5Kr9su5Tc",
"PubkeyCCbalance(ImportGateway)": 0.00000000,
"myCCAddress(ImportGateway)": "RExKVF4RTyqPMo7tfo3Zhcfak5Kr9su5Tc",
"myCCbalance(ImportGateway)": 0.00000000,
"myaddress": "RTQ7GDHsnHZ4njDbTjUnmm8GCkRhjifFES",
"mybalance": 0.00130000
}


Fei/Elly/Bart 22K
Dates 2019-04-26 to 2019-05-10
Max Laps 1
Lapis Cost per Lap 22000
Base 5★ in EX pool 106
All rainbows are banner units
Summary
| 1 Lap | |
|---|---|
|
Probability for
|
59.41% |
|
Probability for 7★
|
18.86% |
|
Probability for STMR
|
0.54% |
Stats per Lap
Pulls and Rates
| Pulls |
Rate
|
Banner Rate
OR
OR
|
|---|---|---|
| 41 | 1% | 3% |
| 5 | 1.667% | 5% |
| 1 | 33.333% | 100% |
Expected Value
Elly
0.83
Banner Rainbows
OR
OR
2.48
Probability for at least X units
| X |
Elly
|
Banner
OR
OR
|
|---|---|---|
| 1 | 59.407% | 100% |
| 2 | 18.859% | 77.805% |
| 3 | 3.795% | 43.82% |
| 4 | 0.542% | 18.389% |
| 5 | 0.059% | 5.997% |
| 6 | 0.005% | 1.574% |
| 7 | 0% | 0.342% |
Probability for exactly X units
| X |
Elly
|
Banner
OR
OR
|
|---|---|---|
| 0 | 40.593% | 0% |
| 1 | 40.548% | 22.195% |
| 2 | 15.064% | 33.985% |
| 3 | 3.253% | 25.43% |
| 4 | 0.483% | 12.393% |
| 5 | 0.054% | 4.423% |
| 6 | 0.005% | 1.232% |
| 7 | 0% | 0.279% |


UKCloud Limited (“UKC”) and Virtual Infrastructure Group Limited (“VIG”) (together “the Companies”) – in Compulsory Liquidation
On 25 October 2022, the Companies were placed into Liquidation with the Official Receiver appointed as Liquidator and J Robinson and A M Hudson simultaneously appointed as Special Managers to manage the liquidation process on behalf of the Official Receiver.
Further information regarding the Liquidations can be found here: https://www.gov.uk/government/news/virtual-infrastructure-group-limited-and-ukcloud-limited-information-for-creditors-and-interested-parties
Contact details:
For any general queries relating to the Liquidations please email<EMAIL_ADDRESS>For customer related queries please email<EMAIL_ADDRESS>For supplier related queries please email<EMAIL_ADDRESS>How to manipulate power states with PowerCLI
Overview
PowerCLI is a command line interface tool developed by VMware and built upon Microsoft PowerShell. The tool is designed to enable manipulation, automation, management and control over vSphere and VMware Cloud Director assets.
PowerCLI can help you realise some of the fundamental benefits of cloud computing, such as on-demand self-service. Controlling virtual machine power states programmatically, to turn off compute elements when they are no longer required, can help you save up to 70% on your compute costs by taking advantage of hourly billing. For example, you could power off an internal room-booking system when staff are at home during evenings and weekends.
This article describes the basics of how to use PowerCLI to power VMs and vApps on and off via a script, and then automate the script so that it can run unattended.
Before you begin
PowerCLI is a module for Powershell. As Powershell is a Microsoft tool, it is advised that you install it on a Windows-based environment. The latest version of PowerCLI, with all required subcomponents, is available from the VMware website at https://www.vmware.com/support/developer/PowerCLI/.
If you're not running Windows in your environment, contact UKCloud support or a UKCloud Cloud Architect for specific advice on open source alternatives that are available.
UKCloud recommends installing PowerCLI onto a reference management machine, separate from the controlled environment. This management machine should not be powered off, and could be a standalone virtual server within UKCloud, or any other Windows machine with HTTP access to the UKCloud API URL.
You may also find a good script editor useful. There are several available for free, such as PowerShell ISE, Visual Studio Code and Notepad++.
Connecting to the UKCloud cloud platform
Your PowerCLI script needs to connect to VMware Cloud Director using a privileged account, so we recommend that you create a user in the UKCloud Portal with only API Only access. This ensures that the account cannot be used to access the GUI, limiting the risk associated with an administrative account. Also, as an API Only account cannot utilise additional security features, such as Google 2-Step Verification, it is advisable to restrict the account so that it can log in only from specific IP addresses. You can configure these permissions under the Contacts section of the UKCloud Portal (for more information, see How to manage permissions for VMware Cloud Director).
You usually log in to the portal using an email address and password. For API Only access a unique user ID is generated for each UKCloud account you want to log into. You need to specify these unique identifiers when running the scripts to connect to the UKCloud environment.
You can find API credentials and URL details on the UKCloud Portal when you have logged in:
In the top right corner of the page, click your username and then select API.
The API page provides a view of your personal credentials for accessing the vCloud API.
The example in this article uses the Assured OFFICIAL, internet connected security domain. The API URL, Username and Password are unique to each security domain and you should check via the Portal before connecting. The API URL for PowerCLI requires you to omit the
https://
from the start, so for the above example the actual endpoint you would use is:vcd.portal.skyscapecloud.com
To connect to the UKCloud platform with PowerCLI:
On the reference server with PowerCLI installed, open PowerCLI:
Enter the following command:
Connect-CIServer -server "<API URL>" -Org "<ORGNAME>" -Username "<USERNAME>" -Password "<PASSWORD>"
Make sure to change the inputs (in <angled brackets>) to your unique account details.
When you've successfully connected, you can use PowerCLI commands to manipulate objects within your connected VDC organisation.
For more information on PowerCLI, there's a wide range of documentation from VMware, or generally available from a standard web search. We recommend that you start with the VMware blog pages: https://blogs.vmware.com/PowerCLI.
Using PowerCLI to control object power states
To retrieve the vApp that you want to control the power state of, use the
Get-CIVApp
cmdlet and assign the results to a variable, for example:$vApps = $Get-CIVapp
This returns all of the vApps and put them into a variable. You'll want to specify which vApp you want to change the power state of by filtering for the right name, for example:
$MyVApp = Get-CIVapp | Where {$_.Name -match "My vApp"}
This returns any vApp in your Organisation where the name contains the string
My vApp
.To control the power state, use the
Start-CIVApp
andStop-CIVAppGuest
cmdlets.Important
You should use the
-RunAsync
parameter as this will hand the task over to vCloud. If you don't use this, the task can fail if it takes too long or for any number of other issues that won't happen if vCloud is handling the task.Here is how this looks:
$MyVApp | Start-CIVApp -RunASync $MyVApp | Stop-CIVAppGuest -RunASync
You may also want to create a check so that the script turns the vApp on or off depending on it's current power state. You can do this by checking the current status and starting or stopping the vApp accordingly:
If ($MyVApp.Status -match "On"){ $MyVApp | Stop-CIVAppGuest -RunASync }else{$MyVApp | Start-CIVApp}
You may want put some measures in place to force a shutdown using
Stop-CIVapp
. For example, in the event that the vApp fails to power down after five minutes, you could have the following:If ($MyVApp.Status -match "On"){ $MyVApp | Stop-CIVAppGuest -RunASync Start-Sleep -Seconds 300 If ($MyVApp.Status -NotMatch "PoweredOff"){ $MyVApp | StopCIVapp -RunAsync } }else{$MyVApp | Start-CIVApp}
Scheduling the script
Now that you've written a script to control the power state as you intend, you'll want some method of running it at a time you have determined. To do this, you'll want to use the Windows machine you created earlier. You'll be able to use Windows Task Scheduler to facilitate this. Here, we'll go through a simple task to schedule the startup of the My vApp
vApp at 7am every weekday.
Open up Task Scheduler by going to: Start > Administrative Tools > Task Scheduler.
In Task Scheduler, select Create Task on the right:
In the Create Task dialog box, enter a Name for your task.
Under Security options, select the radio button for Run whether user is logged on or not and select Run with highest privileges.
To add a trigger to tell Task Scheduler when to run the task, select the Triggers tab, then select New at the bottom.
To make the task run on weekdays at 7am, in the New Trigger dialog box, select Weekly on the left, enter the Start time, then select just the week days:
Click OK when you're done.
To add an action to tell Task Scheduler what it needs to run at those times, select the Actions tab, then select New.
In the New Action dialog box, in the Program/script field, enter
powershell.exe
.In the Add arguments field, enter the file path to your script, using the following format (including quotation marks):
"& 'C:\<Your script folder>\<Script name>.ps1'"
Click OK to add the action, then click OK again.
You'll be prompted to enter some credentials. Enter the administrator credentials of the Windows box you're using to run the script.
Next steps
As previously mentioned, this article helps you learn how to start to manipulate power states within your cloud environment. You should use this as the first building block to get your solution realising the benefits of elastic on-demand compute with hourly billing. Why pay for a service you are only using for 60% of the time when you can achieve dramatic cost savings with a simple script?
Not all VMs and vApps are candidates for being powered down. For example, the work involved in getting a large database consistent and up and running may outweigh the cost benefits of automating the power state.
There are lots of ways you could enhance this, such as writing out to a log file to provide a more auditable trace for management, adding email alerting or tie-ins with other third party services (such as Nagios, SCCM, and so on).
If you've created something that you think others in the UKCloud community could also benefit from, then let us know so we can share it via our Knowledge Centre or GitHub repository.
Feedback
If you find a problem with this article, click Improve this Doc to make the change yourself or raise an issue in GitHub. If you have an idea for how we could improve any of our services, send an email to feedback@ukcloud.com.


Michael Nielsen is also a co-author of a beautiful book: Quantum Computation & Quantum Information. ↩


Espruino - Gateway and Deployment Interface
Deploy to Pixl.js (Guide Agent)
Deploy to Puck.js, Config A (Assembly Trigger)
Deploy to Puck.js, Config B (Assembly Trigger)
Open console to view log.
Monitoring Guide
Leubot-1
Action Recommendation(s):
Stop robot
Purge queue


Applications
Time
Store
Profile
Store
Guest's Cart
$00.00
Item
Price
Check Out
×
Checkout
Total: $00.00
Cash
Venmo
Confirm
×
Checkout
Total: $00.00


Or, see
Discord documentation
.
Webhook Request Body:
Save


Below you will find the products.
{Figma Designs Exclusively}
{Figma Designs Exclusively}
They are divided into two sections : Freebies
and Premiums.
Share it with someone who can use it.
Thanks for support. Hope you all like 'em
Share it with someone who can use it.
Thanks for support. Hope you all like 'em


Welcome to Skynet! |
To start the search on our site, choose whether you want to search information about airline companies, hotels or rent-a-car services registered on our site. |
If you want to have the possibility to book flights, hotel rooms and vehicles, as well as to access our full offer, create your account. |
|


GELATO APF- sodium fluoride aerosol, foam
Mycone Dental Supply Co., Inc DBA Keystone Industries and Deepak Products Inc
Disclaimer: This drug has not been found by FDA to be safe and effective, and this labeling has not been approved by FDA. For further information about unapproved drugs, click here.
Active Ingredient:
1.23% Fluoride Ion. Available from 1.81% Sodium Fluoride and Hydrofluoric Acid.
Purpose:
Fluoride Preventative Treatment Foam.
Indications and Usage:
This is a prescription fluoride treatment foam used to help prevent dental decay.
Warnings:
Do not swallow. Keep out of reach of children. Contents under pressure. Do not place in hot water or near radiators, stoves or other sources of heat. Do not puncture or incinerate container. Do not spray toward open flame. For Professional Use Only.
Instructions for Use:
- Remove cap from can. Prior to each use, shake can thoroughly for at least 15 seconds.
- To dispense, invert the can completely upside down. Slowly depress nozzle to dispense foam into a fluoride tray (foam will expand slightly higher than fluoride tray).
- Air dry teeth thoroughly and insert tray(s) into patient's mouth. Instruct patient to bite down and leave the tray in contact with the teeth between 1-4 minutes.
- Use a saliva ejector during treatment to minimize ingestion of product.
- Remove tray(s) and have patient expectorate.
- Instruct patient not to eat, drink or rinse for 30 minutes after treatment.
Inactive Ingredients:
Distilled Water, Flavor, Hydrofluoric Acid, Phosphoric Acid, Poloxamer, Sodium Benzoate, Sodium Laureth Sulfate, Sodium Saccharin, Triethanolamine, Xylitol, Propellant A31.
Other Information:
Store at controlled room temperature 59°-86°F (15°-30°C).
Protect from freezing.
Shake well before each use.
Invert can completely and depress nozzle to dispense.


org.apache.cocoon.matching
Interface PreparableMatcher
- All Superinterfaces:
- org.apache.avalon.framework.component.Component, Matcher
- All Known Implementing Classes:
- AbstractPreparableMatcher
- public interface PreparableMatcher
- extends Matcher
A matcher that can prepare patterns during sitemap setup for faster match at request time.
This is also a regular matcher, meaning the sitemap can decide either to prepare the pattern
or to match with a request-time evaluated pattern (for {..} substitution).
- Version:
- CVS $Revision: 1.2 $ $Date: 2002/01/07 12:39:14 $
- Author:
- Sylvain Wallez
| Fields inherited from interface org.apache.cocoon.matching.Matcher |
ROLE |
|
Method Summary |
java.util.Map |
preparedMatch(java.lang.Object preparedPattern,
java.util.Map objectModel,
org.apache.avalon.framework.parameters.Parameters parameters)
Matches the prepared pattern against some values in the object model (most often the
Request ) and returns a Map object with replacements
for wildcards contained in the pattern. |
java.lang.Object |
preparePattern(java.lang.String pattern)
Prepares a pattern in a form that allows faster match. |
| Methods inherited from interface org.apache.cocoon.matching.Matcher |
match |
preparePattern
public java.lang.Object preparePattern(java.lang.String pattern)
throws PatternException
- Prepares a pattern in a form that allows faster match. For example, a regular
expression matcher can precompile the expression and return the corresponding
object. This method is called once for each pattern used with a particular matcher
class. The returned value is then passed back as the
preparedPattern
parameter of preparedMatch(Object, Map, Parameters)
.
- Parameters:
pattern
- The pattern to prepare. Depending on the implementation the pattern
can contain wildcards or regular expressions.- Returns:
- an optimized representation of the pattern.
- Throws:
a
- PatternException
if the pattern couldn't be prepared.
preparedMatch
public java.util.Map preparedMatch(java.lang.Object preparedPattern,
java.util.Map objectModel,
org.apache.avalon.framework.parameters.Parameters parameters)
- Matches the prepared pattern against some values in the object model (most often the
Request
) and returns a Map
object with replacements
for wildcards contained in the pattern.
- Parameters:
preparedPattern
- The preparedPattern to match against, as returned by preparePattern(String)
.objectModel
- The Map
with objects of the calling environment
which can be used to select values this matchers matches against.- Returns:
- a
Map
object with replacements for wildcards/regular-expressions
contained in the pattern. If the return value is null there was no match.
Copyright © 1999-2002 Apache Software Foundation. All Rights Reserved.


Please contact me
Rockwood, Dereenaclough, Ballydehob, Cork Tel: +353 87 12345678 16 Balthasar Straße, 50670, Köln 1, Germany Tel: +49 221 123458
If you prefer please enter your details here and I'll get back to you
Do you require a brochure? Yes No
Please let me know how you found the site.