Fix bug with overlapping ids, and add rpms
This commit is contained in:
parent
0f78e96d3e
commit
89a04a3eb6
32
.rpm/netbrowse.spec
Normal file
32
.rpm/netbrowse.spec
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
%define __spec_install_post %{nil}
|
||||||
|
%define __os_install_post %{_dbpath}/brp-compress
|
||||||
|
%define debug_package %{nil}
|
||||||
|
|
||||||
|
Name: netbrowse
|
||||||
|
Summary: A graphical frontend to avahi-browse
|
||||||
|
Version: @@VERSION@@
|
||||||
|
Release: @@RELEASE@@%{?dist}
|
||||||
|
License: GPL-3.0
|
||||||
|
Group: Applications/System
|
||||||
|
Source0: %{name}-%{version}.tar.gz
|
||||||
|
URL: https://github.com/ewpratten/netbrowse
|
||||||
|
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||||
|
|
||||||
|
%description
|
||||||
|
%{summary}
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
mkdir -p %{buildroot}
|
||||||
|
cp -a * %{buildroot}
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_bindir}/*
|
12
Cargo.toml
12
Cargo.toml
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "netbrowse"
|
name = "netbrowse"
|
||||||
version = "0.1.0"
|
version = "0.1.1"
|
||||||
authors = ["Evan Pratten <ewpratten@gmail.com>"]
|
authors = ["Evan Pratten <ewpratten@gmail.com>"]
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
description = "A graphical frontend to avahi-browse"
|
description = "A graphical frontend to avahi-browse"
|
||||||
@ -19,4 +19,12 @@ which = "4.2.2"
|
|||||||
colored = "2.0.0"
|
colored = "2.0.0"
|
||||||
eframe = "0.15.0"
|
eframe = "0.15.0"
|
||||||
ipnet = "2.3.1"
|
ipnet = "2.3.1"
|
||||||
thiserror = "1.0.30"
|
thiserror = "1.0.30"
|
||||||
|
[package.metadata.rpm]
|
||||||
|
package = "netbrowse"
|
||||||
|
|
||||||
|
[package.metadata.rpm.cargo]
|
||||||
|
buildflags = ["--release"]
|
||||||
|
|
||||||
|
[package.metadata.rpm.targets]
|
||||||
|
netbrowse = { path = "/usr/bin/netbrowse" }
|
||||||
|
38
src/gui.rs
38
src/gui.rs
@ -118,24 +118,32 @@ impl epi::App for BrowseApp {
|
|||||||
// Render each host
|
// Render each host
|
||||||
for host in hosts.values() {
|
for host in hosts.values() {
|
||||||
// Render the packet data
|
// Render the packet data
|
||||||
egui::CollapsingHeader::new(&host.name).show(ui, |ui| {
|
egui::CollapsingHeader::new(&host.name)
|
||||||
// Render every service name as a dropdown
|
.id_source(format!("{}_{}", interface, &host.name))
|
||||||
for service_name in host.services.keys() {
|
.show(ui, |ui| {
|
||||||
egui::CollapsingHeader::new(service_name).show(ui, |ui| {
|
// Render every service name as a dropdown
|
||||||
// Render provider for the service as its own dropdown, containing optional metadata
|
for service_name in host.services.keys() {
|
||||||
for service in host.services.get(service_name).unwrap() {
|
egui::CollapsingHeader::new(service_name)
|
||||||
egui::CollapsingHeader::new(format!(
|
.id_source(format!(
|
||||||
"{} (IP: {} Port: {})",
|
"{}_{}_{}",
|
||||||
service.hostname, service.ip, service.port
|
interface, &host.name, service_name
|
||||||
))
|
))
|
||||||
.show(ui, |ui| {
|
.show(ui, |ui| {
|
||||||
// Render the metadata
|
// Render provider for the service as its own dropdown, containing optional metadata
|
||||||
ui.label(service.data.join("\n"));
|
for service in host.services.get(service_name).unwrap()
|
||||||
|
{
|
||||||
|
egui::CollapsingHeader::new(format!(
|
||||||
|
"{} (IP: {} Port: {})",
|
||||||
|
service.hostname, service.ip, service.port
|
||||||
|
))
|
||||||
|
.show(ui, |ui| {
|
||||||
|
// Render the metadata
|
||||||
|
ui.label(service.data.join("\n"));
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Reference in New Issue
Block a user