Spyke

Posts

android_dev·Android DevelopmentbyThomas

Lacking something fundamental with Compose

I am trying to convert a view based screen to Compose and while what I need should be very basic, somehow I can't get this to work. The use case at hand is a serial task where one step follows the other and the UI should reflect progress. But I seem to miss something fundamental because none of my Text() will update. Below is a simplified example of what I got:

    override fun onCreate(savedInstanceState: Bundle?) {
        …
        
        setContent {
            Import()
        }
    }
    
    
    @Composable
    fun Import() {        
        var step1 by remember { mutableStateOf("") }
        var step2 by remember { mutableStateOf("") }
          
        Column() {
                Text(text = step1)
                Text(text = step2)
            }
        }

        step1 = "Open ZIP file"
        val zipIn: ZipInputStream = openZIPFile()
        step1 = "✓ $step1"
    
        step2 = "Extract files"
        val count = extractFiles()
        step2 = "✓ $step2"
        …
    }

If I set the initial text in the remember line, like this

var step1 by remember { mutableStateOf("Open ZIP file") }

the text will show, but also never gets updated.

I also tried to move the logic part into a separate function which gets executed right after setContent() but then the step1/step2 aren't available for me to update.

#######

Edit:

Well, as expected this turned out to be really easy. I have to break this one

var step1 by remember { mutableStateOf("Open ZIP file") }

into 2 statements:

var step1String =  mutableStateOf("Open ZIP file")

With step1String as a class wide variable so I can change it from other functions. In the Import() composable function al I need is this:

var step1 by remember { step1String }

Have to say Compose is growing on me… :-)

View original on lemmy.zell-mbc.com
2
pentesting·PentestingbyThomas

Tool to sniff a network and show the pictures which get transmitted

I am preparing for a little presentation on Wifi security / dangers of public networks to a non technical audience and wanted to do a demonstration to make things a little more visual. My idea is to use a tool I had years ago which would look for network packets containing image data and would compile them as they get transmitted. And with this tool active I would ask someone in the audience to navigate to a non https website and then see the images on my PC/projector. It's a small crowd of elderly people, so the risk of catching something inappropriate should be small. :-)

But, I can't remember what the tool was called and my search attempts didn't reveal anything. Anyone got an idea?

Or maybe an idea for an even better demo?

View original on lemmy.zell-mbc.com
11

Docker-compose + Traefik

Has anyone got a working setup of this combination? I somehow can't get things to work

I can run the below on the docker host sucessfully:

curl -d "Backup successful 😀" localhost:81/test  
{"id":"4EpidFddbe8p","time":1688997266,"expires":1689040466,"event":"message","topic":"test","message":"Backup successful 😀"}

…but when I try the public url from a different machine I get a 404 page not found. Which to me means ntfy is running, but there's something wrong with my Traefik setup.

docker-compose.yml

…
    ports:
      - 81:80
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.ntfy.rule=Host(`ntfy.mydomain.com`)"
      - "traefik.http.routers.ntfy.tls=true"
      - "traefik.http.routers.ntfy.entrypoints=http"
      - "traefik.http.routers.ntfy.entrypoints=https"
      - "traefik.http.routers.ntfy.tls.certresolver=http"
      - "traefik.http.services.ntfy.loadBalancer.server.port=81"
      - "traefik.docker.network=traefik-proxy"
      - "traefik.http.routers.ntfy.service=ntfy"

Minimalistic server.yml:

cat config/server.yml 
# ntfy server config file
base-url: "https://ntfy.mydomain.com"
  #upstream-base-url: "https://ntfy.sh"
  #listen-http: "127.0.0.1:80"
cache-file: "/var/cache/ntfy/cache.db"
  #attachment-cache-dir: "/var/cache/ntfy/attachments"
behind-proxy: true

Can anyone spot a mistake here or suggest additional troubleshooting steps?

---- Edit: Never mind, Traefik has given me so much grief, my brain doesn't seem to be compatible :-), that I decided to switch to nginx. Got everything running after 5 minutes…

View original on lemmy.zell-mbc.com
2
proxmox·ProxmoxbyThomas

Proxmox Backup Server 3.0 available

Proxmox Backup Server 3.0 available

It's based on Debian 12 "Bookworm", but uses the newer Linux kernel 6.2, and includes ZFS 2.1.12.

  • Debian 12, with a newer Linux kernel 6.2
  • ZFS 2.1.12
  • Additional text-based user interface (TUI) for the installer ISO
  • Many improvements for tape handling
  • Sync jobs: “transfer-last” parameter for more flexibility

Release notes
https://pbs.proxmox.com/wiki/index.php/Roadmap

Press release
https://www.proxmox.com/en/news/press-releases/

View original on lemmy.zell-mbc.com
10
selfhosted·SelfhostedbyThomas

Proxmox Backup Server 3.0 available

Proxmox Backup Server 3.0 available

It's based on Debian 12 "Bookworm", but uses the newer Linux kernel 6.2, and includes ZFS 2.1.12.

  • Debian 12, with a newer Linux kernel 6.2
  • ZFS 2.1.12
  • Additional text-based user interface (TUI) for the installer ISO
  • Many improvements for tape handling
  • Sync jobs: “transfer-last” parameter for more flexibility

Release notes
https://pbs.proxmox.com/wiki/index.php/Roadmap

Press release
https://www.proxmox.com/en/news/press-releases/

View original on lemmy.zell-mbc.com
7

You reached the end