eddsalkield

eddsalkield

DPhil studying Computer Security at the Systems Security Lab, University of Oxford. Likes tea.

Member Since 4 years ago

@dreamingspires,

Experience Points
6
follower
Lessons Completed
7
follow
Lessons Completed
157
stars
Best Reply Awards
39
repos

112 contributions in the last year

Pinned
⚡ Sychronise the vibing cat to music videos!
⚡ The IoT automated tea brewer!
⚡ A command-line budget tracker which automatically categorises your transactions from your online bank.
⚡ A command-line simulator of the Reduced Machine, a minimised version of the Manchester Mark I, as described by Alan Turing.
Activity
Nov
25
3 days ago
Activity icon
issue

eddsalkield issue comment HDFGroup/hdf4

eddsalkield
eddsalkield

XDR Undefined References

Hi there,

I'm attempting to build a package for Alpine Linux from v4.2.15. However, when trying to link in the XDR types, ld is failing with many undefined references, for example to xdr_u_long.

I initially suspected that this was the incompatibility mentioned in section 4.4 of this document, meaning my system's version of xdr (portablexdr) is incompatible with this project.

Therefore I supplied configure with --enable-hdf4-xdr, and removed portablexdr from my system. The bundled version of XDR gets compiled, but I get the same behaviour.

The full linker output can be found here. I'd appreciate any input you can give as to how I might proceed :)

eddsalkield
eddsalkield

I've managed to get the software to build - I needed to instruct the linker to link to libportablexdr. After installing libportablexdr-dev, I ran export LIBS="-lportablexdr" before ./configure --prefix=/usr.

Would you consider adding this linker flag to the makefile in case somebody else wants to use libportablexdr-dev as well?

started
started time in 3 days ago
Nov
23
5 days ago
Activity icon
issue

eddsalkield issue HDFGroup/hdf4

eddsalkield
eddsalkield

XDR Undefined References

Hi there,

I'm attempting to build a package for Alpine Linux from v4.2.15. However, when trying to link in the XDR types, ld is failing with many undefined references, for example to xdr_u_long.

I initially suspected that this was the incompatibility mentioned in section 4.4 of this document, meaning my system's version of xdr (portablexdr) is incompatible with this project.

Therefore I supplied configure with --enable-hdf4-xdr, and removed portablexdr from my system. The bundled version of XDR gets compiled, but I get the same behaviour.

The full linker output can be found here. I'd appreciate any input you can give as to how I might proceed :)

Nov
21
1 week ago
started
started time in 6 days ago
started
started time in 6 days ago
Nov
16
1 week ago
push

eddsalkield push dreamingspires/matchmaker

eddsalkield
eddsalkield

Begun selector overhaul on scopus

eddsalkield
eddsalkield

First working scopus selectors

eddsalkield
eddsalkield

Added selectors for scopus author and institution queries

eddsalkield
eddsalkield

Added overselection errors to selectors

eddsalkield
eddsalkield

Partial overhaul of pubmed to new selector system

eddsalkield
eddsalkield

Pubmed paper search selector overhaul complete

eddsalkield
eddsalkield

Made type replacer for pydantic

eddsalkield
eddsalkield

Begun overhaul of optimised scopus

Added generate subset of selector function

eddsalkield
eddsalkield

Optimised scopus now has multiple search types for selectors

New equality check for ids Added potential for data merge in post process Abstracted abstract selector and data types

eddsalkield
eddsalkield

Fixed bug in pubmed backend

Begun work on pubmed meta Fixed bug in selector types

eddsalkield
eddsalkield

First version of expanded pubmed meta working

eddsalkield
eddsalkield
eddsalkield
eddsalkield

Added generate superset method to selectors

Expanded pubmed now works with reduced fields

eddsalkield
eddsalkield

Fixed scopus selector bug

Added new example that gets authors for processing

eddsalkield
eddsalkield

Added new selector operation any of fields

Reworked scopus to have this new operation

eddsalkield
eddsalkield

Added pubmed selector support at request level

eddsalkield
eddsalkield

Added selector to Author data institutions

eddsalkield
eddsalkield

Reordered meta author engine to better expose api requests

eddsalkield
eddsalkield

Sorted available and possible searches for meta author engine

eddsalkield
eddsalkield

commit sha: c1f3d6705d5d23a99cef907cd0907180387d2387

push time in 1 week ago
Activity icon
created branch
createdAt 1 week ago
Nov
15
1 week ago
Activity icon
issue

eddsalkield issue comment xyproto/wallutils

eddsalkield
eddsalkield

Support macOS dynamic wallpapers (HEIF format with metadata and the `.heic` extension)

Howdie, thanks so much for sharing this

