The early years and the tight relation to µOS++
The history of the xPack project was deeply intertwined with the history of µOS++, as it was initially intended to automate building and running multi-platform unit tests for µOS++. Later it was also used to build the binary xPacks, which further validated the concept.
To avoid redundancy, the full story is not replicated here, so please read the history of µOS++ before continuing; the brief list of the important events is:
- eCos CDL was the inspiration for a component based design (early 2000s)
- in 2013, the GNU ARM Eclipse plug-ins (later rebranded as the Eclipse Embedded CDT) was the first attempt to find a solution that avoids generating make files by hand, but this prevented building and running unit tests in a scriptable environment
- in 2013, the experimental XCDL
(eXtended Components Definition Language) project, inspired by
eCos CDL, implemented in Python, validated the concept
Note: The major weakness of XCDL was the limitation introduced by having the build configuration metadata as a Python code: it could be edited only manually, and not via a GUI based IDE (compared, for example, to the C/C++ settings in Eclipse CDT, which writes back the XML configuration file)
- in 2014, the CMSIS Packs solution was evaluated, and an Eclipse plug-in was created to manage them, but the solution was later found to have too many design issues, and was abandoned
- in 2015, the yotta solution was
considered, and the first XCDL packs based on yotta were tested;
for various reasons, yotta was later abandoned by Arm
Note: As yotta was strongly influenced by npm, the npm ecosystem was considered a good starting point for a future solution.
- in 2017, the first release of xpm was available, as a complementary solution to npm, and packages managed by it were named xPacks; xpm complements npm as the industry standard package manager for JavaScript packages, and uses the same npmjs.com as the hugely popular public package repository
- in 2019, xpm was extended to also support installing binary packages, and a new class of tools was created as xPack 3rd Party Development Tools
- in 2022, xpm was used to build the binary packages; this proved that the technology is standalone, with the newer versions of the tools being built with existing xPacks
- in 2023, with most of the tools in place, a first C/C++ project (@micro-os-plus/utils-lists) was fully tested via xpm, validating again the whole concept
The xPack project goals
The project came to life as a practical need to find a replacement for the Eclipse CDT managed build, with the additional requirement to be able to run unit tests in a scriptable environment.
By trial and error, the main aspects that need to be addressed by such a solution were identified as:
- the build (defining which files enter the build, the compiler/linker options, etc)
- the project configuration (e.g. managing the values of the #define in a consistent way)
- the tools (toolchains, debuggers, emulators, etc)
The XCDL experimental version
The first experimental solution was XCDL, which was used in the µOS++ Second Edition; basically some of the eCos CDL functionality was implemented in Python.
The result looked like this:
The implementation was quite easy, and worked pretty well.
However several issues were identified:
- using configuration files written in a programming language was convenient, but it had a major drawback: since parsing Python is not trivial, it prevented the configuration being edited with a GUI tool (similar to the Eclipse settings pages); in other words, the configuration files must be in a structured format, otherwise editing them by a machine is problematic
- although the µOS++ SE was more or less modular, the project was basically a mono-repo, and writing unit tests for each module was difficult
- running unit tests with several toolchains, not to mention with different versions of the same toolchain, proved extremely difficult, and doing this on multiple platforms (macOS, windows, linux) was even more difficult
The lessons learned from this experiment were:
- if a configuration needs to be edited by a machine, it must be written in a structured format, JSON being the favourite
- if each module is expected to be tested, it is better to use multiple small repositories, each with its CI tests
- if the project is split into multiple packages, a tool to automate installing/managing the dependencies is a great addition
- toolchains and other tools need to be standalone & relocatable, to allow multiple versions to be installed in different folders on the same machine; managing these multiple tools can also be automated with a tool
Binary xPacks
The first binary tools prepared were arm-none-eabi-gcc, openocd, qemu and windows-build-tools; they were also used in Eclipse project; initially they were installed manually, and Eclipse was able to identify them in certain fixed location.
npm/xpm
While searching for a solution to automate installing different source packages, a solution that looked pretty close to the needs was npm, so most of the concepts were adopted, and the tool was extended to handle the C/C++ linear dependencies; this is how xpm was created.
Later xpm was extended to automate installing the toolchains and other binary archives.
As of now, there are toolchains for Arm, AArch64, RISC-V and native (GCC & clang), that run on Windows, Linux, macOS; it is probably fair to say that the tools part of the project is covered properly, and fully automated.
Build system generators
As for the build and configuration tools in the project, things are work in progress.
For the build, the first idea was to rewrite the initial Python code in JavaScript, but later a step by step approach was considered.
In the first step the existing build system generators were used, like CMake and meson, with several advantages:
- they allow to add tests to the µOS++ projects immediately, without having to wait for any special/future tools
- they are a good chance to get a lot of experience on how to organise projects with such tools
- they provide the users a direct way to integrate the µOS++ source code libraries into their existing projects built with CMake/meson.
To manage the multi-platform, multi-architecture, multi-version, multi-etc tests, a tool to manage multiple build configurations was needed, and since each configuration needs its own tools, with different versions, it became clear that the build configurations must be managed by the same tool, so xpm was extended to handle multiple build configurations; later, xPack actions were added, to automate running sequences of commands, like cmake or meson, to build and run the tests.
Future plans
At the moment of writing this (mid 2023), the project is pretty advanced, but it is not yet complete.
Soon all the µOS++ projects will be updated to use the multiple build configurations automated by xpm, and so have everything fully tested in µOS++.
With the experience from this step, the next step is to finalise the specs for the xPack Project Builder that will perform the builds and manage the project configurations.
The tool will probably be called xpmake, and will use json files, with a content similar to this one:
As it can be seen, this file defines the include folders, the source files, and some preprocessor definitions that might be enabled while building the project.
This file, together with all other similar files from the packages that are part of the project, will provide the input data for a tree of components, that can be rendered in a graphical tool like VS Code, thus allowing to configure a project in a way similar, possibly even more advanced, than the Eclipse CDT settings, since the hierarchical components reflect the logical structure of the application, and allow to automatically manage dependencies between components, and between configuration options.
Additions to the VS Code xPack extension are planned, to edit the tree of xPack CDL components, and run the builds directly, without CMake/meson; this will be a true xPack enabled tool, and will be an alternate solution to Eclipse Embedded CDT.
But the use of this tool should be optional, the whole functionality should also be available from a terminal and a plain text editor.
Conclusions
As it can be seen, the xPack project originated from the need to automate the workflow for existing open source projects, especially the execution of multiple tests for embedded projects, which often poses more challenges than developing the projects themselves.


Ian Darwin: Shell Script Examples
My scripts directory
contains millions (figuratively) of useful shell scripts.
This page presents a few that are interesting.
Be aware that this represents a small subset of what's in this repository.
Pull requests to add additional entries are welcome.
Note also that this index will usually be out of date as scripts come and go!.
Categories
Simple text processing
- accent install accents
- replace update text files in place
- overwrite overwrite files
- doc2html convert slides from text to HTML
- doctortf convert slides from text to RTF
- mvstomml convert slides from VS to Frame
- dos2unix convert DOS text files to unix...
- unix2dos ... and vice versa.
- lscmp compare two ls listings
- prep prepare text for analysis (word per line)
- cwthemesort sort a file of theme words for crossword creators
- ind trivial indentation tool
C/Java Development
- jtest run with JUnit
- dbug_enter put debug calls in code
- fix-java-main update old String[] syntax
- jr Java compile and run (obsolete; now an example of deprecation/compatibility)
Archiving, Backup, CVS-ing
- cptree copy a tree structure, preserving perms, mtimes, etc.
- getscripts get list of files referred to in this page
File Manipulation
Running Programs
- appmap Written by Sun Microsystems OpCom/NAFO; Run major apps in a heterogeneous UNIX environment
File Lookup/Editing
- areacode look up areacode
- grepword look up words by regex for e.g., crossword solver cheats
- grepjs grep in Java files in all subdirectories
- ffnum Find Fone Number in mail archive
Desktop/System Administration
- xxx Most of my sysadmin scripts are kept in a private repo as they could be taken to expose information. Sorry.
OpenBSD-specific scripts
Desktop Window System
Database Work
Networking
- distrib copy a file to multiple hosts
- netsh run a command on multiple hosts
Printing Support
- ehandler install error handler in PostScript printer
WWW
End of tour


Today we're happy to announce the initial release of ReactJS.NET, which makes it easier to use React and JSX in .NET applications, focusing specifically on ASP.NET MVC web applications. It has several purposes:
On-the-fly JSX to JavaScript compilation. Simply reference JSX files and they will be compiled and cached server-side.
Server-side component rendering to make your initial render super fast.
Even though we are focusing on ASP.NET MVC, ReactJS.NET can also be used in Web Forms applications as well as non-web applications (for example, in build scripts). ReactJS.NET currently only works on Microsoft .NET but we are working on support for Linux and Mac OS X via Mono as well.
ReactJS.NET is packaged in NuGet. Simply run Install-Package React.Mvc4
in the package manager console or search NuGet for "React" to install it. See the documentation for more information. The GitHub project contains a sample website demonstrating all of the features.
Let us know what you think, and feel free to send through any feedback and report bugs on GitHub.


here it is
connect(); //query the database mysql_query( $query ); //close once finished to free up resources $db->close(); include('./firstPage.html'); exit(); } ?>


Grieving boyfriend takes his own life days after girlfriend’s suicide
A grieving boyfriend killed himself after being left ‘heartbroken’ by his girlfriend’s suicide, a coroner has found.
Adam Howarth, 29, was killed by a train six days after Chloe Spencer, 27, was found hanged at home in Wigan, their joint inquest heard.
Chloe had suffered with mental health problems and a custody battle but showed no signs of suicidal thoughts, Bolton Coroners Court was told.
The pair started dating in July 2018 and had an ‘on-off relationship’.
On 21 June this year, the pair had plans to meet up, but Chloe cancelled at the last minute to meet up with a friend, David McCormick.
Adam’s mother, Ann Lloyd, told the inquest: ‘The following day Adam unexpectedly received a call from a friend saying she had taken her own life. He was heartbroken.’
She added: ‘He had plans for the future, he had recently been offered a new job and he planned to meet up with some friends the next day.
Advertisement Advertisement
‘When he was asked if he had any suicidal thoughts he kept saying he had to get through the funeral first. I was just thinking “I’ve got time to get him out of this and get him through the grief”.’
Adam, who planned to carry Chloe’s coffin, ‘seemed quiet but OK’ at a family barbecue on 27 June but was noticed leaving in an upset state by his cousin later on, Ann said.
The family reported him missing after going out to search for him in vain and were told of his death the next day, she said.

She was supposed to sleep at her mother’s house after meeting up with David, but instead collected her keys and went home, the coroner heard.
Deborah told the inquest: ‘I last spoke to her at 3am on 22 June, 2019. She phoned me but she didn’t seem anxious or depressed during the call. We made arrangements to see each other later that day.
‘I’m aware Chloe had taken tablets in the past but I believe those were a cry for help and I do not believe this particular incident was a clear indication for Chloe to end her own life.’
David McCormick told the inquest he and Chloe went for drinks at a pub and bar before going back to her house.
Advertisement Advertisement
He said: ‘We just drank and had a laugh and we joked. I went to sleep at about 11.30pm as I was training for a charity fight the next day.
‘I woke up at about 5am to go to the toilet and I found her.
‘There’s lots of times I was thinking “what if I had woke up ten minutes earlier” but I just can’t say. It was such a short window. She seemed in a good mood.’
He said Chloe had told him about her mental health issues and said she was taking medication but ‘she seemed fine’.
David added: ‘There’s no way in the world I thought she would do it.’
Tests found alcohol levels just over twice the legal drinking limit in Chloe’s blood as well as traces of cocaine in her system, the coroner heard.
The court also heard that before his death, Adam had been due to meet mental health experts after a referral by his counsellor, but he was never seen due to staff shortages.
Det Ch Insp Lee Owen of British Transport Police said there was no indication Adam died in suspicious circumstances but that he believed Adam had tried to jump out of the way of the train at the last minute.
Coroner Rachel Syed concluded a verdict of suicide for both Adam and Chloe.
Advertisement
The coroner said: ‘At no point did Chloe disclose to her family, GP or mental health services that she intended to take her own life.
‘There is no evidence she was researching how to take her own life and this came as a great shock to her family.’
Deborah said: ‘I would describe Chloe as a beautiful person, a wonderful daughter and sister, but most of all she adored her daughter in the short years she has given some wonderful memories.
‘We are all deeply distressed by her death.’
Got a story for Metro.co.uk?
Get in touch with our news team by emailing us at<EMAIL_ADDRESS>For more stories like this, check our news page.


if access any following 3 pages, always show page03.html
http://nginx-training-03.local:18080/redirect_chain01/page01.html
↓ redirect
http://nginx-training-03.local:18080/redirect_chain01/page02.html
↓ redirect
http://nginx-training-03.local:18080/redirect_chain01/page03.html


Examples!¶
Talk is cheap! Show me some code!
Have a look in Cookbook - How to Get Started too!
Some examples are located in examples/
directory. And there are convenient
Makefile
targets to call them, just use your Bash autocomplete when typing
make example<TAB>
:
1: Python to Erlang¶
Demonstrates how Python node can actively find a running Erlang node and connect to it by attempting to send a message.
Running (in two terminal tabs):
Start Erlang node with
erl -name<EMAIL_ADDRESS>-setcookie COOKIE
.(optional) Register your shell process as
shell
by executing in the Erlang shell:erlang:register(shell, self()).
make example1
- will start a node<EMAIL_ADDRESS>and using cookieCOOKIE
will try to connect to Erlang running<EMAIL_ADDRESS>;(optional) Check whether Erlang shell received
hello
by typingflush().
2: Erlang to Python¶
Demonstrates how to run a named process on Python node. Erlang node will try and send message to it by name.
make example2
- will register a process asmy_process
and you can send messages to it by name from Erlang;Start Erlang node with
erl -name<EMAIL_ADDRESS>-setcookie COOKIE
.In Erlang shell try send something to
my_process
like this:{my_process<EMAIL_ADDRESS>! {hello, 123, [<<"test">>, self()]}.
In Python terminal tab observe log message about incoming data.
3 & 4: Calling/Batch Python¶
Examples are .erl
files which demonstrate how remote notebook-style calls
and batch calls will work with Erlang and Python.
make pynode
(same asmake example2
) to get a running Python node.make example3
ormake example4
and observe what it prints.
5: Links and Monitors of Pyrlang Processes¶
Demonstrates Erlang remotely monitoring and linking to Pyrlang processes.
A Python Process
will trigger monitor and link
messages when exiting.
make example5a
will start Erlang node.make example5b
(in another terminal) will start Python Pyrlang node.Pyrlang node will send a message starting the test.
Erlang node will spawn a test process, report its pid to Python node.
Python node (now knowing the pid) will monitor the Erlang process.
Python node will send a exit message to Erlang side, and observe the monitor message arriving back.
6 & 7: Links/Monitors of Erlang Processes¶
Demonstrates Pyrlang remotely linking to and monitoring an Erlang process.
Note
For linking demo use 'example6a' and 'example6b', for monitoring demo use 'example7a', 'example7b' Makefile targets.
make example6a
will start Erlang node.make example6b
(in another terminal) will start Python Pyrlang node.Pyrlang node will send a message starting the test.
Erlang node will spawn a test process, report its pid to Python node.
Python node (now knowing the pid) will monitor the Erlang process.
Python node will send a exit message to Erlang side, and observe the monitor message arriving back.
10: Elixir and GenServer¶
This example will demonstrate how to accept gen_server:call
in your Python
Process
.
Running (in two terminal tabs):
make example10a
- will start Python part of Example 10 and start aGenServer
example;make example10b
- will start Elixir part of Example 10 and perform 2gen_server:call
'sIn Elixir terminal tab observe results for 1st and 2nd calls.
Note
Some examples require a client and a server, these have two parts: example A and example B.


faithgame is a denomination of flickgame
by first knowing flickgame, you may come to better understand our ways
faithgames should not be created without first acknowledging the faithgame canon
contemplate existing faithgames
do not attempt the faithgame ritual unprepared
the faithgame ritual shall take place in 20 minutes of isolation and silence
the faithgame ritual shall always result in a completed faithgame
faithgames shall consist of 10 frames, drawn with 4 colours
each frame shall be drawn in 2 minutes and in accordance with its unique rules
each colour may act as a link to one of the other frames
links shall be set using the drop-down menus below the colour selection palette
frames shall be switched between via the menu to the left of the canvas
faithgames shall only be released anonymously
100 steps must be taken before repeating the faithgame ritual
|
|
|


You can find the latest information on XML Notepad at the Microsoft website at http://msdn.microsoft.com/xml.
You can also email us at the XML Tools Team or you can email the author Chris Lovett directly.


Gets the THREE.js objects that represent this SpaceObject.
A list of THREE.js objects
Specifies the object that is used to compute the bounding box. By default, this will be the first THREE.js object in this class's list of objects.
THREE.js object
Gets the color of this object. Usually this corresponds to the color of the dot representing the object as well as its orbit.
A hexidecimal color value, e.g. 0xFFFFFF
Gets the unique ID of this object.
Unique ID
Gets label visilibity status.
Whether label is visible.
Gets the {Orbit} object for this SpaceObject.
Orbit object
Gets the visualization coordinates of this object at a given time.
JD date
[X, Y,Z] coordinates
Initializes label and three.js objects. Called automatically unless you've set autoInit to false in constructor (this init is suppressed by some child classes).
Determines whether object is ready to be measured or added to scene.
True if ready
Determines whether object is static (can't change its position) or whether its position can be updated (ie, it has ephemeris)
Whether this object can change its position.
Make this object orbit another orbit.
The SpaceObject that will serve as the origin of this object's orbit.
Toggle the visilibity of the label.
Whether to show or hide.
Updates the position of this object. Applicable only if this object is a sprite and not a particle type.
X position
Y position
Z position
Any THREE.js object
Begin rotating this object.
Stop rotation of this object.
Updates the object and its label positions for a given time.
JD date
Generated using TypeDoc
This class simulates an object that spins according to provided rotational parameters.


Safe dictionary passwords
What you can do
Generate passwords that are:
Super easy to memorize
Very safe
Read the details...
Your password options
How many words should the password contain?
Two
Three
Four
Five
Number of digits of numbers
No numbers
One
Two
Three
Loading dictionary...
Your new password
The password
is
bits strong
which means it is stronger than
which is
bits strong.
Get another password...


Hello, I'm passionate about solving modern day problems through technology. I have about 7 years of programming experience and solving real life problems. Feel free to leave me a message if you need your project done! My mission is just to make life easier and happier.
Scholarship holder of scientific initiation, worked as Web / Mobile programmer developed the application Doe + - Campaign Platform Donation and Blood Campaigns and Schedules of Hemocentros of the State of Alagoas.
Programmer / Systems Analyst, developed internal control systems for the Secretariat of Science, Technology and Innovation of the State of Alagoas. He also worked on government event portals.
Acted as Software Engineer in several Web and Mobile projects. Main technologies: Ruby on Rails, Angular, React, Vuejs Flux, NodeJS.
Performed maintenance and developed new functionalities in event management systems. Key Technologies: Ruby on Rails
Acted as Front-End Software Engineer in several Web projects. Main technologies: Angular, React, Vuejs Flux, NodeJS, DDD, MongoDB.
User support. Software developer. Key Technologies: Java, Grails, AngularJS / Windows Server
Software Engnineeri, work together with remote team from US (PWNHealth)


Contact With My Friends
The Awesome Address Book
{{contact.name | proper}}
{{contact.occupation}}
{{contact.email}}
Add A New Contact
Name (Required)
Age
Occupation
Email (Required)
Add New Contact
Please check the information and try again.


Across: 1. Set if I do sly adjustment (8) 5. see 21 down 10,1dn. Brief 23 employee has cut - acrimony can brew (7 10) 11. Republic's shaken with 150 dismissed and chief of staff dumped by 23 (7) 12. Broadway hit more cautious, with wings clipped (5) 13. Death scores in chaos (8) 15. One leaves blues train confused and not so steady (9) 17. Head off hunter as symbol of US power (5) 18.  Farmer and young Rex hired and fired by 23 (9) 22. Cast cite trouble with "Joy" (8) 25. No repetition in smashing of pewter mug (5) 27. Cleverly glued each in and formed a combined entity (7) 28. Strangely chirpy about the end of our worst sort of win (7) 29. Agent cut but coming back - they are often removed (6) 30. A US president claimed to be one from timberline residence (8) Down: 1. see 10 across 2. Being sent back in person, Italians and Mexicans perhaps (7) 3. Finally build Rome in a day with right beast (9) 4. see 19 6. Friend of 2 am I? Get out of here! (5) 7. In Australia, bank on Crosby being arresting (7) 8. One's tits contained here? (4) 9. As ghost dancing, rest clap (8) 14. Lunatic spares nice fellow who spoke for 23 (4 6) 16. Freedom to swap first two in height (8) 17. Cell are to reform, involving a ballot (9) 19,4. Destroy life - lynch man who was cast out by 23 (7 5) 21,5ac. No naps?! Then Ben's out... he's not working for 23 any more! (7 6) 23. Somewhat rum politician? (5) 24. Police note some greenery (5) 26. Two thirds steal and turn (4)


Youtube
My thoughts
Text of Las Miradas read by me. 1. Original. 2. Zapatista English translation. 3. My English translation. 4. Google Translate.


Cheatsheet
Adding Entries
To feedback on the design, email
<EMAIL_ADDRESS><EMAIL_ADDRESS>The full list of entries is available at
https://cheatsheet.app.gov.sg/master.csv
To add more entries, go to internet link
go.gov.sg/cheatsheet
Or
Add it to the Acronym Bot on Workplace! Both databases are synched periodically.


The deadlift is a weight training exercise.With a loaded barbell a neutral spine and a braced core you lift it off the floor then when the bar reaches at knee level you thrust your hips in to complete the movement then lower the barbell back to the ground. It is one of the three powerlifting exercises, along with the squat and bench press.


Follow us on Social media
Copyright 2017.Akofena International.
All Rights Reserved
Website & Photography By:
Kilonzi Group Ltd
OUR LOCATION
Tamale, Ghana
Akofena Int. Hotel,
Off Jubilee Park,
CONTACT US
Resort (0727 880 488, 0736 880 488)
Head Office (0780 880 488, 0736 535 422)
<EMAIL_ADDRESS>info@akofenaIntHotel.com


Web Link to my Linkedin profile.
Linkedin PageWeb Link to List of GitHub Pages I have created.
gh-pages branch
Currently, I am a student at Epicodus learning several programming langauges.
Before enrolling into Epicodus I retired from a 25-year career in law enforcement where
I retired as a Correction Police Major from the NJ Department
of Corrections.
Background- Experienced Law Enforcement supervisor with a demonstrated history of working in the
law enforcement industry. Strong security and protective services professional skilled in Microsoft Word, Microsoft Office
and serveral software programs , Docs Google ,
Sales, Law Enforcement, Emergency Management, and Management.
Education
Job experience - Supervise over 800 uniformed custody staff and assigned civilian staff personnel. Ensure
operational efficiency and security on a day-to-day basis. Reviewed intelligence regarding security
breaches
and initiated appropriate action. Conducted grievance hearings and represented management at management meetings. Ensured the observance of all laws and regulations.
Why I decided to become a programmer- I always wanted to learn how to program becuase I liked the idea of being able to create a program that people would use.
Current interests, hobbies, and skills -


Upload your reels and resume and start getting appling for jobs
View actors headshot and resume. Make your selection process easy.
jjjd xk kks sj sik sm sk skmsk kx we'r not closing at the ryt tym for us to listen to the dehimed
Reach thousands of actors, musician and other creatives by placing a free casying call, or hand-pick from our Talent Directory
New read in our do you contact jumia read how will they no no when they deliver we will then pay them that means we have to take they wase
We promise to always give the best touches at all times, ccocalolo jsk ded jwe men dont tell tales it h wew wasw legi a warsaw is not an african country neighther is it an african city but its definitely a place in Europe the lord gat my back always