Nieder-Olm
Understand
Get around
See
- 🌍 Katholische Kirche Sankt Georg (Saint George’s Catholic Church), Alte Landstraße 30. The Catholic parish church was build in the late 1700s but the quire tower on the east side is a remnant of the old mediaeval church from the 12th century.
Do
- Klein-Winternheim is a village whose recorded history dates to April 1100. The region's economy was dominated by wine-growing for a long time. Nowadays many people live in Klein-Winternheim because it's close to the state capital, Mainz. It has a few shops, bakery and ice cream cafe. There are two retail areas, one off Oppenheimer Street near the rail station, the larger to the west of the autobahn exit 4.
Eat
- 🌍 Il Vecchio Mulino, Bussolengo-Platz 6 (Just off Pariser Straße), ☎ +49 6136 7665545. Good Italian food, good décor and service.
- 🌍 Olli's Snackbox, Am Neuberg 7 (In industrial estate west of Autobahn), ☎ +49 6136 766808. MF 10:00-18:00. Excellent German fast food stand with some Dutch items: Currywürst, large burgers, fries etc. Standing only, very popular with truckers and local office workers.
- 🌍 Phönix, Kleine Wassergasse 3, ☎ +49 6136 3627. Good Chinese food
- 🌍 Zur Krone, Backhausstraße 12, ☎ +49 6136 75880. Typical German food. Attached to Hotel Becker.
- 🌍 Gleis Thai Restaurant, Ludwig-Eckes-Allee 1, ☎ +49 6136 9231537. Well modernised conversion of the station building, quality Thai dishes, although not spicy.
Drink
- 🌍 Blums Cafe, Pariser Str.aße 127, ☎ +49 6136 9260965. Pleasant place for coffee and cake.
Sleep
- 🌍 CB Hotel Becker, Backhaus Street 12, ☎ +49 6136 75880.
- 🌍 Das Crass, Pariser Str. 129, ☎ +49 6136 814480. Modern hotel with restaurant
Go next
- Mainz
- Stadecken-Elsheim
- Alzey
gollark: Anyway, good news systemd-dislikers, I made an EXCELLENT and AMAZING replacement using the RUST programming language.
gollark: I have DashMap in here because of some vague dream of concurrently doing... stuff.
gollark: ```rustuse std::process::Command;use anyhow::Result;use std::path::Path;use std::fs;#[derive(serde::Serialize, serde::Deserialize, Debug)]struct RawServiceSpec { command: String, args: Vec<String>, name: Option<String>}#[derive(Debug)]struct ServiceSpec { command: String, args: Vec<String>, name: String}fn load_spec(path: &Path) -> Result<ServiceSpec> { let file = fs::read_to_string(path)?; let raw: RawServiceSpec = toml::from_str(&file)?; Ok(ServiceSpec { command: raw.command, args: raw.args, name: path.file_stem().unwrap().to_string_lossy().to_string() })}fn run_service(serv: ServiceSpec) -> Result<()> { println!("thread {:?}", serv); loop { println!("Starting"); let mut child = Command::new("/bin/env") .arg("python3") .arg("test.py") .spawn()?; child.wait()?; } Ok(())}fn main() -> Result<()> { let services = dashmap::DashMap::new(); for entry in fs::read_dir("./services")? { let s = load_spec(&entry?.path())?; services.insert(s.name.clone(), s); } let mut handles = Vec::new(); for e in services { handles.push(std::thread::spawn(|| run_service(e.1))); } for handle in handles { handle.join().unwrap(); } Ok(())}```
gollark: Well, I guess that's systemd replaced.
gollark: I can define a service in a TOML file and it's automatically restarted on exit and all.
This article is issued from Wikivoyage. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.