I was looking around for timed wallpaper sets, and came across https://dynamicwallpaper.club/ which is specifically for the Dynamic Wallpapers functionality in macOS

It looks like these are HEIC or HEIF format files, which do open in GIMP, but aren't a ZIP or compressed TAR like I was thinking at at first

Anyhow, I was wondering if you already knew how to us these with settimed, or if you'd consider adding support for this file format? Being able to access themes from other popular platforms (:sigh:) could be very useful for some

Cheers!

eddsalkield
eddsalkield

Thanks for looking into this! I've taken a look at the implementation, and it seems like it's not taking into account the azimuth and elevation of the sun encoded within the metadata. This means that in certain seasons, and depending on your location, the sun may appear to set quite a long time after it's already dark, and the same for sunrise. Unfortunately, this is precisely what the heic file format seems designed to prevent.

Did you consider an extension to the stw format to take this into account, and if not, would you? I may also be missing something in your implementation here.

Nov
11
2 weeks ago
started
started time in 2 weeks ago
Nov
10
2 weeks ago
started
started time in 2 weeks ago
Activity icon
issue

eddsalkield issue comment xyproto/wallutils

eddsalkield
eddsalkield

settimed doesn't update wallpaper

I am currently running settimed with sway on Fedora. When initialised, settimed sets the wallpaper correctly, but never updates the wallpaper again after that. When prompted with signal USR1, a line is written to the log file but the image is not changed, even hours on.

I am running settimed with the following options:

settimed /usr/share/backgrounds/eddos/mojave/mojave-timed.stw > /home/edd/wallpaper.log

With a .stw file containing:

stw: 1.0
name: mojave-timed
format: /usr/share/backgrounds/eddos/mojave/mojave_dynamic-%s0.jpg
@00:00-03:00: 000 .. 030
@03:00-06:00: 030 .. 060
@06:00-07:00: 060 .. 070
@07:00-08:00: 070 .. 080
@08:00-09:00: 080 .. 090
@09:00-10:00: 090 .. 100
@10:00-11:00: 100 .. 110
@11:00-12:00: 110 .. 120
@12:00-14:00: 120 .. 140
@14:00-15:00: 140 .. 150
@15:00-16:00: 150 .. 160
@16:00-17:00: 160 .. 170
@17:00-18:00: 170 .. 180
@18:00-19:00: 180 .. 190
@19:00-21:00: 190 .. 210
@21:00-00:00: 210 .. 000

Which outputs the following log (the time was 15:30 when prompted with the USR1 signals):

Launching event loop for: /usr/share/backgrounds/eddos/mojave/mojave-timed.stw
Using the Simple Timed Wallpaper format.
Initial transition event at 11:00 (60% complete)
Progress: 36m33s
Up to: 12:00
Window: 1h
Cooldown: 6m
Loop wait: 5s
Transition type: overlay
From filename /usr/share/backgrounds/eddos/mojave/mojave_dynamic-1100.jpg
To filename /usr/share/backgrounds/eddos/mojave/mojave_dynamic-1200.jpg
Setting /usr/share/backgrounds/eddos/mojave/mojave_dynamic-1100.jpg.
Using the Sway backend.
swaymsg output * bg /usr/share/backgrounds/eddos/mojave/mojave_dynamic-1100.jpg stretch
Crossfading between images.
Received signal user defined signal 1
Received signal user defined signal 1
Received signal user defined signal 1
Received signal user defined signal 1

Many thanks for your work on this project; I hope that I can start using it properly and not be forced to hack together a pythonic bodge instead.

eddsalkield
eddsalkield

Thanks, I've tested this out and it seems to be working! I'll run this in the background tomorrow and report back with any difficulties that I experience.

Activity icon
issue

eddsalkield issue comment xyproto/wallutils

eddsalkield
eddsalkield

question: instructions/conversion for macOS Dynamic Wallpapers?

Howdie, thanks so much for sharing this

I was looking around for timed wallpaper sets, and came across https://dynamicwallpaper.club/ which is specifically for the Dynamic Wallpapers functionality in macOS

It looks like these are HEIC or HEIF format files, which do open in GIMP, but aren't a ZIP or compressed TAR like I was thinking at at first

Anyhow, I was wondering if you already knew how to us these with settimed, or if you'd consider adding support for this file format? Being able to access themes from other popular platforms (:sigh:) could be very useful for some

Cheers!

eddsalkield
eddsalkield

I'd be up for seeing this as well, so I've taken a look into the .heic file format. It's a container file format which contains several images, with some metadata describing the azimuth and elevation of the sun for each image. This allows the timed wallpaper to synchronise with sunrise and sunset based on your current location, and show photographs relevant to the season (e.g. no sun-directly-overhead images during the middle of winter).

You can inspect this metadata with the following steps:

