From b68e2575fd9d8670f243a4cfd4f053b62d1e2a58 Mon Sep 17 00:00:00 2001 From: Alejandro R Mosteo Date: Fri, 7 Mar 2025 14:20:44 +0100 Subject: [PATCH 1/7] toml_slicer 0.1.2 (via `alr publish`) (#1406) --- index/to/toml_slicer/toml_slicer-0.1.2.toml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 index/to/toml_slicer/toml_slicer-0.1.2.toml diff --git a/index/to/toml_slicer/toml_slicer-0.1.2.toml b/index/to/toml_slicer/toml_slicer-0.1.2.toml new file mode 100644 index 00000000..953a911f --- /dev/null +++ b/index/to/toml_slicer/toml_slicer-0.1.2.toml @@ -0,0 +1,18 @@ +name = "toml_slicer" +description = "Edit TOML files directly without parsing" +version = "0.1.2" +licenses = "MIT" +tags = ["toml", "edition"] + +authors = ["Alejandro R. Mosteo"] +maintainers = ["Alejandro R. Mosteo "] +maintainers-logins = ["mosteo"] +website = "https://github.com/mosteo/toml_slicer" + +[[depends-on]] +aaa = "~0.2.4|~0.3" + +[origin] +commit = "98d3306d8416328eadb3b4a652d34cf10eb17f00" +url = "git+https://github.com/mosteo/toml_slicer" + From 07b796a45d6e1efa7a105a2bb4631cf5a5aeb56f Mon Sep 17 00:00:00 2001 From: Alejandro R Mosteo Date: Fri, 7 Mar 2025 14:21:53 +0100 Subject: [PATCH 2/7] yeison_12 0.2.0 (via `alr publish`) (#1405) --- index/ye/yeison_12/yeison_12-0.2.0.toml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 index/ye/yeison_12/yeison_12-0.2.0.toml diff --git a/index/ye/yeison_12/yeison_12-0.2.0.toml b/index/ye/yeison_12/yeison_12-0.2.0.toml new file mode 100644 index 00000000..c1301ec8 --- /dev/null +++ b/index/ye/yeison_12/yeison_12-0.2.0.toml @@ -0,0 +1,19 @@ +name = "yeison_12" +description = "A JSON-like data structure (Ada 2012 version)" +version = "0.2.0" +licenses = "MIT" + +authors = ["Alejandro R. Mosteo"] +maintainers = ["Alejandro R. Mosteo "] +maintainers-logins = ["mosteo"] +tags = ["json", "yaml", "toml", "containers"] +website = "https://github.com/mosteo/yeison" + +[build-switches] +"*".ada_version = "Ada12" + +[origin] +commit = "20033cf90a3eb2eff69d9ff9d0820291aed79b57" +subdir = "./yeison_12/" +url = "git+https://github.com/mosteo/yeison.git" + From e0ceb7ff8f73216e03573771dc9f8bdb3f31d677 Mon Sep 17 00:00:00 2001 From: pmunts Date: Sat, 8 Mar 2025 03:00:16 -0800 Subject: [PATCH 3/7] libsimpleio 2.22974.1 (#1409) Added support for the BeaglePlay Linux microcomputer. --- .../li/libsimpleio/libsimpleio-2.22974.1.toml | 146 ++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 index/li/libsimpleio/libsimpleio-2.22974.1.toml diff --git a/index/li/libsimpleio/libsimpleio-2.22974.1.toml b/index/li/libsimpleio/libsimpleio-2.22974.1.toml new file mode 100644 index 00000000..3134b8de --- /dev/null +++ b/index/li/libsimpleio/libsimpleio-2.22974.1.toml @@ -0,0 +1,146 @@ +name = "libsimpleio" +version = "2.22974.1" +description = "Linux Simple I/O Library" +website = "https://github.com/pmunts/libsimpleio" +authors = ["Philip Munts"] +maintainers = ["Philip Munts "] +maintainers-logins = ["pmunts"] +licenses = "BSD-1-Clause" + +long-description = """ +Introduction +============ + +This crate provides an Ada binding to the [Linux Simple I/O +Library](https://github.com/pmunts/libsimpleio), *aka* **libsimpleio**. + +*Note: This crate includes all of the functionality of the **`mcp2221`** +and **`remoteio`** crates. Unlike those two crates, which can be built +for and used on Linux, MacOS, or Windows targets, this crate can only be +built for and used on Linux targets.* + +Linux Simple I/O Library +======================== + +**libsimpleio** is an attempt to encapsulate (as much as possible) the +ugliness of Linux I/O device access. It provides services for the +following types of I/O devices: + +- [Industrial I/O + Subsystem](https://wiki.analog.com/software/linux/docs/iio/iio) A/D + (Analog to Digital) Converter Devices +- [Industrial I/O + Subsystem](https://wiki.analog.com/software/linux/docs/iio/iio) D/A + (Digital to Analog) Converter Devices +- GPIO (General Purpose Input/Output) Pins +- Raw HID (Human Interface Device) Devices +- I2C (Inter-Integrated Circuit) Bus Devices +- PWM (Pulse Width Modulated) Output Devices +- [Remote I/O + Protocol](http://git.munts.com/libsimpleio/doc/RemoteIOProtocol.pdf) + Devices +- Serial Ports +- SPI (Serial Peripheral Interface) Bus Devices +- [Stream Framing + Protocol](http://git.munts.com/libsimpleio/doc/StreamFramingProtocol.pdf) + Devices +- TCP and UDP over IPv4 Network Devices +- Watchdog Timer Devices + +**libsimpleio** exports a small number of C wrapper or shim functions. +These shim functions present a more coherent API (Application +Programming Interface) than Linux kernel **`ioctl()`** services and the +myriad other different Linux device I/O API's. The **libsimpleio** shim +functions are designed to be easily called from Ada, C++, C#, Java, +Free Pascal and other programming languages. + +The **`man`** pages specifying the **libsimpleio** API (Application +Programming Interface) are available for viewing at +. + +Ada Binding for the Linux Simple I/O Library +============================================ + +The Ada binding consists of several software component layers. + +The bottom software component layer consists of the **C shim functions** +discussed in the previous section. + +The next software component layer consists of **binding packages** that +declare the C shim functions as Ada procedures. Each of the binding +packages corresponds to a single C source file (*e.g.* package +**`libadc`** corresponds to **`libadc.c`**). Each of the C shim +functions are declared as external Ada procedures using +**`pragma Import`**. The Ada procedure names do not necessarily match +the C function names (*e.g.* the C function **`ADC_Open()`** is declared +as Ada procedure **`libadc.Open`**). Many of the binding packages also +declare constants as well (*e.g.* **`DIRECTION_INPUT`** in +**`libgpio.ads`**). + +With very few exceptions, you will never need to directly call any of +the procedures nor reference any of the constants declared in the +**`libxxx`** binding packages. + +The next software component layer consists of **object packages** that +declare OOP (Object Oriented Programming) object types and methods for +each of the I/O subsystems. This layer uses Ada interface types, +access-to-interface types, and private tagged records extensively. + +For example, the package **`GPIO`** defines an interface type +**`PinInterface`**, an access to **`PinInterface`** type named +**`Pin`**, and primitive operation subprograms **`Get`** and **`Put`**. + +The child package **`GPIO.libsimpleio`** declares a private tagged +record type **`PinSubclass`** that *implements* **`GPIO.PinInterface`**, +subprograms **`Get`** and **`Put`** that are required to implement +**`GPIO.PinInterface`**, and a constructor function **`Create`** that +returns an **`GPIO.Pin`** access value. + +Every package that implements **`GPIO.PinInterface`** will also declare +a constructor function **`Create`** that returns **`GPIO.Pin`**. + +This architecture allows code similar to the following fragment: + + MyPins : array (1 .. 3) of GPIO.pin; + + GPIO(1) := GPIO.libsimpleio.Create(...); + GPIO(2) := GPIO.UserLED.Create(...); + GPIO(3) := GPIO.PWM.Create(...); + +The three GPIO pins can be stored in the same array and manipulated in +exactly the same manner even though the hardware implementation for each +pin is radically different. + +The topmost software component layer consists of **device packages** +that implement support for particular I/O devices and are built upon the +lower layers. Most of the device packages correspond to integrated +circuits, such as the [PCA9534 I2C GPIO +Expander](https://www.nxp.com/products/interfaces/ic-spi-serial-interface-devices/ic-general-purpose-i-o/8-bit-ic-bus-and-smbus-low-power-i-o-port-with-interrupt:PCA9534). +A few implement support for boards or modules, such the [Grove +Temperature +Sensor](https://www.seeedstudio.com/Grove-Temperature-Sensor.html) +module. +""" + +tags = ["embedded", "linux", "libsimpleio", "remoteio", "beaglebone", +"pocketbeagle", "raspberrypi", "raspberry", "pi", "adc", "dac", "gpio", +"hid", "i2c", "motor", "pwm", "sensor", "serial", "servo", "spi", "stepper", +"watchdog"] + +project-files = ["libsimpleio.gpr"] + +[available."case(os)"] +'linux' = true +"..." = false + +[[actions."case(os)".linux]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch"] + +[origin] +hashes = [ +"sha256:17997bc1be98435c557c0494972aee7536d47f5ed596da57699473cdef7fcd73", +"sha512:6c1185e32219d5465b72fd8c51618eb04e78db3075f5cb2731555970f1aa3290c796e0f5d4830fc01f44acee98fa8536b2ce7eb331c084d22cee29bde3dddec9", +] +url = "https://raw.githubusercontent.com/pmunts/alire-crates/ab3e2a7e0cbf55d32552e0e19aa8f4f47997db8d/libsimpleio/libsimpleio-2.22974.1.tbz2" + From b5dee0097280f78be6ede2c0aaeb49e227f81e0a Mon Sep 17 00:00:00 2001 From: pmunts Date: Sat, 8 Mar 2025 03:01:05 -0800 Subject: [PATCH 4/7] remoteio 2.22974.1 (#1410) Added support for the BeaglePlay Linux microcomputer. --- index/re/remoteio/remoteio-2.22974.1.toml | 83 +++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 index/re/remoteio/remoteio-2.22974.1.toml diff --git a/index/re/remoteio/remoteio-2.22974.1.toml b/index/re/remoteio/remoteio-2.22974.1.toml new file mode 100644 index 00000000..79ce3bd6 --- /dev/null +++ b/index/re/remoteio/remoteio-2.22974.1.toml @@ -0,0 +1,83 @@ +name = "remoteio" +version = "2.22974.1" +description = "Remote I/O Protocol Client Library for GNAT Ada" +website = "https://github.com/pmunts/libsimpleio" +authors = ["Philip Munts"] +maintainers = ["Philip Munts "] +maintainers-logins = ["pmunts"] +licenses = "BSD-1-Clause" + +long-description = """ +This crate contains a subset of the [**Linux Simple I/O +Library**](https://github.com/pmunts/libsimpleio) Ada packages that are +relevant for building [**Remote I/O +Protocol**](http://git.munts.com/libsimpleio/doc/RemoteIOProtocol.pdf) +client programs. + +This crate can be built for Linux, MacOS, or Windows targets. + +The **Remote I/O Protocol** is a lightweight message protocol for +performing remote I/O operations. The protocol is implemented using a +request/reply pattern, where the master device (*e.g.* a Linux computer) +transmits an I/O request in a 64-byte message to the slave device +(*e.g.* a single chip microcontroller). The slave device performs the +requested I/O operation and returns an I/O response in a 64-byte message +back to the master device. + +The protocol is kept as simple as possible (exactly one 64-byte request +message and one 64- byte response message) to allow using low end single +chip microcontrollers such as the +[PIC16F1455](https://www.microchip.com/en-us/product/PIC16F1455) for the +slave device. Although particularly suited for USB raw HID devices, this +protocol can use any transport mechanism that can reliably transmit and +receive 64-byte messages. +""" + +tags = ["embedded", "linux", "remoteio", "adc", "dac", "gpio", "i2c", "motor", +"pwm", "sensor", "serial", "servo", "spi", "stepper"] + +project-files = ["remoteio.gpr"] + +[available."case(os)"] +'linux|macos|windows' = true +"..." = false + +# Linux needs libhidapi and libusb crates + +[[depends-on]] +[depends-on."case(os)"."linux"] +libhidapi = "*" + +[[depends-on]] +[depends-on."case(os)"."linux"] +libusb = "*" + +# macOS needs hidapi and libusb crates + +[[depends-on]] +[depends-on."case(distribution)"."homebrew|macports"] +libhidapi = "*" + +[[depends-on]] +[depends-on."case(distribution)"."homebrew|macports"] +libusb = "*" + +[[actions."case(os)".linux]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.linux"] + +[[actions."case(os)".macos]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.macos"] + +[[actions."case(os)".windows]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.windows"] + +[origin] +hashes = [ +"sha256:cb5e612713ae3baa16e6ef640b4af6835c92f9711bd63dee0e215301430fc9e3", +"sha512:6eb5ad942c1c521df459a59a78b63276f80004a53c846e4691e8d952911f22276c558712eda177b01a3a0b0115cdee8564335f4e3f5c5882e94738bd8bd918d4", +] +url = "https://raw.githubusercontent.com/pmunts/alire-crates/a8336b32d53c8312e6726ff02bd159b2c9411ab5/remoteio/remoteio-2.22974.1.tbz2" + From 3ce75f7fb98141c50cac15adec3ecc7c945f3883 Mon Sep 17 00:00:00 2001 From: Gautier de Montmollin Date: Sat, 8 Mar 2025 12:02:26 +0100 Subject: [PATCH 5/7] hac 0.41.0 (#1411) --- index/ha/hac/hac-0.41.0.toml | 37 ++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 index/ha/hac/hac-0.41.0.toml diff --git a/index/ha/hac/hac-0.41.0.toml b/index/ha/hac/hac-0.41.0.toml new file mode 100644 index 00000000..7d05328e --- /dev/null +++ b/index/ha/hac/hac-0.41.0.toml @@ -0,0 +1,37 @@ +description = "HAC Ada Compiler: a small, quick Ada compiler covering a subset of Ada" +name = "hac" +version = "0.41.0" + +authors = ["Gautier de Montmollin"] +website = "https://github.com/zertovitch/hac" +licenses = "MIT" +tags = ["hac", "compiler", "virtual-machine", "native", "semantic", "parser", "advent-of-code"] +maintainers = ["gdemont@hotmail.com"] +maintainers-logins = ["zertovitch"] + +long-description = """ + hac logo + +HAC (HAC Ada Compiler) is a small, quickly compiling, open-source Ada compiler, covering a subset of the Ada language. +HAC is perhaps the first open-source (albeit partial) Ada compiler fully programmed in Ada itself. + +Features: + +* **Quick**: short programming-compilation-run-test cycles. +* Perfect for scripting jobs. +* Compiles Ada sources from any stream - file, internet, editor data, Zip archive, ... +* Compilation leaves zero compilation temp file - all is done in memory! +* Portable, fully programmed in Ada. +* Can be embedded into another software - see the [**LEA**](https://l-e-a.sourceforge.io/) editor - and even exchange data with it - see the `demo/data_exchange/exchange_native_side.adb` demo. +* **Free**, open-source. +""" + +project-files = ["hac.gpr"] +executables = ["hac"] + +[gpr-externals] +HAC_Build_Mode = ["Debug", "Fast", "Small"] + +[origin] +url = "https://sourceforge.net/projects/hacadacompiler/files/hac-2025-03-08-v.0.41.zip" +hashes = ["sha512:91eeda194f6839ca95565b03774b517548b845f2a3c878f088ab3a8f7793fe119a6f04d36b4de7909c0d1edb4e30cdde2931374f38c3a93c5c04ad6732b970d2"] From 0a4c29efbf52ae8a2c0d67178cc6301c5b111190 Mon Sep 17 00:00:00 2001 From: Blady-Com Date: Sat, 8 Mar 2025 12:52:57 +0100 Subject: [PATCH 6/7] ppa_gtkada 1.0.0 (#1412) * Add ppa_gtkada-1.1.0 (Tutorials for GTKAda) to Alire. * Fix in Alire badge URL. --- index/pp/ppa_gtkada/ppa_gtkada-1.0.0.toml | 53 +++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 index/pp/ppa_gtkada/ppa_gtkada-1.0.0.toml diff --git a/index/pp/ppa_gtkada/ppa_gtkada-1.0.0.toml b/index/pp/ppa_gtkada/ppa_gtkada-1.0.0.toml new file mode 100644 index 00000000..13adc2cf --- /dev/null +++ b/index/pp/ppa_gtkada/ppa_gtkada-1.0.0.toml @@ -0,0 +1,53 @@ +name = "ppa_gtkada" +description = "Tutorials for GTKAda" +version = "1.0.0" +tags = ["gtkada", "tutorial"] + +authors = ["Pascal Pignard"] +maintainers = ["Pascal Pignard "] +maintainers-logins = ["Blady-Com"] +website = "https://github.com/Blady-Com/ppa_gtkada" + +licenses = "CECILL-2.1" + +project-files = ["Essai1a/essai1.gpr", + "Essai1b/essai1.gpr", + "Essai1c/essai1.gpr", + "Essai1d/essai1.gpr", + "Essai1e/essai1.gpr", + "Essai2a/essai2.gpr", + "Essai2b/essai2.gpr", + "Essai2c/essai2.gpr", + "Essai2d/essai2.gpr", + "Hello_Cairo/hello_cairo.gpr", + "Hello/hello.gpr", + "Hello2/hello2.gpr", + "Hello3/hello3.gpr", + "Image_Display/image_display.gpr", + "Key_Event/key_event.gpr", + "Tasking/main.gpr"] + +executables = ["window1a", + "window1b", + "essai1c", + "essai1d", + "essai1e", + "essai2a", + "essai2b", + "essai2c", + "essai2d", + "hello_cairo", + "hello", + "hello2", + "hello3", + "image_display", + "key_event", + "main"] + +[[depends-on]] +gtkada = "^25.0.1" + +[origin] +commit = "6e03cf812f733218f401271abcf091c2759c424e" +url = "git+https://github.com/Blady-Com/ppa_gtkada.git" + From da6117662284df3be5def7f7b517cf9e30f5008d Mon Sep 17 00:00:00 2001 From: Brent Seidel Date: Mon, 10 Mar 2025 02:14:02 -0700 Subject: [PATCH 7/7] bbs_embed_common 0.2.0 (#1420) --- .../bbs_embed_common-0.2.0.toml | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 index/bb/bbs_embed_common/bbs_embed_common-0.2.0.toml diff --git a/index/bb/bbs_embed_common/bbs_embed_common-0.2.0.toml b/index/bb/bbs_embed_common/bbs_embed_common-0.2.0.toml new file mode 100644 index 00000000..7fe18fa2 --- /dev/null +++ b/index/bb/bbs_embed_common/bbs_embed_common-0.2.0.toml @@ -0,0 +1,29 @@ +name = "bbs_embed_common" +description = "Abstract hardware drivers and drivers for some i2c bus devices." +version = "0.2.0" + +long-description=""" +This crate contains base classes for some hardware devices such as Analog +Inputs, GPIO pins, I2C bus, and SPI bus. It also contains drivers for +devices that use, for example, an I2C bus. + +By itself, this crate isn't much use. It will need to be used with the +bbs_embed_linux crate which contains hardware drivers for the Raspberry Pi +and BeagleBone Black. +""" + +authors = ["Brent Seidel"] +maintainers = ["Brent Seidel "] +maintainers-logins = ["BrentSeidel"] +licenses = "GPL-3.0-or-later" +website = "https://github.com/BrentSeidel/BBS-BBB-Ada" +tags = ["embedded"] + +[[depends-on]] +bbs = "~0.1.0" + +[origin] +commit = "37c1a69b6cb64b0b7b7ac63a7ed5a1459d22e237" +subdir = "./src-common/" +url = "git+https://github.com/BrentSeidel/BBS-BBB-Ada.git" +