POPULARITY
Send us a Text Message.Welcome back to another episode of the Digital Forensics Now podcast! In this episode, we explore the critical need for continuous learning in the field, discuss fascinating forensic tools, showcase UFADE with its new chat capture feature, and engage in a spirited debate on the value of certifications. Get ready to expand your knowledge and stay at the forefront of this ever-evolving industry.We begin by discussing the intricacies of unconscious and conscious incompetence as outlined in Brett Shavers new article. The episode continues with a detailed demonstration of UFADE, created by Christian Peter highlighting its user-friendly interface and the new chat capture feature. The hosts walk you through the tool's capabilities, showcasing its accessibility and usefulness in digital forensics investigations. From breaking Windows logon passwords using a Raspberry Pi Zero W to exploring the distinction between exploratory and explanatory data analysis, this segment offers a wealth of knowledge and practical insights. We also touch on the value of certifications, sparking a lively debate that challenges conventional wisdom and invites listeners to question the true measure of expertise in the tech industry. Get ready to be engaged in this thought-provoking episode.Notes-DFIR Competence: Are you Truly Skilled or Just Fooling Yourself?https://www.dfir.training/blog/dfir-competence-are-you-truly-skilled-or-just-fooling-yourselfOxygen Forensics Call for Speakers at the 2024 International User Summithttps://oxygenforensics.com/en/call-for-speakers-user-summit/UFADE Updateshttps://github.com/prosch88/UFADEP4WNP1 Buildhttps://lush-seeder-8ab.notion.site/P4WNP1-Build-54ffcdbe7cdf4e74b47861e9bd80f857SANS Webcast Serieshttps://www.sans.org/webcasts/demystifying-data-conversion-binary-hexadecimal-decimal-ascii/Bitlocker on by Default Windows 11https://www.tomshardware.com/software/windows/windows-11-24h2-will-enable-bitlocker-encryption-for-everyone-happens-on-both-clean-installs-and-reinstallsChatGPT https://www.sciencedirect.com/science/article/pii/S2666281724001252?dgcid=author
This week's EYE ON NPI will stick by your side like a faithful hound- it's the BeagleBoard.org BeaglePlay® Single Board Computer (https://www.digikey.com/en/product-highlight/b/beagleboard/beagleplay). Single Board Computers (SBCs) are like tiny computers that are less powerful than desktops but much better at booting quickly and interfacing with hardware. They also tend to run Linux or BSD because it's easier to get those OS's ported to new chipsets than convincing Apple or Microsoft! This new generation of SBC from BeagleBoard builds on their prior success with the BeagleBoard (https://www.digikey.com/short/1cmb3dtf) and BeagleBone (https://www.digikey.com/short/c52dpz47) by adding a ton more interfaces and connectors so many projects can be built with no soldering. Here's a bullet list to get us started: AM6254 SoC processor 16 GB eMMC storage 2 GB DDR4 memory Supports expansion with OLDI, 4-lane CSI, and QWIIC connectors CSI for compatibility with the BeagleBone AI-654, Raspberry Pi Zero W, and compute modules Full-size HDMI connector Small size: 8 cm x 8 cm USB Type-C® with 5 V @ 3 A input connector mikroBUS connector RJ45 Ethernet connector for Gigabit Ethernet Wi-Fi 2.4 GHz and 5 GHz capabilities BLE and SubG MicroSD slot USB Type-A connector at 480 Mbit Grove connector The main processor is the TI Sitara AM6254 (https://www.digikey.com/short/507rmwr2) with quad-core 64-bit A53 and a Cortex M4 coprocessor. This chip is paired with 2 GB of DDR4 RAM and 16 GB of eMMC storage for a powerful AI-ready chipset that has tons of onboard graphics support such as 1080P HDMI and 4 lanes of OLDI/LVDS. This chip has 9x UARTS, 5x SPIs, 6x I2C's, 3x PWM modules, 3x quad encoders, and 3x CAN-FD, and of course some GPIO. Note there's no ADC or DAC - you'd use SPI to connect those externally. Note this board doesn't have a 2x20 header like a Raspberry Pi, or even the dual header strips from the BeagleBone - but in exchange it stuffs a ton of hardware support directly onto the PCB. For example, if you'd like to add a camera, there's an onboard 22-pin 0.5mm pitch CSI FPC connector that is compatible with the Pi Zero camera cables (https://www.adafruit.com/product/5211) - use that adapter to interface with any low cost Pi Camera modules or compatibles. For video output, a vertical full-sized HDMI port will connect to any monitor or display. In fact we plugged in our desktop monitor and powered the Play with a USB wall adapter, and it immediately came up with an X desktop display. Mouse and keyboard can be added via the USB 2.0 socket, a mini hub will allow multiple devices since there's only one type A port. The BeaglePlay does a great job of including everything you may want to expand your Raspberry Pi with. For example, there's a BQ32002 Real Time Clock (https://www.digikey.com/short/p0h10jbq) with a CR1220 coin cell holder right on board - normally that would have to be included as a separate module. A microSD card slot can be used for storing large amounts of data: unlike most SBCs, there's onboard 16GB eMMC so you don't have to juggle SD cards to install the OS. There's also a ton of expansion ports! For I2C, the onboard QWICC (https://www.sparkfun.com/qwiic) JST SH connector lets you use the hundreds of SparkFun sensors as well as any Adafruit Stemma QT (https://learn.adafruit.com/introducing-adafruit-stemma-qt/what-is-stemma) devices. For UART/PWM/ADC/I2C/GPIO you can use the onboard Grove connector. Finally, for networking either to the Internet or to a sensor network, there's Gigabit Ethernet, WiFi 2.4G and 5G, BLE and Sub-G networking. Yeah that's a lot! It's almost all provided by the onboard TI SimpleLink CC1352P7 (https://www.ti.com/product/CC1352P7) which boasts support for 6LoWPAN, Amazon Sidewalk, Bluetooth 5.2 Low Energy, IEEE 802.15.4, MIOTY, Proprietary 2.4 GHz, Thread, Wi-SUN NWP, Wireless M-Bus (T, S, C, N mode), Zigbee. Note LoRa is not in there, so if you need LoRa that would be added with a separate module. There's also an RJ-11 with Single-Pair Ethernet (https://blog.adafruit.com/2020/08/27/eye-on-npi-harting-single-pair-ethernet-eyeonnpi-digikey-ethernet-digikey-harting-adafruit/) which makes this a good fit to connect to industrial robotics or automation. All this hardware is available at a great price of under $100 at Digi-Key, we already picked one up and we're going to try and get Blinka working on it (https://github.com/adafruit/Adafruit_Blinka) so that all of our CircuitPython libraries will 'just run' in CPython. Especially given the ready-to-run Stemma QT / Qwiic port on the side, this is an excellent board for a powerful but solder-free configurable SBC. Digi-Key has tons of BeaglePlay's stock for immediate shipment, so order today (https://www.digikey.com/short/jpztmq3w) and you will be playing with your new BeaglePlay by tomorrow afternoon.
Link to article: https://bit.ly/3nRtQbZIF YOU BREAK YOUR BOOT0 PIN. DO NOT DM ME ASKING FOR HELP. THAT'S IT. YOU BREAK THAT PIN AND YOU CANT FLASH. YOUR CHIP IS STUCK WITH WHATEVER HWFLY PUT ON ITPre-requisites:Raspberry Pi Zero WYou may use another flasher if you desire.Pinout DiagramModchip DiagramFULL_CHIP_STOCK.binModchip Diagram, find the PA9(TX) and the PA10(RX) pins on your modchip, and do the following:Connect GPIO14(TX) on your Raspberry Pi Zero W to the PA10(RX) pin on your modchip.Connect GPIO15(RX) on your Raspberry Pi Zero W to the PA9(TX) pin on your modchip.Solder a wire to each of the following pinouts on the Raspberry Pi Zero W:3.3VGroundGPIO 14 (UART TX)GPIO 15 (UART RX)Do the following to prepare the modchip:Lift pin 44 (also known as BOOT0).You will need a way to power the chip, so you need to find two 3.3v points. It can be on a MOSFET, but it will differ based on the revision of the modchip.Connect Ground on your Raspberry Pi Zero W to the Ground pin on your modchip.Check the Modchip Diagram, find the PA9(TX) and the PA10(RX) pins on your modchip, and do the following:Connect GPIO14(TX) on your Raspberry Pi Zero W to the PA10(RX) pin on your modchip.Connect GPIO15(RX) on your Raspberry Pi Zero W to the PA9(TX) pin on your modchip.Boot your Raspberry Pi Zero W and do the following:In the terminal, type the following command, and press enter:Bash:sudo nano /boot/config.txtAdd the following line to the end of the file:INI:dtoverlay=pi3-miniuart-btPress CTRL + X to save and exit the editor.In the terminal, type the following command, and press enter:Bash:sudo nano /boot/cmdline.txtRemove the following line from the file:INI:console=serial0,115200Press CTRL + X to save and exit the editor.Restart your Raspberry Pi with this commandBash:sudo /sbin/rebootIn the terminal, type the following commands, and press enter after each command:Bash:git clone https://github.com/Pheeeeenom/stm32flash.gitcd stm32flashsudo make installNow you will flash the modchip.Note: This will remove read protection, and the modchip will wipe itself (that is what we want).In the terminal, type the following command, and press enter:Bash:stm32flash -k /dev/serial0Now to flash Spacecraft-NX Version 0.2.0, type the following, and press enter:Bash:stm32flash -v -w ./FULL_CHIP_STOCK.bin /dev/serial0Once you're done flashing your modchip, remove the wiring from the modchip, and restore the 3.3v pin on the modchip to its original position.Please post pictures of your work here to further the identification of the different board revisions!UPDATE: So it seems like stitching the spacecraft bootloader and firmware together from the repo causes unstable glitching behaviors. For now, consistent glitching behavior works with this bootload/firmware combo. This is the original file on the OLED variant chip which has 0.2.0 spacecraft. As for glitching, I'll figure it out, give me some time...unless someone else wants to hop in and reverse the differences.For now, this at least solves the 0.1.0 HWFLY gen 3 issue. More to come.UPDATE 2: This is only going to work on some HWFLY chips. Older ones use higher protection than the new revisions that seem to use the QFN FPGA. hereSupport the show (https://bit.ly/2XdAlJC)
Rambo hacks a humidifier, John is excited about linting and continuous integration, and the two discuss the most recent set of exposed App Store scams and what Apple could do to improve the situation. Also, SwiftUI jobs and minimum deployment targets. Sponsored by Funn Media: Live a healthier life with Funn Media's collection of apps for iPhone, iPad, Mac, and Apple Watch, including Calory, WaterMinder, and more. Sponsored by Kandji: A modern, cloud-based platform for centrally managing and securing your Mac, iPhone, iPad, and Apple TV devices, saving IT teams countless hours of manual work with features like one-click compliance templates and 150+ pre-built automations, apps, and workflows. Request access. Download MP3 Hosts: Gui on Twitter: @_inside John on Twitter: @johnsundell Links Raspberry Pi Zero W Arduino Bitrise SwiftLint SwiftLint’s “File Name” rule The recent set of exposed App Store scams FlickType Subscribe: 🟣 Apple Podcasts 🟠 Overcast 🟢 Spotify If you have any feedback about the show, feel free to reach out on Twitter or send us an email.
Un computer piccolissimo. Debole. Delicato. Ma che puo' funzionare a lungo, da solo, consumando pochissimo. Per fare cosa e come usarlo ? Ecco una prima emozione da condividere con voi.
bit.ly/himrkt--- Send in a voice message: https://anchor.fm/shuttfup/messageSupport this podcast: https://anchor.fm/shuttfup/support
This episode is all about greenfielding something fresh with no real consequences to your IT job: home automation. The Matts riff on HomeKit making way for Home Assistant, Raspberry Pi Zero W devices, The Z-Wave protocol, Node Red …and a slew of other home automation topics that make for a bonus extended runtime on this 46-minute edition. We're continuing the conversation WITH YOU this week at our third installment Casual Fridays: register now! Learn more at: ivoxy.com/home-automation-rebooted
Mine crypto currency with a raspberry pi zero w! Here is the link for the micro miner: http://imineblocks.com/micro-miner/ or check out his utube channel " imineblock " --- Support this podcast: https://anchor.fm/peter-woods7/support
Back in May, Erik was a last-minute guest at the 2018 Convocation of the Apostolic Johannite Church, where he gave a lecture on the Art of Memory. Here’s a link to the AJC’s recording of that lecture on their podcast, The Lectern. In this talk, I cover the history of the Art of Memory and then discuss Giordano Bruno’s role in expanding the philosophy of magical memory in the Renaissance. Part of this topic involves the power of imagination, the use of Phantasy for magical purposes, and the incredible power of images. I gave the talk using my Raspberry Pi Zero W lecture slides machine, so you can hear me fumble around with that at the beginning. Edit: The slides and notes for this talk can be found over on Arnemancy.com. Sorry I didn’t link them earlier! Support My Alchemical Bromance on the Arnemancy Patreon!
https://www.humblebundle.com/books/programmable-boards-books?partner=thetalkinggeek The Make: train is back with a bundle all about programmable boards. Get ebooks like Getting Started with the Photon, Make: Sensors, Make: Lego and Arduino Projects, Jumpstarting JavaScript, Jumpstarting the Raspberry Pi Zero W, and more. All a-board! $1 - Make getting started with Adafruit trinket Make getting started with Adafruit Flora Getting started with netduino Getting started with the Internet of Things Make things see 3D Vision with Kinect processing, Arduino, and MakerBot Make basic Arduino projects Make magazine vol 63 AI or die! $8 - Make AVR programming Make a Raspberry Pi controlled robot Make a mind-controlled Arduino robot Make things smart $10 off Make magazine print subscription "Something get to be announced!" $15 - Make Bluetooth Make fpgas How to use a breadboard! Learn Electronics with Arduino Getting started with the micro:bit Mbots for makers $20 - Getting started with the photon making things with the affordable, compact, hackable Wi-Fi module Make sensors Make action movement, light, and sound with Arduino and Raspberry Pi Make Lego and Arduino projects Getting started with sensors measure the world Electronics, Arduino, and Raspberry Pi Jump-starting JavaScript Jumpstarting the Raspberry Pi zero w Jump starting C Make getting started with Raspberry Pi 3rd Edition Make getting started with Arduino 3rd Edition Maker Ed https://www.humblebundle.com/books/programmable-boards-books?partner=thetalkinggeek
https://www.humblebundle.com/books/programmable-boards-books?partner=thetalkinggeek The Make: train is back with a bundle all about programmable boards. Get ebooks like Getting Started with the Photon, Make: Sensors, Make: Lego and Arduino Projects, Jumpstarting JavaScript, Jumpstarting the Raspberry Pi Zero W, and more. All a-board! $1 - Make getting started with Adafruit trinket Make getting started with Adafruit Flora Getting started with netduino Getting started with the Internet of Things Make things see 3D Vision with Kinect processing, Arduino, and MakerBot Make basic Arduino projects Make magazine vol 63 AI or die! $8 - Make AVR programming Make a Raspberry Pi controlled robot Make a mind-controlled Arduino robot Make things smart $10 off Make magazine print subscription "Something get to be announced!" $15 - Make Bluetooth Make fpgas How to use a breadboard! Learn Electronics with Arduino Getting started with the micro:bit Mbots for makers $20 - Getting started with the photon making things with the affordable, compact, hackable Wi-Fi module Make sensors Make action movement, light, and sound with Arduino and Raspberry Pi Make Lego and Arduino projects Getting started with sensors measure the world Electronics, Arduino, and Raspberry Pi Jump-starting JavaScript Jumpstarting the Raspberry Pi zero w Jump starting C Make getting started with Raspberry Pi 3rd Edition Make getting started with Arduino 3rd Edition Maker Ed https://www.humblebundle.com/books/programmable-boards-books?partner=thetalkinggeek
We finish the second half of our DMR Basics conversation with Kirk K6RCT. In this episode we talk about DMR networks such as Brandmeister and cBridges. We also discuss the various options for equipment available to hams from Motorola to the venerable Tytera MD-380. Jeremy is also on the road from the 2018 Midwest RepRap Festival, (think Hamvention but for 3D Printing). Our Website - http://www.hamradioworkbench.com/ Follow us on Twitter - https://twitter.com/hamworkbench Contact us for feedback and ideas - http://hamradioworkbench.com/contact Connect with us on Facebook - https://www.facebook.com/groups/hamradioworkbench/ Kirk Smith - K6RCT Twitter - https://twitter.com/k6rct DMR of Anarchy Network - http://www.dmrofanarchy.org/ Save $100 on the Digilent Analog Discovery 2 Package by using code “HamRadioWorkbench2018” in your cart prior to checkout - https://store.digilentinc.com/ham-radio-workbench-bundle/ Everything Ham Radio Podcast - http://www.everythinghamradio.com/ Midwest RepRap Festival in a nutshell - https://twitter.com/search?q=%23MRRF2018 Ultibots D300VS Delta Style 3D Printer - https://www.ultibots.com/d300vs-3d-printer-diy-kit/ Special thanks for to Noman SnoLabs Filament - https://snolabs.com/ Special thanks to Michael Hackney, the 3D Printer Whisperer - http://www.sublimelayers.com/ Take your SharkRF OpenSpot on the road with a GL.Inet Travel Router - https://www.amazon.com/gp/product/B01I92T754/ref=ox_sc_sfl_title_1?ie=UTF8&psc=1&smid=A364119SDJA4QG SharkRF OpenSpot Hotspot - http://www.grapevineamateurradio.com/store/?model_number=Openspot1 DV Mega UHF Hotspot for Raspberry PI - http://www.grapevineamateurradio.com/store/?model_number=DVmega_UHF ZumSpot UHF Hotspot with Raspberry Pi Zero W - https://www.hamradio.com/detail.cfm?pid=H0-015993 Jonathan Naylor talk on MMDVM - https://www.youtube.com/watch?v=xDLogbi8R7w MJLorton on how to get Motorola CPS Software - https://youtu.be/Gs0qi5p--CA?t=3m21s MD-380 Tools Installation via Windows Applications - http://www.miklor.com/DMR/DMR-Toolz108.php Installing MD-380 Tools using VIrtual Box Images - https://youtu.be/8F8G_Cqayrs Setting up an OpenSpot - https://www.youtube.com/watch?v=ON1HdC_RbcA DMR Marc - http://www.dmr-marc.net/ cBridge - https://rayfield.net/c-bridge Brandmeister - https://brandmeister.network/ MD-380 Hacked Firmware MD380 Tools - http://md380.tools/ Comparison of Import DMR Radio Features - https://radiosification.blogspot.com/2017/11/comparison-of-dmr-radios.html Register for a DMR ID - https://www.dmr-marc.net/cgi-bin/trbo-database/register.cgi DMR for Dummies! - http://www.dmrfordummies.com/ Brandmeister Network Hoseline - https://hose.brandmeister.network/ Motorola - XPR 7550 - https://www.motorolasolutions.com/en_us/products/two-way-radios/mototrbo/portable-radios/xpr-7000e-series.html#tabproductinfo Hytera PD682 - https://www.gigaparts.com/hytera-pd682-dmr-handheld-radio.html Kenwood DMR Radios - https://comms.kenwood.com/en/products/list.php?func=dmr Grapevine Amateur Radios - http://www.grapevineamateurradio.com/store/?submenuid=51&submenuname=Radios Connect Systems DMR Radios - http://www.connectsystems.com/amateur.html Tytera MD-9600 - http://www.grapevineamateurradio.com/store/tyt-md9600-dual-band-vhfuhf-dmr-mobile-radio/ Ailunce HD-1 - http://www.grapevineamateurradio.com/store/?model_number=HD-1 Tytera MD-380 - https://www.mtcradio.com/tyt-dmr-md-380-uhf-400-480mhz-digital-ht-with-programming-cable-software/ RFinder Android Radio H1B - http://www.grapevineamateurradio.com/store/?model_number=H1B Video on Tytera MD-9600 DMR Mobile Radio Version 3 - https://www.youtube.com/watch?v=159P1NI_EvQ
Abbiamo imparato una cosa nuova: ogni tanto fare progetti semplici (che si iniziano e si chiudono in una serata, per intenderci), aiuta a riprendere con uno spirito migliore quelli più complessi sui quali sbattiamo la testa da settimane, magari. Orologio con Raspberry e display microdot Lista della spesa Raspberry Pi Zero W con connettore saldato … Continua a leggere Ep 36 – Due semplici progetti
Raspberry Pi Boombox In this Project we’re using a Raspberry Pi Zero W to make an AirPlay-ready audio player. With shairport sync, you can stream audio from an iOS device to the Raspberry Pi. We think this is a great little airplay speaker project using Raspberry Pi, 3D printing, and electronics. Learning Guide: https://learn.adafruit.com/boomy-pi-airplay/overview Adafruit Speaker Bonnet Kit with Raspberry Pi Zero W https://www.adafruit.com/product/3412 Visit the Adafruit shop online - http://www.adafruit.com ----------------------------------------- Subscribe to Adafruit on YouTube: http://adafru.it/subscribe Join our weekly Show & Tell on G+ Hangouts On Air: http://adafru.it/showtell New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ -----------------------------------------
Der c't uplink 19.4 startet mit Augmented Reality: Jan-Keno Janssen schaut unter die Haube der berühmten Ikea-App und erklärt, was an Apples WebKit so besonders ist. Außerdem: Was macht WebKit anders als Google Tango und ARCore? Ein politisches Projekt hat Mirko Dölle mitgebracht: Sein "digitales Flugblatt" ist ein 30 Euro billiger Webserver, den man anonym zum Beispiel in Verkehrsschildern verstecken kann. Auf Wunsch arbeitet der mit handelsüblichen Batterien betriebene Raspberry Pi Zero W auch als Server für einen Tor Hidden Service. Zum Schluss diskutiert Stefan Porteck mit der c't-uplink-Runde über Sinn und Unsinn neuartiger Elektro-Verkehrsmittel wie akkubetriebene Skateboards, Roller und Mountainbikes. Diesmal mit dabei: Mirko Dölle, Stefan Porteck, Hannes Czerulla und Jan-Keno Janssen Die c't 23/17 gibt's am Kiosk, im heise Shop und in der c't-App für iOS und Android. Hier geht's zum c't-Test-Angebot für c't-uplink-Gucker: 4 Wochen c't digital testen. Alle früheren Episoden unseres Podcasts gibt es unter www.ct.de/uplink.
Der c't uplink 19.4 startet mit Augmented Reality: Jan-Keno Janssen schaut unter die Haube der berühmten Ikea-App und erklärt, was an Apples WebKit so besonders ist. Außerdem: Was macht WebKit anders als Google Tango und ARCore? Ein politisches Projekt hat Mirko Dölle mitgebracht: Sein "digitales Flugblatt" ist ein 30 Euro billiger Webserver, den man anonym zum Beispiel in Verkehrsschildern verstecken kann. Auf Wunsch arbeitet der mit handelsüblichen Batterien betriebene Raspberry Pi Zero W auch als Server für einen Tor Hidden Service. Zum Schluss diskutiert Stefan Porteck mit der c't-uplink-Runde über Sinn und Unsinn neuartiger Elektro-Verkehrsmittel wie akkubetriebene Skateboards, Roller und Mountainbikes. Diesmal mit dabei: Mirko Dölle, Stefan Porteck, Hannes Czerulla und Jan-Keno Janssen Die c't 23/17 gibt's am Kiosk, im heise Shop und in der c't-App für iOS und Android. Hier geht's zum c't-Test-Angebot für c't-uplink-Gucker: 4 Wochen c't digital testen. Alle früheren Episoden unseres Podcasts gibt es unter www.ct.de/uplink.
Der c't uplink 19.4 startet mit Augmented Reality: Jan-Keno Janssen schaut unter die Haube der berühmten Ikea-App und erklärt, was an Apples WebKit so besonders ist. Außerdem: Was macht WebKit anders als Google Tango und ARCore? Ein politisches Projekt hat Mirko Dölle mitgebracht: Sein "digitales Flugblatt" ist ein 30 Euro billiger Webserver, den man anonym zum Beispiel in Verkehrsschildern verstecken kann. Auf Wunsch arbeitet der mit handelsüblichen Batterien betriebene Raspberry Pi Zero W auch als Server für einen Tor Hidden Service. Zum Schluss diskutiert Stefan Porteck mit der c't-uplink-Runde über Sinn und Unsinn neuartiger Elektro-Verkehrsmittel wie akkubetriebene Skateboards, Roller und Mountainbikes. Diesmal mit dabei: Mirko Dölle, Stefan Porteck, Hannes Czerulla und Jan-Keno Janssen Die c't 23/17 gibt's am Kiosk, im heise Shop und in der c't-App für iOS und Android. Hier geht's zum c't-Test-Angebot für c't-uplink-Gucker: 4 Wochen c't digital testen. Alle früheren Episoden unseres Podcasts gibt es unter www.ct.de/uplink.
We recap EuroBSDcon in Paris, tell the story behind a pf PR, and show you how to do screencasting with OpenBSD. This episode was brought to you by Headlines Recap of EuroBSDcon 2017 in Paris, France (https://2017.eurobsdcon.org) EuroBSDcon was held in Paris, France this year, which drew record numbers this year. With over 300 attendees, it was the largest BSD event I have ever attended, and I was encouraged by the higher than expected number of first time attendees. The FreeBSD Foundation held a board meeting on Wednesday afternoon with the members who were in Paris. Topics included future conferences (including a conference kit we can mail to people who want to represent FreeBSD) and planning for next year. The FreeBSD Devsummit started on Thursday at the beautiful Mozilla Office in Paris. After registering and picking up our conference bag, everyone gathered for a morning coffee with lots of handshaking and greeting. We then gathered in the next room which had a podium with microphone, screens as well as tables and chairs. After developers sat down, Benedict opened the devsummit with a small quiz about France for developers to win a Mogics Power Bagel (https://www.mogics.com/?page_id=3824). 45 developers participated and DES won the item in the end. After introductions and collecting topics of interest from everyone, we started with the Work in Progress (WIP) session. The WIP session had different people present a topic they are working on in 7 minute timeslots. Topics ranged from FreeBSD Forwarding Performance, fast booting options, and a GELI patch under review to attach multiple providers. See their slides on the FreeBSD wiki (https://wiki.freebsd.org/DevSummit/201709). After lunch, the FreeBSD Foundation gave a general update on staff and funding, as well as a more focused presentation about our partnership with Intel. People were interested to hear what was done so far and asked a few questions to the Intel representative Glenn Weinberg. After lunch, developers worked quietly on their own projects. The mic remained open and occasionally, people would step forward and gave a short talk without slides or motivated a discussion of common interest. The day concluded with a dinner at a nice restaurant in Paris, which allowed to continue the discussions of the day. The second day of the devsummit began with a talk about the CAM-based SDIO stack by Ilya Bakulin. His work would allow access to wifi cards/modules on embedded boards like the Raspberry Pi Zero W and similar devices as many of these are using SDIO for data transfers. Next up was a discussion and Q&A session with the FreeBSD core team members who were there (missing only Benno Rice, Kris Moore, John Baldwin, and Baptiste Daroussin, the latter being busy with conference preparations). The new FCP (FreeBSD community proposals) were introduced for those who were not at BSDCan this year and the hows and whys about it. Allan and I were asked to describe our experiences as new members of core and we encouraged people to run for core when the next election happens. After a short break, Scott Long gave an overview of the work that's been started on NUMA (Non-Uniform Memory Architecture), what the goals of the project are and who is working on it. Before lunch, Christian Schwarz presented his work on zrepl, a new ZFS replication solution he developed using Go. This sparked interest in developers, a port was started (https://reviews.freebsd.org/D12462) and people suggested to Christian that he should submit his talk to AsiaBSDcon and BSDCan next year. Benedict had to leave before lunch was done to teach his Ansible tutorial (which was well attended) at the conference venue. There were organized dinners, for those two nights, quite a feat of organization to fit over 100 people into a restaurant and serve them quickly. On Saturday, there was a social event, a river cruise down the Seine. This took the form of a ‘standing' dinner, with a wide selection of appetizer type dishes, designed to get people to walk around and converse with many different people, rather than sit at a table with the same 6-8 people. I talked to a much larger group of people than I had managed to at the other dinners. I like having both dinner formats. We would also like to thank all of the BSDNow viewers who attended the conference and made the point of introducing themselves to us. It was nice to meet you all. The recordings of the live video stream from the conference are available immediately, so you can watch the raw versions of the talks now: Auditorium Keynote 1: Software Development in the Age of Heroes (https://youtu.be/4iR8g9-39LM?t=179) by Thomas Pornin (https://twitter.com/BearSSLnews) Tuning FreeBSD for routing and firewalling (https://youtu.be/4iR8g9-39LM?t=1660) by Olivier Cochard-Labbé (https://twitter.com/ocochardlabbe) My BSD sucks less than yours, Act I (https://youtu.be/4iR8g9-39LM?t=7040) by Antoine Jacoutot (https://twitter.com/ajacoutot) and Baptiste Daroussin (https://twitter.com/_bapt_) My BSD sucks less than yours, Act II (https://youtu.be/4iR8g9-39LM?t=14254) by Antoine Jacoutot (https://twitter.com/ajacoutot) and Baptiste Daroussin (https://twitter.com/_bapt_) Reproducible builds on NetBSD (https://youtu.be/4iR8g9-39LM?t=23351) by Christos Zoulas Your scheduler is not the problem (https://youtu.be/4iR8g9-39LM?t=26845) by Martin Pieuchot Keynote 2: A French story on cybercrime (https://youtu.be/4iR8g9-39LM?t=30540) by Éric Freyssinet (https://twitter.com/ericfreyss) Case studies of sandboxing base system with Capsicum (https://youtu.be/jqdHYEH_BQY?t=731) by Mariusz Zaborski (https://twitter.com/oshogbovx) OpenBSD's small steps towards DTrace (a tale about DDB and CTF) (https://youtu.be/jqdHYEH_BQY?t=6030) by Jasper Lievisse Adriaanse The Realities of DTrace on FreeBSD (https://youtu.be/jqdHYEH_BQY?t=13096) by George Neville-Neil (https://twitter.com/gvnn3) OpenSMTPD, current state of affairs (https://youtu.be/jqdHYEH_BQY?t=16818) by Gilles Chehade (https://twitter.com/PoolpOrg) Hoisting: lessons learned integrating pledge into 500 programs (https://youtu.be/jqdHYEH_BQY?t=21764) by Theo de Raadt Keynote 3: System Performance Analysis Methodologies (https://youtu.be/jqdHYEH_BQY?t=25463) by Brendan Gregg (https://twitter.com/brendangregg) Closing Session (https://youtu.be/jqdHYEH_BQY?t=29355) Karnak “Is it done yet ?” The never ending story of pkg tools (https://youtu.be/1hjzleqGRYk?t=71) by Marc Espie (https://twitter.com/espie_openbsd) A Tale of six motherboards, three BSDs and coreboot (https://youtu.be/1hjzleqGRYk?t=7498) by Piotr Kubaj and Katarzyna Kubaj State of the DragonFly's graphics stack (https://youtu.be/1hjzleqGRYk?t=11475) by François Tigeot From NanoBSD to ZFS and Jails – FreeBSD as a Hosting Platform, Revisited (https://youtu.be/1hjzleqGRYk?t=16227) by Patrick M. Hausen Bacula – nobody ever regretted making a backup (https://youtu.be/1hjzleqGRYk?t=20069) by Dan Langille (https://twitter.com/DLangille) Never Lose a Syslog Message (https://youtu.be/qX0BS4P65cQ?t=325) by Alexander Bluhm Running CloudABI applications on a FreeBSD-based Kubernetes cluster (https://youtu.be/qX0BS4P65cQ?t=5647) by Ed Schouten (https://twitter.com/EdSchouten) The OpenBSD web stack (https://youtu.be/qX0BS4P65cQ?t=13255) by Michael W. Lucas (https://twitter.com/mwlauthor) The LLDB Debugger on NetBSD (https://youtu.be/qX0BS4P65cQ?t=16835) by Kamil Rytarowski What's in store for NetBSD 8.0? (https://youtu.be/qX0BS4P65cQ?t=21583) by Alistair Crooks Louxor A Modern Replacement for BSD spell(1) (https://youtu.be/6Nen6a1Xl7I?t=156) by Abhinav Upadhyay (https://twitter.com/abhi9u) Portable Hotplugging: NetBSD's uvm_hotplug(9) API development (https://youtu.be/6Nen6a1Xl7I?t=5874) by Cherry G. Mathew Hardening pkgsrc (https://youtu.be/6Nen6a1Xl7I?t=9343) by Pierre Pronchery (https://twitter.com/khorben) Discovering OpenBSD on AWS (https://youtu.be/6Nen6a1Xl7I?t=14874) by Laurent Bernaille (https://twitter.com/lbernail) OpenBSD Testing Infrastructure Behind bluhm.genua.de (https://youtu.be/6Nen6a1Xl7I?t=18639) by Jan Klemkow The school of hard knocks – PT1 (https://youtu.be/8wuW8lfsVGc?t=276) by Sevan Janiyan (https://twitter.com/sevanjaniyan) 7 years of maintaining firefox, and still looking ahead (https://youtu.be/8wuW8lfsVGc?t=5321) by Landry Breuil Branch VPN solution based on OpenBSD, OSPF, RDomains and Ansible (https://youtu.be/8wuW8lfsVGc?t=12385) by Remi Locherer Running BSD on AWS (https://youtu.be/8wuW8lfsVGc?t=15983) by Julien Simon and Nicolas David Getting started with OpenBSD device driver development (https://youtu.be/8wuW8lfsVGc?t=21491) by Stefan Sperling A huge thanks to the organizers, program committee, and sponsors of EuroBSDCon. Next year, EuroBSDcon will be in Bucharest, Romania. *** The story of PR 219251 (https://www.sigsegv.be//blog/freebsd/PR219251) The actual story I wanted Kristof to tell, the pf bug he fixed at the Essen Hackathon earlier this summer. As I threatened to do in my previous post, I'm going to talk about PR 219251 for a bit. The bug report dates from only a few months ago, but the first report (that I can remeber) actually came from Shawn Webb on Twitter, of all places Despite there being a stacktrace it took quite a while (nearly 6 months in fact) before I figured this one out. It took Reshad Patuck managing to distill the problem down to a small-ish test script to make real progress on this. His testcase meant that I could get core dumps and experiment. It also provided valuable clues because it could be tweaked to see what elements were required to trigger the panic. This test script starts a (vnet) jail, adds an epair interface to it, sets up pf in the jail, and then reloads the pf rules on the host. Interestingly the panic does not seem to occur if that last step is not included. Obviously not the desired behaviour, but it seems strange. The instances of pf in the jails are supposed to be separate. We try to fetch a counter value here, but instead we dereference a bad pointer. There's two here, so already we need more information. Inspection of the core dump reveals that the state pointer is valid, and contains sane information. The rule pointer (rule.ptr) points to a sensible location, but the data is mostly 0xdeadc0de. This is the memory allocator being helpful (in debug mode) and writing garbage over freed memory, to make use-after-free bugs like this one easier to find. In other words: the rule has been free()d while there was still a state pointing to it. Somehow we have a state (describing a connection pf knows about) which points to a rule which no longer exists. The core dump also shows that the problem always occurs with states and rules in the default vnet (i.e. the host pf instance), not one of the pf instances in one of the vnet jails. That matches with the observation that the test script does not trigger the panic unless we also reload the rules on the host. Great, we know what's wrong, but now we need to work out how we can get into this state. At this point we're going to have to learn something about how rules and states get cleaned up in pf. Don't worry if you had no idea, because before this bug I didn't either. The states keep a pointer to the rule they match, so when rules are changed (or removed) we can't just delete them. States get cleaned up when connections are closed or they time out. This means we have to keep old rules around until the states that use them expire. When rules are removed pfunlinkrule() adds then to the Vpfunlinkedrules list (more on that funny V prefix later). From time to time the pf purge thread will run over all states and mark the rules that are used by a state. Once that's done for all states we know that all rules that are not marked as in-use can be removed (because none of the states use it). That can be a lot of work if we've got a lot of states, so pfpurgethread() breaks that up into smaller chuncks, iterating only part of the state table on every run. We iterate over all of our virtual pf instances (VNETFOREACH()), check if it's active (for FreeBSD-EN-17.08, where we've seen this code before) and then check the expired states with pfpurgeexpiredstates(). We start at state 'idx' and only process a certain number (determined by the PFTMINTERVAL setting) states. The pfpurgeexpiredstates() function returns a new idx value to tell us how far we got. So, remember when I mentioned the odd V_ prefix? Those are per-vnet variables. They work a bit like thread-local variables. Each vnet (virtual network stack) keeps its state separate from the others, and the V_ variables use a pointer that's changed whenever we change the currently active vnet (say with CURVNETSET() or CURVNETRESTORE()). That's tracked in the 'curvnet' variable. In other words: there are as many Vpfvnetactive variables as there are vnets: number of vnet jails plus one (for the host system). Why is that relevant here? Note that idx is not a per-vnet variable, but we handle multiple pf instances here. We run through all of them in fact. That means that we end up checking the first X states in the first vnet, then check the second X states in the second vnet, the third X states in the third and so on and so on. That of course means that we think we've run through all of the states in a vnet while we really only checked some of them. So when pfpurgeunlinkedrules() runs it can end up free()ing rules that actually are still in use because pfpurgethread() skipped over the state(s) that actually used the rule. The problem only happened if we reloaded rules in the host, because the active ruleset is never free()d, even if there are no states pointing to the rule. That explains the panic, and the fix is actually quite straightforward: idx needs to be a per-vnet variable, Vpfpurge_idx, and then the problem is gone. As is often the case, the solution to a fairly hard problem turns out to be really simple. As you might expect, finding the problem takes a lot more work that fixing it Thanks to Kristof for writing up this detailed post explaining how the problem was found, and what caused it. *** vBSDcon 2017: BSD at Work (https://www.ixsystems.com/blog/vbsdcon-2017-dexter/) The third biennial vBSDcon hosted by Verisign took place September 7th through 9th with the FreeBSD Developer Summit taking place the first day. vBSDcon and iXsystems' MeetBSD event have been alternating between the East and West coasts of the U.S.A. and these two events play vital roles in reaching Washington, DC-area and Bay Area/Silicon Valley audiences. Where MeetBSD serves many BSD Vendors, vBSDcon attracts a unique government and security industry demographic that isn't found anywhere else. Conference time and travel budgets are always limited and bringing these events to their attendees is a much-appreciated service provided by their hosts. The vBSDcon FreeBSD DevSummit had a strong focus on OpenZFS, the build system and networking with the FreeBSD 12 wish list of features in mind. How to best incorporate the steady flow of new OpenZFS features into FreeBSD such as dataset-level encryption was of particular interest. This feature from a GNU/Linux-based storage vendor is tribute to the growth of the OpenZFS community which is vital in light of the recent “Death of Solaris and ZFS” at Oracle. There has never been more demand for OpenZFS on FreeBSD and the Oracle news further confirms our collective responsibility to meet that demand. The official conference opened with my talk on “Isolated BSD Build Environments” in which I explained how the bhyve hypervisor can be used to effortlessly tour FreeBSD 5.0-onward and build specific source releases on demand to trace regressions to their offending commit. I was followed by a FreeNAS user who made the good point that FreeNAS is an exemplary “entry vector” into Unix and Enterprise Storage fundamentals, given that many of the vectors our generation had are gone. Where many of us discovered Unix and the Internet via console terminals at school or work, smart phones are only delivering the Internet without the Unix. With some irony, both iOS and Android are Unix-based yet offer few opportunities for their users to learn and leverage their Unix environments. The next two talks were The History and Future of Core Dumps in FreeBSD by Sam Gwydir and Using pkgsrc for multi-platform deployments in heterogeneous environments by G. Clifford Williams. I strongly recommend that anyone wanting to speak at AsiaBSDCon read Sam's accompanying paper on core dumps because I consider it the perfect AsiaBSDCon topic and his execution is excellent. Core dumps are one of those things you rarely think about until they are a DROP EVERYTHING! priority. G. Clifford's talk was about what I consider a near-perfect BSD project: pkgsrc, the portable BSD package manager. I put it up there with OpenSSH and mandoc as projects that have provided significant value to other Open Source operating systems. G. Clifford's real-world experiences are perfectly inline with vBSDcon's goal to be more production-oriented than other BSDCons. Of the other talks, any and all Dtrace talks are always appreciated and George Neville-Neil's did not disappoint. He based it on his experiences with the Teach BSD project which is bringing FreeBSD-based computer science education to schools around the world. The security-related talks by John-Mark Gurney, Dean Freeman and Michael Shirk also represented vBSDcon's consideration of the local community and made a convincing point that the BSDs should make concerted efforts to qualify for Common Criteria, FIPS, and other Government security requirements. While some security experts will scoff at these, they are critical to the adoption of BSD-based products by government agencies. BSD Now hosts Allan Jude and Benedict Reuschling hosted an OpenZFS BoF and Ansible talk respectively and I hosted a bhyve hypervisor BoF. The Hallway Track and food at vBSDcon were excellent and both culminated with an after-dinner dramatic reading of Michael W. Lucas' latest book that raised money for the FreeBSD Foundation. A great time was had by all and it was wonderful to see everyone! News Roundup FreeBSD 10.4-RC2 Available (https://lists.freebsd.org/pipermail/freebsd-stable/2017-September/087848.html) FreeBSD 10.4 will be released soon, this is the last chance to find bugs before the official release is cut. Noteworthy Changes Since 10.4-RC1: Given that the amd64 disc1 image was overflowing, more of the base components installed into the disc1 (live) file systems had to be disabled. Most notably, this removed the compiler toolchain from the disc1 images. All disabled tools are still available with the dvd1 images, though. The aesni(4) driver now no longer shares a single FPU context across multiple sessions in multiple threads, addressing problems seen when employing aesni(4) for ipsec(4). Support for netmap(4) by the ixgbe(4) driver has been brought into line with the netmap(4) API present in stable/10. Also, ixgbe(4) now correctly handles VFs in its netmap(4) support again instead of treating these as PFs. During the creation of amd64 and i386 VM images, etcupdate(8) and mergemaster(8) databases now are bootstrapped, akin to what happens along the extraction of base.txz as part of a new installation via bsdinstall(8). This change allows for both of these tools to work out-of-box on the VM images and avoids errors seen when upgrading these images via freebsd-update(8). If you are still on the stable/10 branch, you should test upgrading to 10.4, and make sure there are no problems with your workload Additional testing specifically of the features that have changed since 10.4-BETA1 would also be most helpful This will be the last release from the stable/10 branch *** OpenBSD changes of note 628 (https://www.tedunangst.com/flak/post/openbsd-changes-of-note-628) EuroBSDCon in two weeks. Be sure to attend early and often. Many and various documentation improvements for libcrypto. New man pages, rewrites, expanded bugs sections, and more. Only allow upward migration in vmd. There's a README for the syspatch build system if you want to run your own. Move the kernel relinking code from /etc/rc into a seperate script usable by syspatch. Kernel patches can now be reduced to just the necessary files. Make the callers of sogetopt() responsible for allocating memory. Now allocation and free occur in the same place. Use waitpid() instead of wait() in most programs to avoid accidentally collecting the wrong child. Have cu call isatty() before making assumptions. Switch mandoc rendering of mathematical symbols and greek letters from trying to imitate the characters' graphical shapes, which resulted in unintelligible renderings in many cases, to transliterations conveying the characters' meanings. Update libexpat to 2.2.4. Fix copying partial UTF-8 characters. Sigh, here we go again. Work around bug in F5's handling of the supported elliptic curves extension. RFC 4492 only defines elliptic_curves for ClientHello. However, F5 is sending it in ServerHello. We need to skip over it since our TLS extension parsing code is now more strict. After a first install, run syspatch -c to check for patches. If SMAP is present, clear PSL_AC on kernel entry and interrupt so that only the code in copy{in,out}* that need it run with it set. Panic if it's set on entry to trap() or syscall(). Prompted by Maxime Villard's NetBSD work. Errata. New drivers for arm: rktemp, mvpinctrl, mvmpic, mvneta, mvmdio, mvpxa, rkiic, rkpmic. No need to exec rm from within mandoc. We know there's exactly one file and directory to remove. Similarly with running cmp. Revert to Mesa 13.0.6 to hopefully address rendering issues a handful of people have reported with xpdf/fvwm on ivy bridge with modesetting driver. Rewrite ALPN extension using CBB/CBS and the new extension framework. Rewrite SRTP extension using CBB/CBS and the new extension framework. Revisit 2q queue sizes. Limit the hot queue to 1/20th the cache size up to a max of 4096 pages. Limit the warm and cold queues to half the cache. This allows us to more effectively notice re-interest in buffers instead of losing it in a large hot queue. Add glass console support for arm64. Probably not yet for your machine, though. Replace heaps of hand-written syscall stubs in ld.so with a simpler framework. 65535 is a valid port to listen on. When xinit starts an X server that listens only on UNIX socket, prefer DISPLAY=unix:0 rather than DISPLAY=:0. This will prevent applications from ever falling back to TCP if the UNIX socket connection fails (such as when the X server crashes). Reverted. Add -z and -Z options to apmd to auto suspend or hibernate when low on battery. Remove the original (pre-IETF) chacha20-poly1305 cipher suites. Add urng(4) which supports various USB RNG devices. Instead of adding one driver per device, start bundling them into a single driver. Remove old deactivated pledge path code. A replacement mechanism is being brewed. Fix a bug from the extension parsing rewrite. Always parse ALPN even if no callback has been installed to prevent leaving unprocessed data which leads to a decode error. Clarify what is meant by syslog priorities being ordered, since the numbers and priorities are backwards. Remove a stray setlocale() from ksh, eliminating a lot of extra statically linked code. Unremove some NPN symbols from libssl because ports software thinks they should be there for reasons. Fix saved stack location after resume. Somehow clang changed it. Resume works again on i386. Improve error messages in vmd and vmctl to be more informative. Stop building the miniroot installer for OMAP3 Beagleboards. It hasn't worked in over a year and nobody noticed. Have the callers of sosetopt() free the mbuf for symmetry. On octeon, let the kernel use the hardware FPU even if emulation is compiled in. It's faster. Fix support for 486DX CPUs by not calling cpuid. I used to own a 486. Now I don't. Merge some drm fixes from linux. Defer probing of floppy drives, eliminating delays during boot. Better handling of probes and beacons and timeouts and scans in wifi stack to avoid disconnects. Move mutex, condvar, and thread-specific data routes, pthreadonce, and pthreadexit from libpthread to libc, along with low-level bits to support them. Let's thread aware (but not actually threaded) code work with just libc. New POSIX xlocale implementation. Complete as long as you only use ASCII and UTF-8, as you should. Round and round it goes; when 6.2 stops, nobody knows. A peak at the future? *** Screencasting with OpenBSD (http://eradman.com/posts/screencasting.html) USB Audio Any USB microphone should appear as a new audio device. Here is the dmesg for my mic by ART: uaudio0 at uhub0 port 2 configuration 1 interface 0 "M-One USB" rev 1.10/0.01 addr 2 uaudio0: audio rev 1.00, 8 mixer controls audio1 at uaudio0 audioctl can read off all of the specific characterisitcs of this device $ audioctl -f /dev/audio1 | grep record mode=play,record record.rate=48000 record.channels=1 record.precision=16 record.bps=2 record.msb=1 record.encoding=slinear_le record.pause=0 record.active=0 record.block_size=1960 record.bytes=0 record.errors=0 Now test the recording from the second audio device using aucat(1) aucat -f rsnd/1 -o file.wav If the device also has a headset audio can be played through the same device. aucat -f rsnd/1 -i file.wav Screen Capture using Xvfb The rate at which a framebuffer for your video card is a feature of the hardware and software your using, and it's often very slow. x11vnc will print an estimate of the banwidth for the system your running. x11vnc ... 09/05/2012 22:23:45 fb read rate: 7 MB/sec This is about 4fps. We can do much better by using a virtual framebuffer. Here I'm setting up a new screen, setting the background color, starting cwm and an instance of xterm Xvfb :1 -screen 0 720x540x16 & DISPLAY=:1 xsetroot -solid steelblue & DISPLAY=:1 cwm & DISPLAY=:1 xterm +sb -fa Hermit -fs 14 & Much better! Now we're up around 20fps. x11vnc -display :1 & ... 11/05/2012 18:04:07 fb read rate: 168 MB/sec Make a connection to this virtual screen using raw encoding to eliminate time wasted on compression. vncviewer localhost -encodings raw A test recording with sound then looks like this ffmpeg -f sndio -i snd/1 -y -f x11grab -r 12 -s 800x600 -i :1.0 -vcodec ffv1 ~/out.avi Note: always stop the recording and playback using q, not Ctrl-C so that audio inputs are shut down properly. Screen Capture using Xephyr Xephyr is perhaps the easiest way to run X with a shadow framebuffer. This solution also avoids reading from the video card's RAM, so it's reasonably fast. Xephyr -ac -br -noreset -screen 800x600 :1 & DISPLAY=:1 xsetroot -solid steelblue & DISPLAY=:1 cwm & DISPLAY=:1 xrdb -load ~/.Xdefaults & DISPLAY=:1 xterm +sb -fa "Hermit" -fs 14 & Capture works in exactally the same way. This command tries to maintain 12fps. ffmpeg -f sndio -i snd/1 -y -f x11grab -r 12 -s 800x600 -i :1.0 -vcodec ffv1 -acodec copy ~/out.avi To capture keyboard and mouse input press Ctrl then Shift. This is very handy for using navigating a window manager in the nested X session. Arranging Windows I have sometimes found it helpful to launch applications and arrange them in a specific way. This will open up a web browser listing the current directory and position windows using xdotool DISPLAY=:1 midori "file:///pwd" & sleep 2 DISPLAY=:1 xdotool search --name "xterm" windowmove 0 0 DISPLAY=:1 xdotool search --class "midori" windowmove 400 0 DISPLAY=:1 xdotool search --class "midori" windowsize 400 576 This will position the window precisely so that it appears to be in a tmux window on the right. Audio/Video Sync If you find that the audio is way out of sync with the video, you can ajust the start using the -ss before the audio input to specify the number of seconds to delay. My final recording command line, that delays the audio by 0.5 seconds, writing 12fps ffmpeg -ss 0.5 -f sndio -i snd/1 -y -f x11grab -r 12 -s 800x600 -i :1.0 -vcodec ffv1 -acodec copy ~/out.avi Sharing a Terminal with tmux If you're trying to record a terminal session, tmux is able to share a session. In this way a recording of an X framebuffer can be taken without even using the screen. Start by creating the session. tmux -2 -S /tmp/tmux0 Then on the remote side connect on the same socket tmux -2 -S /tmp/tmux0 attach Taking Screenshots Grabbing a screenshots on Xvfb server is easily accomplished with ImageMagick's import command DISPLAY=:1 import -window root screenshot.png Audio Processing and Video Transcoding The first step is to ensure that the clip begins and ends where you'd like it to. The following will make a copy of the recording starting at time 00:00 and ending at 09:45 ffmpeg -i interactive-sql.avi -vcodec copy -acodec copy -ss 00:00:00 -t 00:09:45 interactive-sql-trimmed.avi mv interactive-sql-trimmed.avi interactive-sql.avi Setting the gain correctly is very important with an analog mixer, but if you're using a USB mic there may not be a gain option; simply record using it's built-in settings and then adjust the levels afterwards using a utility such as normalize. First extact the audio as a raw PCM file and then run normalize ffmpeg -i interactive-sql.avi -c:a copy -vn audio.wav normalize audio.wav Next merge the audio back in again ffmpeg -i interactive-sql.avi -i audio.wav -map 0:0 -map 1:0 -c copy interactive-sql-normalized.avi The final step is to compress the screencast for distribution. Encoding to VP8/Vorbis is easy: ffmpeg -i interactive-sql-normalized.avi -c:v libvpx -b:v 1M -c:a libvorbis -q:a 6 interactive-sql.webm H.264/AAC is tricky. For most video players the color space needs to be set to yuv420p. The -movflags puts the index data at the beginning of the file to enable streaming/partial content requests over HTTP: ffmpeg -y -i interactive-sql-normalized.avi -c:v libx264 -preset slow -crf 14 -pix_fmt yuv420p -movflags +faststart -c:a aac -q:a 6 interactive-sql.mp4 TrueOS @ Ohio Linuxfest '17! (https://www.trueos.org/blog/trueos-ohio-linuxfest-17/) Dru Lavigne and Ken Moore are both giving presentations on Saturday the 30th. Sit in and hear about new developments for the Lumina and FreeNAS projects. Ken is offering Lumina Rising: Challenging Desktop Orthodoxy at 10:15 am in Franklin A. Hear his thoughts about the ideas propelling desktop environment development and how Lumina, especially Lumina 2, is seeking to offer a new model of desktop architecture. Elements discussed include session security, application dependencies, message handling, and operating system integration. Dru is talking about What's New in FreeNAS 11 at 2:00 pm in Franklin D. She'll be providing an overview of some of the new features added in FreeNAS 11.0, including: Alert Services Starting specific services at boot time AD Monitoring to ensure the AD service restarts if disconnected A preview of the new user interface support for S3-compatible storage and the bhyve hypervisor She's also giving a sneak peek of FreeNAS 11.1, which has some neat features: A complete rewrite of the Jails/Plugins system as FreeNAS moves from warden to iocage Writing new plugins with just a few lines of code A brand new asynchronous middleware API Who's going? Attending this year are: Dru Lavigne (dlavigne): Dru leads the technical documentation team at iX, and contributes heavily to open source documentation projects like FreeBSD, FreeNAS, and TrueOS. Ken Moore (beanpole134): Ken is the lead developer of Lumina and a core contributor to TrueOS. He also works on a number of other Qt5 projects for iXsystems. J.T. Pennington (q5sys): Some of you may be familiar with his work on BSDNow, but J.T. also contributes to the TrueOS, Lumina, and SysAdm projects, helping out with development and general bug squashing. *** Beastie Bits Lumina Development Preview: Theme Engine (https://www.trueos.org/blog/lumina-development-preview-theme-engine/) It's happening! Official retro Thinkpad lappy spotted in the wild (https://www.theregister.co.uk/2017/09/04/retro_thinkpad_spotted_in_the_wild/) LLVM libFuzzer and SafeStack ported to NetBSD (https://blog.netbsd.org/tnf/entry/llvm_libfuzzer_and_safestack_ported) Remaining 2017 FreeBSD Events (https://www.freebsdfoundation.org/news-and-events/event-calendar/2017-openzfs-developer-summit/) *** Feedback/Questions Andrew - BSD Teaching Material (http://dpaste.com/0YTT0VP) Seth - Switching to Tarsnap after Crashplan becomes no more (http://dpaste.com/1SK92ZX#wrap) Thomas - Native encryption in ZFS (http://dpaste.com/02KD5FX#wrap) Coding Cowboy - Coding Cowboy - Passwords and clipboards (http://dpaste.com/31K0E40#wrap) ***
Peter operates the new FT8 Digital Mode from Joe Taylor. Tommy builds the DSO138 Scope Kit. George discusses the Raspberry Pi Zero W. Wayne build an Antenna Tripod. 1:24:08
Peter operates the new FT8 Digital Mode from Joe Taylor. Tommy builds the DSO138 Scope Kit. George discusses the Raspberry Pi Zero W. Wayne build an Antenna Tripod. 1:24:08
I'm working on a new retropie project that uses the Raspberry Pi Zero W and the new Adafruit Joy Bonnet. Before I can design an enclosure for this project, I need to 3D model the PCB + components! Using EagleCAD and Fusion 360, I exported a DFX, which is a drawing of the footprints of each component, and import that into Fusion 360. This makes modeling a whole lot easier! I normally would use the dimension tool and recreate all of the components, but this method remove all the steps of figuring out the position of each component. I still need to use a set of calipers to measure things like the depth of the buttons, height of the headers, that sort of thing. If anyone is interested in using this component for their project, I made the F360 source available to download – You can also download it as a STEP or STL (or many other formats) to reuse in your CAD package of choice. Thanks for watching! Adafruit Joy Bonnet https://www.adafruit.com/product/3464 Raspberry Pi Zero W https://www.adafruit.com/category/813 Download F360 Source http://a360.co/2pm6fDk Calipers https://www.adafruit.com/categories?q=calipers& Shop for parts for your own DIY projects http://adafru.it/3dprinting Download Fusion 360 FREE http://autode.sk/1Ro3wkb 3D Printing Projects Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOWD2dJNRIN46uhMCWvNOlbG 3D Hangout Show Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOVgpmWevin2slopw_A3-A8Y Layer by Layer CAD Tutorials Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOVsMp6nKnpjsXSQ45nxfORb Timelapse Tuesday Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOVagy3CktXsAAs4b153xpp_ ----------------------------------------- Visit the Adafruit shop online - http://www.adafruit.com Subscribe to Adafruit on YouTube: http://adafru.it/subscribe Join our weekly Show & Tell on G+ Hangouts On Air: http://adafru.it/showtell Watch our latest project videos: http://adafru.it/latest New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ Music by bartlebeats: http://soundcloud.com/bartlebeats -----------------------------------------
I'm working on a new retropie project that uses the Raspberry Pi Zero W and the new Adafruit Joy Bonnet. Before I can design an enclosure for this project, I need to 3D model the PCB + components! Using EagleCAD and Fusion 360, I exported a DFX, which is a drawing of the footprints of each component, and import that into Fusion 360. This makes modeling a whole lot easier! I normally would use the dimension tool and recreate all of the components, but this method remove all the steps of figuring out the position of each component. I still need to use a set of calipers to measure things like the depth of the buttons, height of the headers, that sort of thing. If anyone is interested in using this component for their project, I made the F360 source available to download – You can also download it as a STEP or STL (or many other formats) to reuse in your CAD package of choice. Thanks for watching! Adafruit Joy Bonnet https://www.adafruit.com/product/3464 Raspberry Pi Zero W https://www.adafruit.com/category/813 Download F360 Source http://a360.co/2pm6fDk Calipers https://www.adafruit.com/categories?q=calipers& Shop for parts for your own DIY projects http://adafru.it/3dprinting Download Fusion 360 FREE http://autode.sk/1Ro3wkb 3D Printing Projects Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOWD2dJNRIN46uhMCWvNOlbG 3D Hangout Show Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOVgpmWevin2slopw_A3-A8Y Layer by Layer CAD Tutorials Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOVsMp6nKnpjsXSQ45nxfORb Timelapse Tuesday Playlist: https://www.youtube.com/playlist?list=PLjF7R1fz_OOVagy3CktXsAAs4b153xpp_ ----------------------------------------- Visit the Adafruit shop online - http://www.adafruit.com Subscribe to Adafruit on YouTube: http://adafru.it/subscribe Join our weekly Show & Tell on G+ Hangouts On Air: http://adafru.it/showtell Watch our latest project videos: http://adafru.it/latest New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ Music by bartlebeats: http://soundcloud.com/bartlebeats -----------------------------------------
Jenna becomes a computer scientist! On this episode, with just a little coaching, she builds her first computer! A Raspberry Pi Zero W, to be precise. SayWhatRadio.com
Jenna becomes a computer scientist! On this episode, with just a little coaching, she builds her first computer! A Raspberry Pi Zero W, to be precise. SayWhatRadio.com
Der Rapsberry Pi ist nun fünf Jahre alt und auch wenn es um den Bastelrechner etwas ruhiger geworden ist, die Erfolgsgeschichte ist noch nicht vorbei. Inzwischen haben seine Erfinder mehr als 11 Millionen Stück davon verkauft und immer wieder stellen sie neue Versionen vor – zuletzt am Geburtstag den Raspberry Pi Zero W. Darüber hinaus hat der Minicomputer eine ganze Gerätekategorie ins Leben gerufen, bestehend aus immer neuen Konkurrenten, die sich den Bastelfans und Makern in aller Welt präsentieren. Aber warum hatte ausgerechnet der Raspberry Pi solchen Erfolg, warum war er offenbar das richtige Gerät zur richtigen Zeit? Wie hat sich der kleine Computer in den vergangenen fünf Jahren verändert und worauf haben die Entwickler besonderen Wert gelegt? Was machen die Käufer eigentlich damit und was sind die interessantesten Projekte, die dank des Raspberry Pi realisiert werden konnten? Und wie wird der Markt der Bastelcomputer in weiteren fünf Jahren aussehen? Diese und viele Fragen auch unserer Zuschauer besprechen Jürgen Kuri (@jkuri) und Martin Holland (@fingolas) live mit Daniel Bachfeld, dem Chefredakteur der Make.
Der Rapsberry Pi ist nun fünf Jahre alt und auch wenn es um den Bastelrechner etwas ruhiger geworden ist, die Erfolgsgeschichte ist noch nicht vorbei. Inzwischen haben seine Erfinder mehr als 11 Millionen Stück davon verkauft und immer wieder stellen sie neue Versionen vor – zuletzt am Geburtstag den Raspberry Pi Zero W. Darüber hinaus hat der Minicomputer eine ganze Gerätekategorie ins Leben gerufen, bestehend aus immer neuen Konkurrenten, die sich den Bastelfans und Makern in aller Welt präsentieren. Aber warum hatte ausgerechnet der Raspberry Pi solchen Erfolg, warum war er offenbar das richtige Gerät zur richtigen Zeit? Wie hat sich der kleine Computer in den vergangenen fünf Jahren verändert und worauf haben die Entwickler besonderen Wert gelegt? Was machen die Käufer eigentlich damit und was sind die interessantesten Projekte, die dank des Raspberry Pi realisiert werden konnten? Und wie wird der Markt der Bastelcomputer in weiteren fünf Jahren aussehen? Diese und viele Fragen auch unserer Zuschauer besprechen Jürgen Kuri (@jkuri) und Martin Holland (@fingolas) live mit Daniel Bachfeld, dem Chefredakteur der Make.
Der Rapsberry Pi ist nun fünf Jahre alt und auch wenn es um den Bastelrechner etwas ruhiger geworden ist, die Erfolgsgeschichte ist noch nicht vorbei. Inzwischen haben seine Erfinder mehr als 11 Millionen Stück davon verkauft und immer wieder stellen sie neue Versionen vor – zuletzt am Geburtstag den Raspberry Pi Zero W. Darüber hinaus hat der Minicomputer eine ganze Gerätekategorie ins Leben gerufen, bestehend aus immer neuen Konkurrenten, die sich den Bastelfans und Makern in aller Welt präsentieren. Aber warum hatte ausgerechnet der Raspberry Pi solchen Erfolg, warum war er offenbar das richtige Gerät zur richtigen Zeit? Wie hat sich der kleine Computer in den vergangenen fünf Jahren verändert und worauf haben die Entwickler besonderen Wert gelegt? Was machen die Käufer eigentlich damit und was sind die interessantesten Projekte, die dank des Raspberry Pi realisiert werden konnten? Und wie wird der Markt der Bastelcomputer in weiteren fünf Jahren aussehen? Diese und viele Fragen auch unserer Zuschauer besprechen Jürgen Kuri (@jkuri) und Martin Holland (@fingolas) live mit Daniel Bachfeld, dem Chefredakteur der Make.
NEW PRODUCT! RASPBERRY PI ZERO W JOINS THE FAMILY https://www.adafruit.com/pizero/ full feature list for Zero W: 1GHz, single-core CPU 512MB RAM Mini-HDMI port Micro-USB On-The-Go port Micro-USB power HAT-compatible 40-pin header Composite video and reset headers CSI camera connector 802.11n wireless LAN Bluetooth 4.0 https://www.adafruit.com/pizero/ ----------------------------------------- Visit the Adafruit shop online - http://www.adafruit.com Subscribe to Adafruit on YouTube: http://adafru.it/subscribe Join our weekly Show & Tell on G+ Hangouts On Air: http://adafru.it/showtell Watch our latest project videos: http://adafru.it/latest New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ Music by bartlebeats: http://soundcloud.com/bartlebeats -----------------------------------------