Guinevere Piazera Larsen sent us the CfP for the upcoming Debuggers and Analysis Tools at FOSDEM 2024!:
We are excited to announce that the call for proposals is now open for the Debuggers and Analysis Tools developer room at the upcoming FOSDEM 2024, to be hosted on Saturday, February 3rd 2024 in Brussels, Belgium.
This devroom is a collaborative effort and is organized by dedicated people from projects such as GDB, SystemTap, Valgrind, GNU poke, Elfutils, binutils, Libabigail, and the like.
Important Dates:
1st December 2023 Submission deadline
8th December 2023 Acceptance notifications
15th December 2023 Final Schedule announcement
3rd February 2024 Conference dates
## CFP Introduction
This devroom is geared towards authors, users and enthusiasts of Free Software programs involved with debugging and analyzing ELF programs using all the binary information available (including DWARF data).
The goal of the devroom is for developers to get in touch with each other and with users of their tools, have interesting and hopefully productive discussions, and finally what is most important: to have fun.
The format of the expected presentations will cover a range that
includes:
* Talks oriented towards developers of these projects
* Presentation / Introductory Workshops for users of these programs
* Activities oriented towards collaboration & standardization between these programs
All presentation slots are 25 minutes, with 15 minutes recommended for presentations, and 10 minutes for Q&A. This way we can have 8 slots and bio breaks, covering many topics!
### What is FOSDEM?
*FOSDEM is a free event for software developers to meet, share ideas and collaborate.*
Every year, thousands of developers of free and open source software from all over the world gather at the event in Brussels.
FOSDEM 2024 will take place on Saturday 3 and Sunday 4 February 2024.
It will be an in-person event at the *ULB Solbosch Campus, Brussels, Belgium, Europe.* If you aren't there, you can watch the live streams from the main tracks and developer rooms.
### Important stuff:
- FOSDEM is free to attend. There is no registration.
- [FOSDEM website](https://fosdem.org/)
- [FOSDEM code of conduct](https://fosdem.org/2024/practical/conduct/)
- [FOSDEM Schedule](https://fosdem.org/2024/schedule/)
### Desirable topics:
In this devroom, we're interested in any projects that directly reads binary files and analyses or manipulates them directly. Some projects and tools that fit the devroom are:
- GDB
- LLDB
- Ghidra
- Valgrind
- Dyninst
- GNU poke
- Binutils
- SystemTap
- Elfutils
- Libabigail
- Radare2
And any other debugging or binary analysis tool or framework
projects that might be of interest to Free Software enthusiasts.
### Topic overlap
There are over 50 developer rooms this year, and multiple main tracks, so there may be overlap with some other events.
If the topic would fit more than one devroom, you are free to choose which to submit to, but we encourage you to consider the focus of the talk, and see which devroom is best matched.
Full list of devrooms
[here](https://fosdem.org/2024/news/2023-11-08-devrooms-announced/).
### How to submit your proposal
To submit a talk, please visit the [FOSDEM 2024 Pretalx
website](https://pretalx.fosdem.org/fosdem-2024/cfp).
Click *Submit a proposal*. Make sure you choose the "Debuggers and analysis tools" devroom in the track drop-down menu (so that we see it rather than another devroom's organisers)
### What should be in your submission
- name
- short bio
- contact info
- title
- abstract (what you're going talk about, supports markdown)
Optional:
- description (more detail description, supports markdown)
- submission notes (for the organiser only, not made public)
- session image (if you have an illustration to go with the talk)
- additional speaker/s (if more than one person presenting)
Afterwards, click "Continue".
The second page will include fields for:
- Extra materials for reviewers (optional, for organisers only)
- Additional information about the speaker (optional).
- Resources to be used during the talk
All presentations will be recorded and made available under Creative Commons licenses. In the Submission notes field, please indicate that you agree that your presentation will be licensed under the CC-By-SA-4.0 or CC-By-4.0 license and that you agree to have your presentation recorded.
For example:
"If my presentation is accepted for FOSDEM, I hereby agree to
license all recordings, slides, and other associated materials under the Creative Commons Attribution Share-Alike 4.0 International License.
Sincerely,
<NAME>."
Once you've completed the required sections, submit and we'll get
back to you soon!
### Things to be aware of
<https://www.timeanddate.com/worldclock/belgium/brussels>
Please make sure that you will be available on the
day of the event.
will be available on the FOSDEM schedule page:
<https://fosdem.org/2024/schedule/>.
the general link is: </#/#fosdem:fosdem.org>
<https://matrix.to/#/#_oftc_#libre-soc:matrix.org>
### Contact
If you have any question about this devroom, please send a message to debuggers-and-analysis-devroom-manager at fosdem dot org.
Organizers of the devroom can also be reached on IRC at #dadevroom@irc.libera.chat
We have published a video that shows a small but interesting real-life example of a poke pickle to poke at GCOV data files. The purpose of the video is to help learning useful idioms to write your own pickles. Hope you find it useful!
https://youtu.be/95f5bB4ls7w
Alexander Dahl has packaged poke [1] for PTXdist, which is a build system for embedded GNU/Linux images. It is interesting to think about possible applications of having poke in embedded systems such as routers, multimedia players and the like...
Thank you Alexander!
[1] https://git.pengutronix.de/cgit/ptxdist/commit/?id=e6ec9f74f041658f3453f3b7ec4ba4b90e854f26
I am happy to announce that Mohammad-Reza Nabipoor has just been
appointed as GNU co-maintainer of poke. When Mohammad joined the
development he brough his enthusiam with him, and has contributed lots of good code, ideas and also helped organizing events, doing great talks, and even printing a batch of the mighty poke t-shirts.
Starting with poke 4, I plan to delegate on Mohammad the maintenance of the stable series, backporting fixes to the corresponding maintenance branches and doing releases whenever appropriate. That will allow me more time to focus on the development master branch.
Congrats and thank you Mohammad!
--
Jose E. Marchesi
Friday 6 October 2023
Frankfurt am Main
I am happy to announce a new release of GNU poke, version 3.3.
This is a bugfix release in the 3.x series.
See the file NEWS in the distribution tarball for a list of issues
fixed in this release.
The tarball poke-3.3.tar.gz is now available at
https://ftp.gnu.org/gnu/poke/poke-3.3.tar.gz.
GNU poke (http://www.jemarch.net/poke) is an interactive, extensible
editor for binary data. Not limited to editing basic entities such
as bits and bytes, it provides a full-fledged procedural,
interactive programming language designed to describe data
structures and to operate on them.
Thanks to the people who contributed with code and/or documentation to
this release.
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
20 August 2023
I am happy to announce a new release of GNU poke, version 3.2.
This is a bugfix release in the 3.x series.
See the file NEWS in the distribution tarball for a list of issues fixed in this release.
The tarball poke-3.2.tar.gz is now available at https://ftp.gnu.org/gnu/poke/poke-3.2.tar.gz.
GNU poke (http://www.jemarch.net/poke) is an interactive, extensible editor for binary data. Not limited to editing basic entities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them.
Thanks to the people who contributed with code and/or documentation to this release.
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
13 May 2023
We will be imparting a workshop on "practical poke" at the DevConf.CZ next Saturday 17 June in the beautiful czechish
city of Brno. During the workshop we will have plenty of time to go through the main aspects of the program, learning and having fun as we poke at actual data. It will be fun!
Also check out the rest of the program of the conference. It is awesome.
https://devconfcz2023.sched.com/event/1MYod/practical-gnu-poke
I am happy to announce a new release of GNU poke, version 3.1.
This is the first bugfix release in the 3.x series.
See the file NEWS in the distribution tarball for a list of issues
fixed in this release.
The tarball poke-3.1.tar.gz is now available at
https://ftp.gnu.org/gnu/poke/poke-3.1.tar.gz.
GNU poke (http://www.jemarch.net/poke) is an interactive, extensible
editor for binary data. Not limited to editing basic entities such
as bits and bytes, it provides a full-fledged procedural,
interactive programming language designed to describe data
structures and to operate on them.
Thanks to the people who contributed with code and/or documentation to
this release.
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
17 April 2023
I am happy to announce a new major release of GNU poke, version 3.0.
This release is the result of a year of development. A lot of things have changed and improved with respect to the 2.x series; we have fixed many bugs and added quite a lot of new exciting and useful features. See below for a description of many of them.
From now on, we intend to do not one but two major releases of poke every year. What is moving us to change this is the realization that users have to wait for too long to enjoy new features, which are continuously being added in a project this young and active.
The tarball poke-3.0.tar.gz is now available at
https://ftp.gnu.org/gnu/poke/poke-3.0.tar.gz.
> GNU poke (http://www.jemarch.net/poke) is an interactive, extensible editor for binary data. Not limited to editing basic entities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them.
Thanks to the people who contributed with code and/or documentation to this release. In certain but no significant order they are:
Mohammad-Reza Nabipoor
Arsen Arsenović
Luca Saiu
Bruno Haible
apache2
Indu Bhagat
Agathe Porte
Alfred M. Szmidt
Daiki Ueno
Darshit Shah
Jan Seeger
Sergio Durigan Junior
... and yours truly
As always, thank you all!
But wait, this time we also have special thanks:
To Bruno Haible for his invaluable advise and his help in throughfully testing this new release in many different platforms and configurations.
To the Sourceware overseers, Mark Wielaard, Arsen Arsenović, and Sam James for their help in setting up the buildbots we are using for CI at sourceware.
What is new in this release:
,----
| asm (TEMPLATE [: OUTPUTS [: INPUTS]])
| asm TYPE: (TEMPLATE [: INPUTS])
`----
,----
| if (CONDITION)
| TYPE FNAME;
`----
,----
| (Packet {}).field
`----
and this is now accepted:
,----
| Packet {}.field
`----
,----
| var a = 0 as int<4>;
| var b = 0 as uint<28>;
|
| a:::b = 0x12345678;
`----
,----
| VAL'elem (N)
| evaluates to the Nth element in VAL, as a value of type `any'.
|
| VAL'eoffset (N)
| evaluates to the offset of the Nth element in VAL.
|
| VAL'esize (N)
| evaluates to the size of the Nth element in VAL.
|
| VAL'ename (N)
| attribute evaluates to the name of the Nth element in VAL.
`----
,----
| ios_open_hook
| Functions in this hook are invoked once a new IO space has been
| opened.
|
| ios_set_hook
| Functions in this hook are invoked once the current IO space
| changes.
|
| ios_close_pre_hook
| ios_close_hook
| Functions in these hooks are invoked before and after an IO space is
| closed, respectively.
`----
,----
| eoffset (V, N)
| Given a value of type `any' and a name, returns the offset of
| the element having that name.
|
| openset (HANDLER, [FLAGS])
| Open an IO space and make it the current IO space.
|
| with_temp_ios ([HANDLER], [FLAGS], [DO], [ENDIAN])
| Execute some code with a temporary IO space.
|
| with_cur_ios (IOS, [DO], [ENDIAN])
| Execute some code on some given IO space.
`----
,----
| diff.pk
| Useful binary diffing utilities. In particular, it implements
| the "structured diff" format as described in
| https://binary-tools.net/bindiff.pdf.
|
| io.pk
| Facilities to dump data to the terminal.
|
| pk-table.pk
| Convenient facilities to Poke programs to print tabulated data.
|
| openpgp.pk
| Pickle to poke at OpenPGP RFC 4880 data.
|
| sframe.pk
| sframe-dump.pk
| Pickles for the SFrame unwinding format, and related dump
| utilities.
|
| search.pk
| Utility for searching data in IO spaces that conform to some
| given Poke type.
|
| riscv.pk
| Pickle to poke at instructions encoded in the RISC-V instruction
| set (RV32I). It also provides methods to generate assembly
| language.
|
| coff.pk
| coff-aarch64.pk
| coff-i386.pk
| COFF object files.
|
| pe.pk
| pe-amd64.pk
| pe-arm.pk
| pe-arm64.pk
| pe-debug.pk
| pe-i386.pk
| pe-ia64.pk
| pe-m32r.pk
| pe-mips.pk
| pe-ppc.pk
| pe-riscv.pk
| pe-sh3.pk
| PE/COFF object files.
|
| pcap.pk
| Capture file format.
|
| uuid.pk
| Universally Unique Identifier (UUID) as defined by RFC4122.
|
| redoxfs.pk
| RedoxFS files ystem of Redox OS.
|
| ieee754.pk
| IEEE Standard for Floating-Point Arithmetic.
`----
--
Jose E. Marchesi
Frankfurt am Main
26 January 2023
GNU poke will be part of the Binary Tools devroom at the next edition of FOSDEM, to be celebrated 4th and 5th February 2023 in Brussels.
Below is the Call For Proposals for the devroom. Hope to see you there, is gonna be fun! :)
Dates
=====
25th November CFP deadline
15th December Announcement of selected activities
4 & 5th February Conference dates
About the devroom
=================
The Binary Tools Devroom at FOSDEM 2023 is an informal, technical,
event oriented to authors, users and enthusiasts of FLOSS
programs that deal with binary data.
This includes binary editors, libraries to encode and decode data,
parser generators, binary data description languages and frameworks,
binary formats and encodings, assemblers, debuggers, reverse
engineering suites, and the like.
The goal of the devroom is for developers to get in touch with each
other and with users of their tools, have interesting and hopefully
productive discussions, and finally what is most important: to have
fun.
Suggested Topics
================
Here is a non-exhaustive list of binary tools about which we would
like to have activities:
- GNU poke
- fq
- radare2
- kaitai struct
- binwalk
- wireshark
Both using (like a nice hack) and developing the tools are on-topic.
Activities on increasing collaboration between the tools are
particularly encouraged.
Proposals
=========
Proposals should be made through the FOSDEM Pentabarf submission tool]. You
do not need to create a new Pentabarf account if you already have one from a
past year.
https://penta.fosdem.org/submission/FOSDEM23
Please select the "Binary Tools Devroom" as the track and ensure
you include the following information when submitting a proposal:
- The name of the person, or persons, doing the proposed activity.
- A short bio (one paragraph) for each person.
- If desired, a photo 8-)
- The title of the activity.
- Activity abstract.
- Duration of the activity: 15 minutes or 30 minutes.
The deadline for submissions is November 25th, 2022. FOSDEM will be
held on the weekend of February 4-5, 2023 and the Binary Tools
devroom will take place on Sunday, February 5, 2023 in Brussels,
Belgium.
Contact
=======
The organizers of the devroom can be reached by sending email to
binary-devroom-manager@fosdem.org.
We are also in the #binary-tools IRC channel at irc.libera.chat.
Please do not hesitate to contact us if you have any inquiry or
suggestion for the devroom.
Don't miss this little talk from Mohammad-Reza Nabipoor about leveraging GNU poke as a test tool in the assembler. He uses RISC-V to explore how to better write pickles for instruction sets. Looks promising!
https://www.youtube.com/watch?v=n09mhw4-m_E
I am happy to announce a new release of GNU poke, version 2.4.
This is a bugfix release in the poke 2.x series.
See the file NEWS in the distribution tarball for a list of issues fixed in this release.
The tarball poke-2.4.tar.gz is now available at
https://ftp.gnu.org/gnu/poke/poke-2.4.tar.gz.
> GNU poke (http://www.jemarch.net/poke) is an interactive, extensible editor for binary data. Not limited to editing basic entities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them.
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
25 July 2022
I am not that happy to announce a new release of GNU poke, version 2.3.
This fixes a little bug in diagnostics that broke the 32-bit
testsuite, making 2.2 the shortest lived poke release to date.
See the file NEWS in the distribution tarball for a list of issues fixed in this release.
The tarball poke-2.3.tar.gz is now available at
https://ftp.gnu.org/gnu/poke/poke-2.3.tar.gz.
GNU poke (http://www.jemarch.net/poke) is an interactive,
extensible editor for binary data. Not limited to editing
basic entities such as bits and bytes, it provides a full-
fledged procedural, interactive programming language designed
to describe data structures and to operate on them.
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
31 March 2022
The good Libreplanet people have just published the recordings of the presentations made at the Libreplanet 2022 conference earlier in March. (kudos to them.)
One of the talks was an introduction to GNU poke, that may be useful to watch. The video can be watched here:
https://framatube.org/w/eMXntiH1syB81a2Tk2zhJX
and downloaded from here:
https://media.libreplanet.org/u/libreplanet/tag/libreplanet-2022-video/
PS: The video also shows the very new (and still very experimental) Emacs interface to poke ;)
I am happy to announce a new release of GNU poke, version 2.2.
This is a bugfix release in the 2.x series.
See the file NEWS in the distribution tarball for a list of issues fixed in this release.
The tarball poke-2.2.tar.gz is now available at
https://ftp.gnu.org/gnu/poke/poke-2.2.tar.gz.
GNU poke (http://www.jemarch.net/poke) is an interactive,
extensible editor for binary data. Not limited to editing
basic entities such as bits and bytes, it provides a full-
fledged procedural,interactive programming language designed
to describe data structures and to operate on them.
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
29 March 2022
The Binary Tools Summit 2022 online event was held last weekend, and we had lots of fun. We also learned a lot.
The slides for the presentations and video recordings of the talks are now available at the event website: https://binary-tools.net/summit
Thanks again to all the presenters and participants!
The Binary Tools Summit 2022 (https://binary-tools.net/summit) is an informal, technical, online event oriented to authors, users and enthusiasts of FLOSS programs that deal with binary data.
The schedule of the conference is now published and everything is ready for an exciting and fun first weekend of March full of zeros, ones and hopefully not many segmentation faults.
We still have some room to squeeze in one or two more presentations/activities, so you can still send one if you missed the CFP.
Please remember that, although you don't need to register in order to participate in the summit, we would appreciate if you would let us know in advance your intention to participate. See contact info in the summit's website.
The summit will be held on the first weekend of March 2022, From Friday 4 to Sunday 6.
See you soon!
I am happy to announce a new release of GNU poke, version 2.1.
This is the first bugfix release in the 2.x series.
See the file NEWS in the distribution tarball for a list of issues fixed in this release.
The tarball poke-2.1.tar.gz is now available at
https://ftp.gnu.org/gnu/poke/poke-2.1.tar.gz.
> GNU poke (http://www.jemarch.net/poke) is an interactive, extensible editor for binary data. Not limited to editing basic entities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them.
Thanks to the people who contributed with code and/or documentation to this release. In certain but no significant order they are:
Mohammad-Reza Nabipoor
Luca Saiu
Alfred M. Szmidt
Bruno Haible
Sergio Durigan Junior
Special thanks to Bruno Haible for his help in testing this release.
And this is all for now.
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
8 February 2021
The Binary Tools Summit 2022 (https://binary-tools.net/summit) is an informal, technical, online event oriented to authors, users and enthusiasts of FLOSS programs that deal with binary data.
This includes binary editors, libraries to encode and decode data, parser generators, binary data description languages and frameworks, binary formats and encodings, assemblers, debuggers, reverse engineering suites, and the like.
The goal of this event is for developers to get in touch with each other, introduce their tools, have interesting and hopefully
productive discussions, and finally what is most important: to have fun.
The venue of the event will be an instance of the Big Blue Button web conferencing system, accessible using Firefox, Chromium and other web browsers. We will be having a single track that will span for three days during a weekend.
The summit will be held on the first weekend of March 2022, From Friday 4 to Sunday 6.
If you wish to participate doing a presentation, you are very welcome to send us a proposal to binary-tools-summit@gnu.org with the following information:
- Your contact info (name, email, affiliation).
- Name of the presentation.
- Abstract of the presentation; one or two paragraphs.
- How much time would you want to use. Anything from 30 minutes to 2 hours is fine.
- Preferred day: Friday, Saturday or Sunday.
- Preferred time of the day: from 16:00 CET to 21:00 CET.
Note that all presentations will be performed live. It will be possible to share the screen and do demos/tutorials.
The deadline for sending presentations is Wednesday 16 Feb. 2022.
We will be publishing the schedule the same day.
The event is open for everyone and no registration is needed.
However, if you plan to attend (presenting or not) please consider letting us know in an email; this will help us to estimate the number of participants and organize better.
See you soon!
I am happy to announce a new major release of GNU poke, version 2.0.
This release is the result of a full year of development. A lot of things have changed and improved with respect to the 1.x series; we have fixed many bugs and added quite a lot of new exciting and useful features.
See the complete release notes at https://jemarch.net/poke-2.0-relnotes.html for a detailed description of what is new in this release.
We have had lots of fun and learned quite a lot in the process; we really wish you will have at least half of that fun using this tool!
The tarball poke-2.0.tar.gz is now available at https://ftp.gnu.org/gnu/poke/poke-2.0.tar.gz.
> GNU poke (http://www.jemarch.net/poke) is an interactive, extensible editor for binary data. Not limited to editing basic entities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them.
Thanks to the people who contributed with code and/or documentation to this release. In certain but no significant order they are:
As always, thank you all!
Happy poking!
--
Jose E. Marchesi
Frankfurt am Main
28 February 2022