exiftool wallpaper.heic

Under the key "Solar" there's a base64 encoded plist file. You can decode this with:

echo "[Base64 string]" | base64 -d - | plistutil

The output is some XML containing a list of dicts providing azimuth, elevation, and optionally light/dark mode for each photo, identified by a sequence number. This article goes into more details.

Perhaps the way support this is to firstly extend the stw format to allow azimuth and elevation information per photograph, and then write a converter from .heic to stw. This could happen implicitly so that .heic files can be opened natively. I suppose ideally stw could be made into something like json so that we can support discriminated unions for this case, because it doesn't really make sense to mix timestamp-based lines with azimuth-based ones. A JSON schema could probably validate it.

This converter could also help people to make their own dynamic wallpapers, provided that the photographs have a timestamp and GPS coordinates. This would be sufficient to calculate the azimuth and elevation for each photo.

Nov
9
2 weeks ago
Nov
8
2 weeks ago
Activity icon
issue

eddsalkield issue comment mortie/swaylock-effects

eddsalkield
eddsalkield

[Feature request] Enable video file playing (via mpv, mplayer or similar)

While swaylock is minimal, I genuinely prefer nicer lockscreens, so glad to see this fork.

Is it possible to add the capability to play a movie on loop from the lock? And then overlay the unlocking interface?

Am attempting to find a way to duplicate Aerial on sway (so minimal, and jaw-droppingly gorgeous... =] ).

thanks! (already added this to my Arch sway config... =] ).

eddsalkield
eddsalkield

Seems that mpv has a C API to allow you to render directly into an OpenGL context: https://github.com/mpv-player/mpv/blob/master/libmpv/client.h

Currently swaylock-effects uses Cairo for its image rendering, not OpenGL. However, there seems to be a guide on how to copy pixel data from a Cairo surface to an OpenGL texture here: https://www.cairographics.org/OpenGL/

So in theory we could move swaylock-effects to render using OpenGL. Existing rendering would happen in Cairo and be copied out to OpenGL, making it easier to track upstream. Additional options could be added that depend solely on the OpenGL backend, such as video playback.

Perhaps this move could also help tackle issues that are blocked by limitations of Cairo, e.g. #15?

Nov
2
3 weeks ago
Oct
19
1 month ago
Oct
16
1 month ago
started
started time in 1 month ago
Oct
15
1 month ago
push

eddsalkield push dreamingspires/mat-dp-core

eddsalkield
eddsalkield

Add pre-commit linting and formatting

commit sha: 7f9fe2e0ef6d34f0e7cec6be82e488913cb0b3e5

push time in 1 month ago
push

eddsalkield push dreamingspires/mat-dp-core

eddsalkield
eddsalkield

Reformat line length to 79, remove junk

commit sha: bb886bce0cb64c4894c5b641b1269c68f0d8649b

push time in 1 month ago
Activity icon
delete
deleted time in 1 month ago
push

eddsalkield push dreamingspires/mat-dp-core

eddsalkield
eddsalkield

Refactor maths_core to constraint system

eddsalkield
eddsalkield

Changed representation of process and resource

eddsalkield
eddsalkield

Added actual resource functions

eddsalkield
eddsalkield

Processes now no longer require multiplying by 1

eddsalkield
eddsalkield

Made resources and processes use references instead of storing directly

Added negation and substraction for process expressions

eddsalkield
eddsalkield

Added new subtypes of constraint

Added reverse multiply Changed name of constraint to weighted process in some places

eddsalkield
eddsalkield

Merge pull request #3 from dreamingspires/master

Update dev with new data utils

eddsalkield
eddsalkield

Merge branch 'marklinalg' into dev

eddsalkield
eddsalkield

Added initial measures interface

eddsalkield
eddsalkield

Added to measure manager interface

eddsalkield
eddsalkield
eddsalkield
eddsalkield

Refactored Process and Resource

Gave better interface to Errors Added real test

eddsalkield
eddsalkield
eddsalkield
eddsalkield

Merge new Measure with previous refactor

Format code with Black Refactor Measure Add load/dump stubs

commit sha: 379e4e4bc3543b0605a8799c68c46f827709ec57

push time in 1 month ago
push

eddsalkield push dreamingspires/mat-dp-core

eddsalkield
eddsalkield
eddsalkield
eddsalkield

Merge new Measure with previous refactor

Format code with Black Refactor Measure Add load/dump stubs

commit sha: 0710017176c5f8fab98749e84c9fc16d227b71c4

push time in 1 month ago
Oct
13
1 month ago
Activity icon
created branch
createdAt 1 month ago
Oct
11
1 month ago
started
started time in 1 month ago
Oct
10
1 month ago
started
started time in 1 month ago
started
started time in 1 month ago
Previous