Category Archives: Uncategorized
May Events
Devon and Cornwall Linux user group meetings for May 2022
Also has details of other events organized by DCGLUG members
I am creating this post in order to consolidate previous meeting information in to one post.
CODE CLUB
Code Club takes place on the First and Third Saturday of the month
STEM GROUP
Saturday 8th May 2022 @ Paignton Library from 11am
Please book via the library, as we need to know numbers attending.
DCGLUG virtual meeting (jitsi)
Day / Date: Saturday 14th May 2022
Time: From 12:00 Location:
Online – Meeting jit.si link
Please see meetings page for more info or ask on IRC / Mailing list.
DCGLUG Plymouth Physical meeting
Day / Date : Saturday 21st May 2022
me : 12:00
Location : Moments Cafe, Plymouth – Website
Please ask on e-mail discussion list for more information. We can also be found on #DCGLUG on the Libera.chat IRC network.
Dates / times are provided to the best of my ability, please contact Paul Sutton via the list if there is a problem.
STEM Group April 2022
Debian Conference 2022
April Events
Devon and Cornwall Linux user group meetings for April 2022
Also has details of other events organized by DCGLUG members
I am creating this post in order to consolidate previous meeting information in to one post.
CODE CLUB
Code Club takes place on the First and Third Saturday of the month
STEM GROUP
Saturday 9th April 2022 @ Paignton Library from 11am
Please book via the library, as we need to know numbers attending.
DCGLUG virtual meeting (jitsi)
Day / Date: Saturday 16/4/2022
Time: From 12:00 Location:
Online – Meeting jit.si link
Please see meetings page for more info or ask on IRC / Mailing list.
DCGLUG Plymouth Physical meeting
Day / Date : Saturday 23/4/2022
Time : 12:00
Location : Moments Cafe, Plymouth – Website
Please ask on e-mail discussion list for more information. We can also be found on #DCGLUG on the Libera.chat IRC network.
Dates / times are provided to the best of my ability, please contact Paul Sutton via the list if there is a problem.
A few interesting opportunities
Firstly
Software freedom camp
An online mentorship programme focusing on diversity organized by Free Software Community of India and inspired by Free Software Camp and Outreachy.
@sfcamp@venera.social
https://camp.fsci.in/
https://venera.social/profile/sfcamp
Secondly
Youth Hacking For Freedom
If you like coding, tinkering, and having fun with software and if you are up for a challenge, we have something exciting for you: “Youth Hacking 4 Freedom” (YH4F), the FSFE’s hacking competition for young people from Europe!
https://yh4f.org/
This is being run by the Free Software Foundation Europe
https://fsfe.org/
Both of these are should be really good opportunities to learn and develop..
Invite link (to Qoto mastodon instance)
https://qoto.org/invite/eGdy4AHn
Note : The invite link to qoto should be fine generally for both opportunities. If more are needed I can generate them, or people can simply join.
Hope this helps
Regards
Paul
September Lug meets
Devon and Cornwall Linux user group meetings for September 2021
I am creating this post in order to consolidate previous meeting information in to one post.
DCGLUG virtual meeting (jitsi)
Day / Date: Saturday 18/9/2021
Time: From 12:00 Location:
Online – Meeting jit.si link
Please see meetings page for more info or ask on IRC / Mailing list.
DCGLUG Plymouth Physical meeting
Day / Date : Saturday 25/9/2021 2021
Time : 12:00
Location : Moments Cafe, Plymouth – Website
Please ask on e-mail discussion list for more information. We can also be found on #DCGLUG on the Libera.chat IRC network.
Moving to Libera.chat irc network
Due to recent events on Freenode. The DCGLUG has recently joined the Libera.chat network. You can access this server with any IRC client by connecting to irc.libera.chat:6697 (TLS) and joining #dcglug.
If you don’t have suitable client please use the web interface. We can help you from there, please enter a meaningful nickname.
If you need help please ask on the mailing list.
February Meeting
DCGLUG virtual meeting (jitsi) Day / Date: Saturday 20/2/2021 Time: From 12:00 Location: Online – Meeting jit.si link
Basic OS development with Visual Studio
Recently I came across an add-on for Visual Studio 2013 named Cosmos, which lets you use C# or Visual Basic to develop a fully independent OS. I have been working on one now for a couple of weeks. Sadly, Cosmos is still in early development stages, but it is still possible to make basic graphical OS’s. This post uses C#, but it is just as easy to use Visual Basic. My current code is:
using System;
using System.Collections.Generic;
using System.Text;
using Sys = Cosmos.System;
using Cosmos.Hardware;
using Cosmos.Hardware.BlockDevice;
namespace CosmosOS
{
public class Kernel : Sys.Kernel
{
protected override void BeforeRun()
{
while (true)
{
Run();
}
}
protected override void Run()
{
string input = Console.ReadLine();
string input1 = input.ToLower();
if (input1 == "shutdown" || input1 == "quit" || input1 == "exit") Shutdown();
else if (input1 == "reboot" || input1 == "restart" || input1 == "reload") Reboot();
else Console.WriteLine("Command \"" + input1 + "\" not recognized!");
public void Shutdown()
{
this.Stop();
Cosmos.Core.Bootstrap.CPU.Halt();
}
public void Reboot()
{
}
public static void WriteData(byte[] aData, ulong block)
{
if (BlockDevice.Devices.Count > 0)
{
for (int i = 0; i < BlockDevice.Devices.Count; i++)
{
var xDevice = BlockDevice.Devices[i];
if (xDevice is Partition)
{
xDevice.WriteBlock(block, 1, aData);
}
}
}
}
public static byte[] ReadData(ulong block)
{
byte[] aData = new byte[] { 1 };
if (BlockDevice.Devices.Count > 0)
{
for (int i = 0; i < BlockDevice.Devices.Count; i++)
{
var xDevice = BlockDevice.Devices[i];
if (xDevice is Partition)
{
aData = xDevice.NewBlockArray(1);
xDevice.ReadBlock(block, 1, aData);
}
}
}
return aData;
}
}
}
Lets go over some of this code.
protected override void BeforeRun()
{
while (true)
{
Run();
}
}
This Run function is looped by default anyway, but it loops slightly faster when this code is put in BeforeRun.
protected override void Run()
{
string input = Console.ReadLine();
string input1 = input.ToLower();
if (input1 == "shutdown" || input1 == "quit" || input1 == "exit") Shutdown();
else if (input1 == "reboot" || input1 == "restart" || input1 == "reload") Reboot();
else Console.WriteLine("Command \"" + input1 + "\" not recognized!");
This is fairly trivial code for a command-line OS, simple input.
public void Shutdown()
{
this.Stop();
Cosmos.Core.Bootstrap.CPU.Halt();
}
public void Reboot()
{
}
This is my own shutdown code. I have yet to figure out reboot, though.
public static void WriteData(byte[] aData, ulong block)
{
if (BlockDevice.Devices.Count > 0)
{
for (int i = 0; i < BlockDevice.Devices.Count; i++)
{
var xDevice = BlockDevice.Devices[i];
if (xDevice is Partition)
{
xDevice.WriteBlock(block, 1, aData);
}
}
}
}
public static byte[] ReadData(ulong block)
{
byte[] aData = new byte[] { 1 };
if (BlockDevice.Devices.Count > 0)
{
for (int i = 0; i < BlockDevice.Devices.Count; i++)
{
var xDevice = BlockDevice.Devices[i];
if (xDevice is Partition)
{
aData = xDevice.NewBlockArray(1);
xDevice.ReadBlock(block, 1, aData);
}
}
}
return aData;
}
I got this code from a forum and modified it a little to make it work – it writes arrays of bytes to the hard disk. Sadly the built-in FAT fileystem can currently only read files, so you will have to make your own.
This is a fun tool to just play around with, although it is extremely limited at the moment.
http://www.nikeairmaxfreerun.com nike air max thea